Хорошечного всем денечка, уважаемые пользователи bdf.ms. Сегодня поговорим про прокладку между вами и vpn, дабы спрятать концы в воду. Все мы знаем, что в вопросах анонимности в сети главное пожалуй - не бросаться в крайности и найти ту самую золотую середину, придерживаясь которой вы будете в относительной безопасности и при этом у вас не будет появляться ощущения, что вы используете Dial-up. Думаю также многие задаются вопросами доверия к vpn-сервисам, т.к. большинство из них обещает не хранить логи и вообще являются недоступными для органов, что на деле оказывается иногда сильным преувеличением. Собственно ничего супер нового я не предложу, просто расскажу как добавить звено между вами и вашим vpn-сервисом, дабы не светить свой ip-адрес для них. Стоит рассмотреть два распространенных случая настроек: 1) для тех кто работает со своей хостовой машины 2) для тех кто работает с виртуалки Для обоих случаев общим будет необходимость поднять свой vpn-сервер на отдельной vps, через который мы и будем подключаться к vpn-сервису, которым мы пользуемся. Собственно привожу тут набор команд, необходимый для поднятия минимального и простейшего vpn-сервера на базе vps с установленным Debian. Конфиг приводиться просто для справки, и не претендует на полноту. Код: apt-get install openvpn cd /usr/share/doc/openvpn/examples/easy-rsa/2.0/ # редактируем переменные для генерации сертификатов nano ./vars # обязательны к изменению строки (остальные по желанию) export KEY_SIZE=1024 # Длинна ключа (ставим минимум 2048) export KEY_EXPIRE=3650 # Срок действия ключа в днях # инициализируем переменные и чистим папку keys . ./vars . ./clean-all #создаем сертификаты ./build-ca # корневой сертификат ./build-key-server server # сертификат сервера ./build-dh # параметры для протокола Диффи-Хелмана #переносим полученные сертификаты cp ./keys/ca.crt /etc/openvpn cp ./keys/server.crt /etc/openvpn cp ./keys/server.key /etc/openvpn cp ./keys/dh1024.pem /etc/openvpn #цифра после dh будет зависеть от битности ключа #ну и создаем сертификаты пользователей ./build-key-pkcs12 myvpn.windows # имя выбираете какое хотите, поля заполнять необзательно, главное как всегда запомнить пароль который вас попросят ввести дважды #теперь настраиваем сам vpn-сервер zcat /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf #берем заготовку из состава самого пакета nano /etc/openvpn/server.conf # обязательно меняем следующее (просто чтобы работало): local IP_АДРЕС_ВАШЕГО_СЕРВЕРА push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS x.x.x.x" push "dhcp-option DNS y.y.y.y" port 1194 #порт стандартный, желательно поменять но при этом надо не забыть поменять и в настройках клиента # применим настройки файрвола через rc.local, можно сделать иначе, но я остановился на этом варианте. nano /etc/rc.local # добавляем iptables -A FORWARD -s z.z.z.z/24 -j ACCEPT iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -t nat -A POSTROUTING -s z.z.z.z/24 -o eth0 -j MASQUERADE # сохраняем nano /etc/sysctl.conf # раскомментировать обязательно (разрешение перенаправления трафика) net.ipv4.ip_forward=1 reboot #перезагружаем vps Когда половина дела сделано, можно подключаться к уже поднятому VPN-серверу. Для этого надо сначала вытащить сертификаты из папки: /usr/share/doc/openvpn/examples/easy-rsa/2.0/keys/ (ssh, sftp, mc - как вам угоднее) Далее примеры конфига: Код: remote IP_СЕРВЕРА 1194 # порт менять не забываем, если на сервере его перенесли client dev tun ping 10 comp-lzo proto udp tls-client remote-cert-tls server pkcs12 myvpn.windows.p12 #проверьте имя сертификата чтобы совпадало с тем что вытащили с сервера verb 3 pull Собственно запускаем у себя на пк vpn с этим config-ом, вводим пароль, проверяем свой ip (whoer.net, 2ip), там должен светиться сейчас адрес вашего VPS-сервера. Далее для тех кто работает с виртуальной машины все просто: 0) направляем трафик с виртуальной машины через хостовую (не пишу точный путь настроек, т.к. у разных систем виртуализации они отличаются, просто можно выставить NAT как способ подключения к интернету в настройках виртуальной машины) 1) Со своей хостовой машины подключаемся к нашему vpn-серверу 2) С виртуальной машины подключаемся к vpn-сервису 3) профит - заходим с виртуалки на whoer.net и радуемся увидев там выходную точку своего vpn-сервиса Для тех кто работает со своей хостовой машины нужно совершить следующие действия: 1) На ваш vps нужно закинуть конфиг с которым вы подключаетесь к вашему vpn-сервису 2) на сервере подключиться с использованием этого конфига. Если ввод пароля для vpn не требуется то запускаем сразу в бекграунд: nohup openvpn ./config.ovpn &. В случае если требуется вводить пароль, запускаем как обычно: nohup openvpn ./config.ovpn , затем дожидаемся подключения и нажатием CTRL-Z усыпляем процесс, затем командой bg 1 убираем его в бекграунд. З.Ы. вместо nohup можете ипользовать любые другие аналогичные утилиты. 3) Готово - заходим и проверяем свой ip. На этом всё, спасибо за внимание и уделенное время. Надеюсь, кому-нибудь да пригодиться.