Борьба с весенним обострением
Доброго дня!
В целях борьбы с разного рода замедлением и блокировкой от известного министерства, народ состряпал простой гайд: https://www.cyberciti.biz/faq/ubuntu-20-04-set-up-wireguard-vpn-server/
Начиная с Ubuntu 22.04 шаг №11 обязателен
Краткий пересказ
1. Берем обычную VPS-ку с Ubuntu 20.04
2. Обновляем систему и ставим пакеты
3. делаем ключи для сервера
получили два файлика privatekey и publickey назначение которых понятно из названия
4. аналогичным образом делаем ключи для клиента (в другой папке или с другими именами, это не важно, т.к. далее понадобится только содержимое)
5. командой ip a смотрим как называется интерфейс с Интернетом и запоминаем адрес (в моем случае это eth0, у вас может быть enps).
6. создаем файл /etc/wireguard/wg0.conf с настройками сервера
Секций peer может быть несколько с разными публичными ключами клиентов
7. стартуем wireguard на сервере и добавляем его в автозапуск
8. делаем конфиг для клиента
9. конфиг клиента подкладываем на десктоп или отправляем почтой на телефон
в приложении достаточно выполнить импорт этого файла и всё сразу работает
Например, генерируем qr код прямо из консоли
10. приложение на Andriod позволяет выбрать какие приложения отправлять в VPN - это очень удобно, чтобы например youtube не отжирал трафик и процессор телефона.
11. на всякий случай можно проверить что работает маршрутизация
В файлах /etc/sysctl.conf или /etc/ufw/sysctl.conf должна быть не закоменченная строчка строчка net.ipv4.ip_forward=1
В целях борьбы с разного рода замедлением и блокировкой от известного министерства, народ состряпал простой гайд: https://www.cyberciti.biz/faq/ubuntu-20-04-set-up-wireguard-vpn-server/
Начиная с Ubuntu 22.04 шаг №11 обязателен
Краткий пересказ
1. Берем обычную VPS-ку с Ubuntu 20.04
2. Обновляем систему и ставим пакеты
apt update
apt upgrade
apt install wireguard
3. делаем ключи для сервера
umask 077; wg genkey | tee privatekey | wg pubkey > publickey
получили два файлика privatekey и publickey назначение которых понятно из названия
4. аналогичным образом делаем ключи для клиента (в другой папке или с другими именами, это не важно, т.к. далее понадобится только содержимое)
5. командой ip a смотрим как называется интерфейс с Интернетом и запоминаем адрес (в моем случае это eth0, у вас может быть enps).
6. создаем файл /etc/wireguard/wg0.conf с настройками сервера
[Interface]
## внутренний адрес сервера ##
Address = 192.168.6.1/24
## Правила для iptables чтобы пошел NAT
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
## номер порта сервера на который подключаются клиенты
ListenPort = 41194
## частный ключ сервера (privatekey) ##
PrivateKey = iNsdfgjsdkfjgsdjflgjsdlfkjgnitYWwJHEs=
[Peer]
## публичный ключ клиента (содержимое publickey клиента)
PublicKey = sEhgpzgsdfsdfsdfJIsdfsdfV1PxHi7OC3Dk=
## внутренний адрес клиента
AllowedIPs = 192.168.6.3/32
Секций peer может быть несколько с разными публичными ключами клиентов
7. стартуем wireguard на сервере и добавляем его в автозапуск
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
sudo systemctl status wg-quick@wg0
8. делаем конфиг для клиента
[Interface]
## Частный ключ клиента (содержимое privatekey) ##
PrivateKey = EsdfgjksdlfkhlsdfgsdfsbvcxbxcvbxcvbxcvbxcvbA=
## Внутренний адрес клиента ##
Address = 192.168.6.3/24
DNS = 8.8.8.8
[Peer]
## публичный ключ сервера ##
PublicKey = vDmsdfgsdfgsdfgsdfgsdfgsdfgsdfgFqeCM=
## Чтобы в VPN уходил весь трафик ##
AllowedIPs = 0.0.0.0/0
## Вместо X.X.X.X ставьте адрес вашего VPS сервера ##
Endpoint = X.X.X.X:41194
## Key connection alive ##
PersistentKeepalive = 15
9. конфиг клиента подкладываем на десктоп или отправляем почтой на телефон
в приложении достаточно выполнить импорт этого файла и всё сразу работает
Например, генерируем qr код прямо из консоли
qrencode -t ansiutf8 < wg.confи сканируем в приложении wireguard
10. приложение на Andriod позволяет выбрать какие приложения отправлять в VPN - это очень удобно, чтобы например youtube не отжирал трафик и процессор телефона.
11. на всякий случай можно проверить что работает маршрутизация
В файлах /etc/sysctl.conf или /etc/ufw/sysctl.conf должна быть не закоменченная строчка строчка net.ipv4.ip_forward=1
no subject
Перепощу у себя.