Если возникают проблемы, что-то не получается - пишите в телеграми, он есть у меня в профиле. Каждому постараюсь помочь.
В данной статье мы будем делать свой vpn при помощи WireGuard, итак приступим:
Шаг 1.
Покупаем vps/vds ,обязательно что бы был linux ubuntu 20.04 и локацию которая вам будет нужна в моем случае я выбрал Германию.
Говоря о том, что нам там предлагают под наши цели — это виртуальные VPS сервера, расположенные в странах европы, России и США. С реальной скоростью соединения с сервером примерно 500 мбит/с и безлимитным трафиком (что очень важно для VPN сервера) . Лично я буду использовать хостера Aeza - дешевый и относительно стабильный, с нормальными хар-ми сервера.
Итак, если вы, всё-таки решили арендовать сервер у Аезы, а не пошли писать гневные комментарии под моим постом этому поводу, то алгоритм действий такой:
1. Для начала вам нужно перейти по этой ссылке, зарегистрироваться и перейти в личный кабинет.
2. Далее, нажмите на Виртуальный сервер, выберите нужную страну, тариф Shared и минимальную конфигурацию сервера.
3. На наш сервер нужно установить операционную систему Ubuntu 20.04— её и выберите. Отключите бекапы — тут они не нужны (в случае чего всё можно быстро переустановить) . Выберите период оплаты и, собственно, оплатите аренду.
Кстати, после регистрации по моей реферальной ссылке у вас в течении 24 часов будет бонус 15% к пополнению баланса.
Минуты 2-3 сервер будет активироватьсяи после на почту придут данные для авторизации для подключения к серверу. Либо, ip-адрес и пароль можно будет посмотреть в разделе мои услуги и нажать на название вашего сервера.
Подключитесь к серверу по SSH:
- Наберите ssh root@111.111.111.111 в консоли (IP поменяйте на свой).
Пароль можно вставить из буфера с помощью ПКМ, он не отображается для безопасности. Иногда пароль вставляется корректно только при включённой английской раскладке клавиатуры.
- Либо используйте веб-интерфейс "VNC" в панели VPS
- Либо используйте какое-либо SSH-приложение (подойдет командная строка)
Шаг 2. Обновляем пакет дистрибутивов:
Команда для обновления дистрибутивов
apt update && apt upgrade -y
Дальше, устанавливаем сам WireGuard:
Команда для установки WireGuard
apt install -y wireguard
Шаг 3. Генерируем ключи сервера:
Команда wg keygen генерирует уникальный ключ для подключения через WireGuard client, а команда tee выводит ключ на экран
Команда для генерации ключей:
wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey
А так же даем разрешение на чтение и запись только пользователю
Команда на разрешение прав доступа:
chmod 600 /etc/wireguard/privatekey
Проверяем как называется наш сетевой интерфейс:
ip a
У меня лично из-за уже установленного WireGuardа, у меня появился сетевой интерфейс wg0, у вас такого не будет
В моём случае мой сетевой интерфейс называется ens3, у вас он может называться eth0 или иначе
Шаг 4, самое интересное.
Открываем новый документ при помощи nano в линуксе с таким путём: /etc/wireguard/wg0.conf
Команда:
nano /etc/wireguard/wg0.conf
И вставляете такой текст:
[Interface]
PrivateKey = <privatekey> \\ изменяете на свое значение из файла "/etc/wireguard/privatekey"
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
Важно! eth0 оставляете или меняете.
Дальше, вводите команду в консоль и проверяете:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf | sysctl -p
Если у вас так:
, то все окей
Включаем systemd демон с WireGuard:
systemctl enable wg-quick@wg0.service
systemctl start wg-quick@wg0.service
systemctl status wg-quick@wg0.service
В статусе должно быть так:
Дальше делаем ещё одну генерацию ключей (уже для клиента):
wg genkey | tee /etc/wireguard/username_privatekey | wg pubkey | tee /etc/wireguard/username_publickey
Идем снова в wg0.conf и вставляем следующее:
[CODE=code][Peer] PublicKey = Ваш публичный ключ из cat /etc/wireguard/xxxxx_publickey AllowedIPs = 10.0.0.2/32[/CODE]
Перезапускаем сервис:
[CODE=code]systemctl restart wg-quick@wg0 systemctl status wg-quick@wg0[/CODE]
Теперь на своём компьютере создаёте с каким-либо именем файл на конце .conf и заполняем его таким содержимым:
[CODE=code][Interface] PrivateKey = <CLIENT-PRIVATE-KEY> \\ приватный ключ, он берётся из "/etc/wireguard/xxxx_privatekey" Address = 10.0.0.2/32 DNS = 8.8.8.8 [Peer] PublicKey = <SERVER-PUBKEY> \\ Серверный публичный ключ, он берётся из "/etc/wireguard/publickey Endpoint = <SERVER-IP>:51830 \\ где <SERVER-IP> там ip хоста на котором стоит wireguard AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 20[/CODE]
И сохраняем его в .conf
Шаг 5, последний
Скачиваем WireGuard для вашей ос в моем случае для windows с этого сайта:
https://www.wireguard.com/install/ (Не реклама)
И скачиваем installer:
Как только установили нас встречает такое окно:
У вас здесь ничего не будет, вам нужно будет нажать "Добавить туннель" и открываете .conf файл который вы создали, и у вас появится новый туннель и теперь вы сможете подключиться к туннелю.
Ну вот и всё, всем спасибо за чтение данной статьи!