1. Создание интерфейса WireGuard
Создаём интерфейс и указываем порт:
wg0— имя51820/udp— порт подключения
shell
/interface wireguard add name=wg0 listen-port=51820
2. Назначение IP адресу интерфейсу
shell
/ip address add address=10.0.0.1/24 interface=wg0
3. Добавление пира (клиента)
Для каждого клиента создаётся отдельный peer:
shell
/interface wireguard peers add \
interface=wg0 \
public-key="<pubkey_клиента>" \
allowed-address=10.0.0.2/32
public-key— ключ клиентаallowed-address— IP клиента в туннеле
Если пир используется только как клиент (он сам инициирует соединение и сервер не должен начинать handshake):
Рекомендуется включить Responder=yes
Это:
- запрещает MikroTik инициировать рукопожатие первым
- убирает спам в логах вида handshake failed
- особенно заметно после отключения клиента
Пример полностью:
shell
/interface wireguard peers add \
interface=wg0 \
public-key="<pubkey>" \
allowed-address=10.0.0.2/32 \
responder=yes
4. NAT (если нужен интернет через VPN)
Если трафик клиента должен идти в интернет через MikroTik:
shell
/ip firewall nat add chain=srcnat action=masquerade out-interface=ether1
ether1 — WAN-интерфейс.
5. Firewall
Разрешить WireGuard:
shell
/ip firewall filter add chain=input action=accept protocol=udp dst-port=51820
Разрешить трафик из VPN:
shell
/ip firewall filter add chain=forward action=accept src-address=10.0.0.0/24
6. Конфиг клиента
Пример:
client.conf
[Interface]
PrivateKey = <client_private>
Address = 10.0.0.2/32
[Peer]
PublicKey = <server_public>
Endpoint = <IP_сервера>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
7. Проверка
На MikroTik:
shell
/interface wireguard print
/interface wireguard peers print
Должен появиться latest-handshake.
Добавить комментарий