Инструменты пользователя

Инструменты сайта


flip:wireguard:installing_wireguard_on_debian_12

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
flip:wireguard:installing_wireguard_on_debian_12 [2024/12/24 20:23] flipflip:wireguard:installing_wireguard_on_debian_12 [2024/12/26 16:37] (текущий) flip
Строка 71: Строка 71:
 >**PrivateKey** - приватный ключ сервера >**PrivateKey** - приватный ключ сервера
 >**Address** - IP сервера и подсеть **24** >**Address** - IP сервера и подсеть **24**
->**ListenPort** - порт, по умолчанию **51820**+>**ListenPort** - порт для подключения, по умолчанию **51820** 
 +>**PostUp** - команды выполняются при запуске интерфейса 
 +>**PostDown** - команды выполняются при остановке интерфейса
  
 >**[Peer]** - настройка для клиента >**[Peer]** - настройка для клиента
 >**PublicKey** - публичный ключ клиента >**PublicKey** - публичный ключ клиента
 >**AllowedIPs** - IP клиента и подсеть **32** >**AllowedIPs** - IP клиента и подсеть **32**
 +
 +Запустить интерфейс (должен совпадать с именем конфига)
 +
 +<code>
 +systemctl status wg-quick@wg0.service
 +</code>
 +
 +Автозапуск интерфейса
 +
 +<code>
 +systemctl enable wg-quick@wg0.service
 +</code>
 +
 +Применение новых настроек без потери текущих соединений
 +
 +<code>
 +systemctl reload wg-quick@wg0.service
 +</code>
 +
 +
 +===== Разрешить трафик через шлюз на сервере (форвардинг) =====
 +
 +Раскомментировать или добавить параметр в **/etc/sysctl.conf**
 +
 +<code>
 +net.ipv4.ip_forward=1
 +</code>
 +
 +Применить параметр
 +
 +<code>
 +sysctl -p
 +</code>
  
  
Строка 103: Строка 138:
 >**Endpoint** - IP сервера и порт для подключения >**Endpoint** - IP сервера и порт для подключения
 >**AllowedIPs** - IP адреса и подсети для перенаправления трафика на сервер (IPv4, IPv6) >**AllowedIPs** - IP адреса и подсети для перенаправления трафика на сервер (IPv4, IPv6)
 +>**PersistentKeepalive** - интервал отправки пакетов для поддержания соединения в  секундах, по умолчанию 0, достаточно поставить 25
  
 0.0.0.0/0 - весь трафик для IPv4 \\ 0.0.0.0/0 - весь трафик для IPv4 \\
Строка 108: Строка 144:
  
  
 +===== QR-код конфигурации =====
 +
 +Установить пакет
 +
 +<code>
 +apt-get install qrencode
 +</code>
 +
 +Сгенерировать qr-код из пользовательского конфига
 +
 +<code>
 +qrencode -t ansiutf8 < user.conf
 +</code>
 +
 +
 +===== Примеры =====
 +
 +
 +==== Кейс. Виртуальная сеть сервер-клиент ====
 +
 +Настроим WireGuard между двумя устройствами
 +
 +**Генерируем ключи для сервера**
 +
 +<code>
 +wg genkey | tee server_privatekey | wg pubkey > server_publickey
 +cat server_privatekey && cat server_publickey
 +</code>
 +
 +>**server_privatekey:** eAFJBo4Iv6EhCFrJ2UnaKUL6m5l+eBQXFiyvrgKbeGM=
 +>**server_publickey:** g2TdH54TB3yVFqMkRsYr7IsgHQIiFQQ4C5pwIIe+wkE=
 +
 +**Генерируем ключи для клиента**
 +
 +<code>
 +wg genkey | tee user_privatekey | wg pubkey > user_publickey
 +cat user_privatekey && cat user_publickey
 +</code>
 +
 +>**user_privatekey:** sJTjndiIZ0uGrwFSlnRJ8QIy5Ty2fqTjYf1u/g0p/FU=
 +>**user_publickey:** MNX7jtoxAAgyp38DjxSX2xX6C9z2Ozmp5VFJC0uXWEA=
 +
 +**Конфиг для сервера**
 +
 +<code>
 +nano /etc/wireguard/wg0.conf
 +</code>
 +
 +<code>
 +[Interface]
 +PrivateKey = eAFJBo4Iv6EhCFrJ2UnaKUL6m5l+eBQXFiyvrgKbeGM=
 +Address = 192.168.100.1/24
 +ListenPort = 51820
 +
 +[Peer]
 +PublicKey = MNX7jtoxAAgyp38DjxSX2xX6C9z2Ozmp5VFJC0uXWEA=
 +AllowedIPs = 192.168.100.2/32
 +</code>
 +
 +>Address = 192.168.100.1/24 - виртуальный IP сервера
 +>AllowedIPs = 192.168.100.2/32 - IP клиента
 +
 +Запускаем интерфейс
 +
 +<code>
 +systemctl status wg-quick@wg0.service
 +</code>
 +
 +Автозапуск интерфейса
 +
 +<code>
 +systemctl enable wg-quick@wg0.service
 +</code>
 +
 +**Конфиг для клиента**
 +
 +>**user.conf**
 +
 +<code>
 +[Interface]
 +Address = 192.168.100.2/32
 +PrivateKey = sJTjndiIZ0uGrwFSlnRJ8QIy5Ty2fqTjYf1u/g0p/FU=
 +
 +[Peer]
 +PublicKey = g2TdH54TB3yVFqMkRsYr7IsgHQIiFQQ4C5pwIIe+wkE=
 +AllowedIPs = 192.168.100.0/24
 +Endpoint = 192.168.0.6:51820
 +</code>
 +
 +>Address = 192.168.100.2/32 - виртуальный IP клиента
 +>AllowedIPs = 192.168.100.0/24 - разрешенная подсеть
 +>Endpoint = 192.168.0.6:51820 - IP сервера для подключения
 +
 +Добавить конфиг в клиент и подключиться
 +
 +Если пинг проходит в обе стороны, значит настройка прошла успешно
 +
 +
 +**Добавляем еще одного клиента**
 +
 +Генерируем ключи
 +
 +<code>
 +wg genkey | tee user2_privatekey | wg pubkey > user2_publickey
 +cat user2_privatekey && cat user2_publickey
 +</code>
 +
 +>**user2_privatekey:** oNXwVJklzsMIwOcIB9xjvEqtGMzimXa9dr7qQ8kUfXE=
 +>**user2_publickey:** HyVRp907OMf7D2piTy6dpabHSMSSQ9Eel/N8PPi91xQ=
 +
 +Отредактируем конфиг сервера
 +
 +<code>
 +[Interface]
 +PrivateKey = eAFJBo4Iv6EhCFrJ2UnaKUL6m5l+eBQXFiyvrgKbeGM=
 +Address = 192.168.100.1/24
 +ListenPort = 51820
 +
 +[Peer]
 +PublicKey = MNX7jtoxAAgyp38DjxSX2xX6C9z2Ozmp5VFJC0uXWEA=
 +AllowedIPs = 192.168.100.2/32
 +
 +[Peer]
 +PublicKey = HyVRp907OMf7D2piTy6dpabHSMSSQ9Eel/N8PPi91xQ=
 +AllowedIPs = 192.168.100.3/32
 +</code>
 +
 +Новый конфиг для клиента
 +
 +<code>
 +[Interface]
 +Address = 192.168.100.3/32
 +PrivateKey = oNXwVJklzsMIwOcIB9xjvEqtGMzimXa9dr7qQ8kUfXE=
 +
 +[Peer]
 +PublicKey = g2TdH54TB3yVFqMkRsYr7IsgHQIiFQQ4C5pwIIe+wkE=
 +AllowedIPs = 192.168.100.0/24
 +Endpoint = 192.168.0.6:51820
 +</code>
 +
 +Применяем новый конфиг
 +
 +<code>
 +systemctl reload wg-quick@wg0.service
 +</code>
 +
 +Клиенты не смогут друг друга увидеть. \\
 +Чтоб видели, нужно включить форвардинг
flip/wireguard/installing_wireguard_on_debian_12.1735071836.txt.gz · Последнее изменение: 2024/12/24 20:23 — flip

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki