Это подробная инструкция по настройке личного VPN на протоколе Wireguard, чтобы обходить блокировки Роскомнадзора и защищаться от хакеров в чужих Wi-Fi с компьютеров и телефонов. По шагам, с картинками, для самых маленьких.
2023-09: Актуальная инструкция про VPN здесь.
Зачем VPN, мы же не в Китае!
Если вы в России, у вас наверняка не работает LinkedIn или тормозит Twitter, а в месте с ним и половина интернета. VPN поможет нивелировать вредительство провайдеров и государственных органов. Кроме того, в общедоступных Wi-Fi точках, к которым вы подключаетесь в кафе, могут сидеть мамкины хакеры, которые перехватывают трафик и могут украсть у вас данные или подсунуть вирус. Достаточно включить VPN, и ваш трафик станет для таких вредителей недоступен.
Зачем платить, есть же бесплатные VPN
Содержать VPN-сервер стоит денег, потому что где-то должен работать компьютер с серверной программой, и кто-то должен платить за электричетсво и работу инженеров. Если не платите вы, значит платит кто-то другой. В замен этот другой получает что-то ценное, например ваши персональные данные, которые затем можно использовать для мошенничества или шантажа. Не пользуйтесь бесплатными VPN-сервисами.
Зачем настраивать самому, есть же готовые
Обычно VPN-сервисы продают аккаунты с ограничением на одновременное количество пользователей. Тот же Astrill, популярный в Китае, не позволяет подключаться больше чем с трёх устройств одновременно, при этом в месяц их VPN стоит от $10. Со своим сервером вы можете легко создать 10-20 пользователей и раздать их всем своим друзьям и знакомым: даже самый дешёвый VPS за $5 в месяц справится с такой нагрузкой.
Конечно, у платных VPN есть свои плюсы, например быстрое переключение между локациями (чтобы сменить сервер с Германии на США, например), особо продвинутые средства обхода блокировок и тому подобное. К счастью, в России блокировки осуществляются довольно просто, и для их обхода такие сервисы избыточны.[/su_spoiler]
Вам понадобится VPS — самый дешёвый хостинг в стране, где блокировок нет. Мои рекомендации:
- Vultr
от $3.5 в месяц, при регистрации по рефералке дадут $100 на месяц. - DigitalOcean
от $5 в месяц, по рефералке дадут $100 на два месяца. - Linode
от $5 в месяц, по рефералке ничего не дают, зато считают использование по часам — можно экспериментировать за гроши.
Или любой другой сервер на Ubuntu за пределами России, к которому у вас есть root-доступ.
Про рефералки
За каждого нового клиента на VPS по ссылкам, которые я указал вначале, мне перепадает несколько долларов. Этого как раз хватает на оплату хостинга для этого блога. Если вы зарегаетесь через мои ссылки — мне будет приятно.
Шаг 1 — Запустите VPS
Нужен самый простой сервер на Ubuntu 20.04 или новее.
Запуск сервера на Vultr
- Зарегистрируйтесь
- Перейдите на страницу Products
- Products -> Deploy -> Instances -> New York (NJ) -> Ubuntu 20.04 -> 10 GB SSD $3.5/month -> Deploy Now
- Дождитесь запуска сервера
- На главной странице найдите сервер в списке
- Три точки -> Server details
- Запишите IP, логин и пароль
Запуск сервера на DigitalOcean
-
- Зарегистрируйтесь
- Перейдите на страницу Droplets
- Create -> Droplets -> Ubuntu 22.04 -> Basic -> Regular Intel with SSD -> $5/mo -> Amsterdam (или любой другой, кроме Singapore) -> Password (придумайте длинный пароль) -> Create Droplet
- Снова перейдите на страницу Droplets и найдите там IP-адрес вашего сервера
Запуск сервера на Linode
-
- Зарегистрируйтесь
- Перейдите на страницу Linodes
- Images — Ubuntu 22.04 LTS -> Region — Frankfurt, DE -> Linode Plan — Shared CPUs Nanode 1GB -> Root Password (придумайте длинный пароль) -> Create
- Найдите IP-адрес вашего сервера
[/su_spoiler]
Шаг 2 — Подключитесь к VPS
- Скачайте и запустите Putty (для Windows)
- В поле Host Name введите root@xxx.xxx.xxx.xxx (вместо xxx — IP-адрес вашего сервера из предыдущего шага),
Port 22
Connection type: SSH
и нажмите Open
- Увидев предупреждение PuTTY Security Alert о новом ключе, нажмите Да
- Введите пароль от root вашего сервера (который вы создали на этапе создания VPS)
* при вводе пароля на клавиатуре вы не увидите символов на экране, просто вводите вслепую и нажмите Enter
* чтобы вставить пароль, вместо сочетания Ctrl-V используйте одно нажатие правой кнопкой мыши — ничего не произойдёт, но пароль вставится; после этого нажмите Enter - Вы подключились к серверу
Шаг 3 — Установите Wireguard
Мы воспользуемся готовым скриптом от доброго человека.
- Скопируйте первую команду и вставьте её правой кнопкой мыши
Она скачает полный скрипт на ваш сервер
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
- Нажмите Enter, вы увидите, что скрипт скачался
- Скопируйте вторую строчку скрипта
Она даст скрипту нужные права
chmod +x wireguard-install.sh
- Нажмите Enter, скрипт получит нужные права.
- Вставьте последнюю команду, которая запустит скрипт, и нажмите Enter
./wireguard-install.sh
- В консоли по очереди будут появляться вопросы, в которых уже прописаны ответы — просто нажимайте Enter, пока не увиите надпись Press any key to continue…
На этом этапе у вас есть установленный и работающий сервер WireGuard. Теперь нужно создать учётные записи для подключения с компьютера и телефона.
Шаг 4 — Создайте учётные записи
Сразу после установки WireGuard в консоли начнётся процесс создания учётной записи.
- Tell me a name for the client
Введите произвольное имя для учётной записи. Например, «Vasya», «iPhone» или (как на скриншоте) — «wtigga_vpn», и нажмите Enter - На все остальные вопросы в консоли нажимайте Enter, пока в консоли не появится QR-код
- Сделайте скриншот этого QR-кода и сохраните, он пригодится для быстрого подключения со смартфона
Кроме того, нужно сохранить текстовые данные к этой учётной записи для подключения с компьютера. Для этого откроем файл конфигурации:
- Найдите строку с адресом файла конфигурации сразу под QR-кодом, в моём случае она выглядит так:
It is also available in /root/wg0-client-wtigga_vpn.conf - Наберите команду nano, а затем после пробела напишите адрес к этому файлу, в моём случае это:
nano /root/wg0-client-wtigga_vpn.conf
- В консоли откроется файл с конфигурацией. Скопируйте весь текст из этого файла в любой текстовый файл на своём компьютере, и сохраните.
Шаг 4.1 — Ещё одна учётная запись
Лучше давать каждому пользователю по учётной записи, чтобы при необходимости можно было точечно её отключить.
Чтобы добавить ещё одного пользователя, снова введите команду
./wireguard-install.sh
Скрипт спросит, что именно сделать. Введите единицу (Add a new user), нажмите Enter и вы снова увидите процесс создания нового пользователя.
Шаг 5 — Подключение к VPN
Windows / Mac
- Скачайте официальный клиент, установите и запустите
- В левом нижнем углу Добавить туннель -> Добавить пустой туннель
- Введите название, а ниже вместо имеющегося текста вставьте тот, что сохранили в консоли из config-файла, и нажмите Сохранить
- Нажмите кнопку Подключить…
- …И вы в интернете без блокировок!
Android / iOS
- Установите официальное приложение для Android (APK) или iOS
- Запустите, выберите (+) и Сканировать QR-Код
- Отсканируйте код, который вы заскриншотили в консоли
- Назовите его любым именем и нажмите Создать туннель
- Теперь нажмите на переключатель напротив вновь сохранённого туннеля, и вы попадёте в интернет без блокировок.
Послесловие
От чего не защитит VPN
Не используйте такой VPN для скачивания торрентов, продажи наркотиков или распространения детской порнографии. Вы оплачиваете VPS со своей банковской карты, а это значит, что для хостинга (Vult, DigitalOcean и других) вы не являетесь анонимом. И если полиция условной Германии будет расследовать уголовное дело, в котором фигурирует ваш VPN, то ваше имя там всплывёт.
Именно по этой причине нужно делать отдельные учётные записи WireGuard для каждого пользователя, и никогда не выкладывать эти учётки в открытый доступ, иначе вам возможно придётся отвечать за действия какого-то анонима из интернета.
И, разумеется, VPN не сделает вас анонимным, если вы заходите в социальные сети под учёткой с вашим настоящим именем.
спасибо. Правда, заработало только после доп. команд
sudo ufw allow 22/tcp
sudo ufw allow 51820/udp
sudo ufw enable
51820 — порт, соответственно будет какой поставим, а не именно 51820
PS: вместо команды nano лучше просто использовать команду cat для вывода сразу в терминал, редактор nano не везде может и быть 🙂
Благодарю! Помогло решить проблему.
хм… privatekay = ничего не написано
это нормально?
Сделал все по инструкции. В интернет не выходит
Могут быть разные причины. Клиент к серверу подключается?
Подключение есть но нету интернета не заходит на сайты. Данные отправляет но не получает !
https://trashbox.ru/link/how-to-make-own-vpn-for-free
Здесь по проще, только не работает не пойму почему.ю помогите плз
Добрый день. Спасибо за инструкцию. Хоть куда-то продвинулся. У меня возникли некоторые проблемы. Думаю все сделал по инструкции. Сама программа подключается к серверу но доступа к интернет нету. Не разбираюсь в консольных командах. Можете помочь ?
Да я тоже не бог весть какой айтишник. Раньше работало. Можете попробовать альтернативы вроде Outline
https://blog.wtigga.com/outline-vpn/
А если это подключение будет заблокировано в последствии провайдером, чего делать потом, как и чего сменить?
Спасибо, отличная инструкция. Все получилось с первого раза.
Спасибо огромное и вам и автору скрипта!
Этот «доброго человека» написал вирус ! Не ставьте его
При попытке удалить Wireguard он стирает пол сервера !!! ispmanager mysql больше нет
могу скинуть скрины телега @VladySurf
Я не догадался написать очевидное в самом начале: не устанавливайте wireguard по скриптам из интернета на сервер, где у вас крутится что-то ценное. Вроде бы очевидная предосторожность.
Проверила скрипт из статьи. Который
https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
Ничего удаляющего там нету (кроме rm -rf /etc/wireguard).
Либо вы из другого места скачали что-то.
Либо сами удалили как-то)
Добрый день! Как работать с VPS, Wireguard VPN под Ubuntu? 🙁
здравствуйте!
Сделал все по инструкции, но сервер взял российский. Зачем? Сижу в Армении, мне с облака надо качать большие объемы, а скорость между странами режется со слов тех поддержки провайдера местного. Да и speednest об этом же сказал. Думал что скорость увеличится если через российский сервер качать буду. На облаке админы говорят, что скорость ограничена только твоим провайдером может быть, у них никаких ограничений. Они не заинтересованы.
Так вот скорость осталась примерно такая же. В статистике сервера скорость 0,1 мбит/сек был скачок когда только подключил, потом нули. Что-то не так сделал? или так это не работает?
Доброго времени суток. Хочу сказать вам большое спасибо. Это самый доступный мануал из тех что я перекопал. С помощью вас сделал свой впн =)
Уважаемые, а как вы оплачиваете за забугорные VPS, если Visa, Mastercard ушли из России после 10 марта 2022?
Самым радикальным образом.
Через мруские сайты берешь сервер за бугром и проблем нет
Как в файл конфигурации сервера добавить публичный ключ другого пира? Какое название у файла конфигурации?
Как сделать чтобы через это подключение внешний интернет был? Какие маршруты прописать на клиенте?
Здравствуйте!
Я все сделал, как по инструкции, все работает.
Но деньги не снялись, так должно быть или что то не так?
Добрый день! Спасибо за отличный гайд. Всё работает.
Единственное, с мая цены у vltur уже другие. Минимальный пакет 5 уе в месяц.
И тут есть вопрос — как можно влиять на скорость? Использовал до этого сервис surfshark-скорости были огонь! Тут пока тесты больше 15 мбит не поднялись. Какой канал идёт на vps? Не нашёл на сайте.
Добрый день.
WG поднят на хостинге в Латвии. Мобильные устройства через него работают нормально. LinkedIn, например, открывается. И остальные подобные сайты тоже. А с ноутбуков (Windows\Ubuntu) соединения устанавливаются, устройства получают латвийский IP, но сайты не открываются.
Не подскажете, где искать проблему?