Очередная статья про VPN
Добрый день. Статья сложнее чем установка VPN в 2 клика, но позволяет создать свой, более-менее, защищенный VPN сервер на связке WireGuard + Adguard Home. Связка, вам скажу - бомбическая. Мы не только шифруем трафик, а еще и чистим его от тонны всякого овна.
И это позволяет создать, во всех смыслах, безопасный интернет для вас и вашей семьи.
Статья разбиты на 3 раздела:
Часть 1: VPS сервер
Для начала нужно арендовать VPS сервер. Так как в РФ VPN не особо жалуют власти, то арендуем сервер не в РФ. Кстати, так получается намного дешевле. Подобрать дешевый VPS можно на сайте Lowendbox. Я например, в прошлом году арендовал сервер от RackNerd за 11 USD. И за 1 год, ни разу не получил каких-либо проблем. Для наших нужд нам хватит самый дешевый вариант, с 1 CPU и 1 Gb RAM.
Update: с некоторых пор оплатить хостинг за $ стало крайне сложно, поэтому рекомендую уже хостинг VPS на VDSina (реферальная ссылка, если хотите отблагодарить автора). Сервера дешевые (11 рублей в сутки), находятся в Голландии, IP мне выдал чистый по проверки в спам-базах.
Обязательно проверяем IP сервера, по наличию в спам-базах. Делается это просто, через сервис 2IP.
Купили сервер, начинаем его настройку.
Update 2: в качестве ОС я использую Ubuntu Server, статья написана именно под эту систему.
Для начала создадим ключ, для беспарольного доступа к серверу, для этого скачиваем утилиту PuTTYgen и генерируем в ней публичный и приватный ключи. Оба ключа сохраняем. Приватный ключ нам потребуется для входа на сервер, публичный вставляем в настройки SSH на сервере, как указано ниже.
Если мы используем хостинг от VDSina, публичный ключ вставляем в разделе Мои серверы -> SSH ключи.
После этого, можем заходить на наш сервер через SSH и производить настройку. Для SSH доступа, порекомендую приложение от MobaXterm, оно бесплатное и очень клевое.
Начинаем настройку сервера:
Внимание! Ниже кусок раздела применимый для других серверов, для VDSina мы уже добавили наш ключ, как указано выше.
Добавляем наш ключ на сервер:
Меняем порт на котором работает SSH и отключаем авторизацию по паролю:
Открываем только те порты, которые нам понадобятся и закрываем порт 22:
После ребута не забываем поменять номер порта, который поменяли, в настройках SHH-клиента.
Часть 2. Устанавливаем WireGuard
Далее, запускается мастер установки, соглашаемся со всем кроме:
Which DNS provider would you like to use?
1) Unbound (Recommended)
2) Custom (Advanced)
Выбираем вариант 2.
Далее, соглашаемся с DNS сервером по дефолту.
В итоге, скрипт сгенерирует QR-код, который можно отсканировать, например, в мобильном приложение WireGuard, и даст ссылку на .conf файл, в которым зашиты настройки для приложения.
Чтобы посмотреть всех клиентов WireGuard, устанавливаем Midnight Commander и смотрим конфиги по адресу etc/wireguard/cliens.
Для того, чтобы совершить какие-то настройки над WireGuard, например, добавить новых клиентов, используем команду:
Все, WireGuard установлен и настроен, но на некоторых серверах клиент не будет получать трафик, если еще не произвести несколько манипуляций с фаерволом UFW. Это раздел для VDSina, на других серверах у меня все и так работало.
Сохраняем — CTRL + X, Y и Enter.
Сохраняем — CTRL + X, Y и Enter.
Откроется файл, необходимо вставить код ниже, ДО начала данных файла. т.е. вставленные данные у нас будут идти самыми первыми.
Перезапускаем фаервол:
Часть 3. Установка AdGuard Home
Выполняем команды в консоли:
Далее, переходим в браузер http://IP_сервера:3000 или на домен, если уже прилинковали его к IP и проходим квест установщика.
Кстати, домен можно бесплатно парковать у хостинга Beget, они крутые ребята.
Внимание! В полях ‘Веб-интерфейс администрирования‘ и ‘DNS-сервер’, выбираем сетевой интерфейс с IP адресом нашего сервера, это важно.
После прохода установщика, жмем CTRL + C и далее, вводим команды.
И обратите внимание, что если прилинковываем домен и хотим шифровать трафик, то к IP нужно прилинковать домен и выпустить для него сертификат через certbot.
Все, заходим на адрес вашего сервера http://IP_сервера:3000 или http://домен.ru, выбираем и при желание доустанавливаем фильтры (настройка Adguard Home — тема для отдельной статьи) и наслаждаемся более быстрым и безопасным интернетом.
В конфиге клиента VPN, в поле DNS = 1.1.1.1 (например), мы можем указать IP адрес нашего сервера с VPN ,и трафик будет фильтроваться от рекламы и шифроваться. Такое 2 в 1.
Так же можно использовать отдельно DNS сервер, чтобы фильтровать трафик без VPN. На ПК с Windows мы указываем адрес DNS в программе Yoga DNS и пускаемся трафик по DNS over HTTPS.
Для смартфона на Android или iOS есть нативная поддержка DNS over HTTPS и сервер можно поменять в настройках. Но это верно не для всех версий Android и не для всякого трафика, поэтому для Android рекомендую использовать приложение Intra для фильтрации трафика или WireGuard с нашими настройками DNS.
DNS сервер и VPN можно установить в роутере, например я приобрел Keenetic, теперь весь трафик шифруется и чистится, перед тем как зайти в мой дом.
Если будут вопросы, предложения и конструктивная критика — пишите в комментариях. Спасибо!
Мысли на эту тему:
1. Люди не могут перейти на платный VPN, просто купить, а мы им про купи и настрой сложное.
2. Если человек не программист и не администратор, то настраивать сервер ОЧЕНЬ мучительно. Я настраивал много раз, для меня это всегда боль. И я всегда косякну, что может привести к проблемам с безопасностью.
3. Готовые решения всегда сервиснее и дешевле — приложения для телефона, всех платформ, выбор локации. И всё это за $2–3. И настраивать не надо ничего.
Единственный минус — могут заблокировать централизованно. Ну пока этого нет.
Считаю, что бесплатный ProtonVPN — это мегапрорыв для большинства.
https://protonvpn.com/ru/pricing
Так себе прорыв, если честно, ProtonVPN еще недавно сотрудничал с Роскомнадзором. Бесплатный VPN можно использовать чисто чтобы запостить фоточку в Инстаграм, как то не более.
А в сотрудничество с РКН выражалось? Что я видел в новостях - это лишь то, что протон делится инфой с правоохранительными органами Евросоюза.
Они блочили сайты по списку Роскомнадзора
Пруф можно?
Вот тут я читаю что они говорят противоположное: https://vc.ru/services/62917-pyat-vpn-servisov-iz-desyati-otkazalis-blokirovat-dostup-k-zapreshchennym-v-rossii-saytam-po-trebovaniyu-roskomnadzora
Вы правы, я могу ошибаться и наговорить на Proton VPN
Да я тоже особо не слежу, просто они есть в паре хороших списков по приватности, поэтому удивился.
Это некогда моё субъективное мнение, когда то я не смог зайти с proton vpn на несколько заблокированных ресурсов и посчитал это за прогиб Роскомнадзору. Скорее всего я ошибаюсь, пруфы говорят об обратном