ssh root@140.28.85.134
apt update && apt upgrade -y apt install -y wireguard cd /etc/wireguard/
Генерим ключи сервера:
wg genkey | tee /etc/wireguard/privatekey | wg pubkey | tee /etc/wireguard/publickey chmod 600 /etc/wireguard/privatekey
выводим privatekey и копируем
cat privatekey
Создаём конфиг сервера:
nano /etc/wireguard/wg0.conf
[Interface] PrivateKey = PRIVATE_KEY Address = 10.9.0.1/24 ListenPort = 25642 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
ВНИМАНИЕ!
sudo lshw -C network
тут ищем строчку logical name и вписываем ее вместо eth0 в нашем конфиге
Настраиваем IP форвардинг:
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/vinni_privatekey | wg pubkey | tee /etc/wireguard/vinni_publickey
выводим ключ клиента и копируем
cat vinni_publickey
открываем конфиг (nano /etc/wireguard/wg0.conf) и дописываем:
[Peer] PublicKey = VINNI_PUBLICKEY AllowedIPs = 10.9.0.2/32
Перезагружаем и проверяем:
systemctl restart wg-quick@wg0 systemctl status wg-quick@wg0
получаем SERVER-IP
curl ifconfig.me
На локальной машине (на примере Linux)
Устанавливаем клиент https://www.wireguard.com/install/
типичный сниппет для клиента
[Interface] PrivateKey = VINNI-PRIVATE-KEY Address = 10.9.0.2/32 DNS = 8.8.8.8 [Peer] PublicKey = SERVER-PUBKEY Endpoint = SERVER-IP:25642 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 20
подключение на Linux
sudo apt install wireguard wireguard-dkms resolvconf sudo chown -R USER_NAME /etc/wireguard/ cd /etc/wireguard/ sudo nano wg-client.conf # вставляем сниппет выше sudo chmod 600 wg-client.conf
включаем:
systemctl enable wg-quick@wg-client.service systemctl start wg-quick@wg-client.service systemctl status wg-quick@wg-client.service
Отключить:
sudo systemctl stop wg-quick@wg0.service sudo systemctl disable wg-quick@wg0.service