Собственный OpenVPN сервер за 6 минут
Привет, пикабу!
Что произошло?
1 июля 2018 года вступают в действие поправки в закон о связи, широко известный как “пакет яровой”. Операторы связи будут теперь хранить не только логи соединений, что делается сейчас, но и сам контент передаваемый по сети, т.е. весь ваш интернет трафик. Да, я понимаю, многие сейчас скажут что https и бла-бла-бла, но во-первых не везде, а во-вторых можем вспомнить пример Казахстана, с корневым сертификатом от госпровайдера, без которого инет не работает. Так что до https доберутся очень скоро, поверьте. Кстати, рекомендую почитать про действие поправок в отношении интернет компаний. Для офисного интернета все это еще более актуально и важно.
Что делать?
Передавать все данные через провайдеров РФ в зашифрованном виде, чтобы их хранение было бесполезным.
Наверняка многие слышали про VPN. Принцип очень прост: ваш трафик шифруется у вас на устройстве (или на вашем домашнем роутере), отправляется до арендованного сервера вне юрисдикции РФ, там расшифровывается и отправляется дальше на ваши любимые сайты.
Как это сделать?
В сети есть огромное количество платных и бесплатных впн-сервисов, но они меня не устроили по ряду причин.
Надежность бесплатных решений, особенно если они контролируются непонятно кем, меня не устраивала. Платные сервисы - лучше, но лучше самому полностью контролировать сервер. В таком случае вы можете себе гарантировать надежность шифрования и нагрузку на сервер.
Поднимать собственный впн-сервер будет на digital ocean. Вот тут я оставлю рефферал ссылочку, при регистрацию через нее и вам, и мне начислят бонус: https://m.do.co/c/18de9963267d
Проходим регистрацию, логинимся, нажимаем Create -> Droplet, выбираем Ubuntu server (уже будет выбран по-умолчанию) и самую дешевую конфигурацию за 5$ в месяц, нам будет достаточно. Можно скинуться впятером с друзьями, и за 1$ \ месяц иметь свободный интернет.
В разделе Choose a datacenter region выбираем место, где будет размещен наш сервер. Выбирайте наиболее близкий к вам, в моем случае это Амстердам. Имеет смысле также включить галочку Monitoring, чтобы в веб-интерфейс смотреть за нагрузкой.
Все, половина дела сделана. Нажимаем внизу страницы Create.
Далее заходим на сервер через SSH. Для этого нам понадобится программа Putty для windows. Скачать ее можно с сайта https://www.putty.org/
Запускаем, в поле host name вписываем ip-адрес нашего сервера, и нажимаем Open. Вводим логин пароль (он придет на почту) и попадаем на сервер. Все будет выглядеть примерно вот так:
Далее установим open-vpn сервер и создадим конфигурационный файл для клиента.
Пишем:
wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh
Установщик спросит на каком адресе запускаем сервер, проверяем - будет указан ip-адрес нашей машины. Жмём Enter. Протокол: по-умолчанию выбран UDP, оставляем. Enter. Далее: порт на котором будет работать опен-впн сервер: указываем - 443. Дальше: вопрос про днс - выбираем гугловый днс - 3. Дальше имя клиента - то для чего делаем конфиг, допустим home-pc. Для каждого нового устройства потребуется создать файл конфигурации, два устройства одновременно не смогут работать через один ключ.
Жмём Enter пару раз, наслаждаемся бегущим текстом в консоле.
Пока создаются ключи, пойдем на сайт опен впн и скачаем и установим клиент под windows. https://openvpn.net/index.php/open-source/downloads.html Вероятно, установка не вызовет проблем.
Итак, текст в консоле бежать перестанет и будет красоваться следующая надпись:
Практически всё! Нам осталось скачать с удаленной машины файл клиентской конфигурации. Для этого подключаемся к серверу по SFTP. Можно, например, использовать клиент filezilla. https://filezilla-project.org/ Гуру консоли и линукса качают прямо через терминал.
Нажимаем на иконку опен-впн в трее, и выбираем импорт конфигурации. Указываем наш скачанный файл. Должно появиться сообщение: Импорт файла успешно завершен. Всё! Теперь нажимаем прав кнопкой на иконку в трее, выбираем наше подключение и нажимаем подключиться. Всплывет окно с логами на несколько секунд, потом закроется, а иконка станет зеленого цвета.
Теперь идем в браузер на 2ip.ru и проверяем:
Наш ip-адрес изменился и теперь весь трафик ходит через наш виртуальный сервер.
Кто дочитал до сюда - вы восхитительны.
Завершение
Вы можете создать клиентские конфигурации для всех своих устройств, а также для друзей и родственников. Обладатели некоторых домашних роутеров (точно знаю про zyxel keenetic giga) могут настроить подключение к опен-впн серверу на домашнем роутере, в таком случае устанавливать опен-впн клиент на каждое устройство в отдельности не потребуется.
Плюсы решения: свободный интернет, зашифрованное от чекистов соединение, стабильность сервера и достаточное количества ресурсов, ваш сервер вряд ли забанит РКН по принципу неуловимого Джо.
Минусы решения: время на настройку, платность (если скинуться впятером то получается по 1$ в месяц с человека)
Пишите ваши вопросы в комментариях. Спасибо.





