...
Настроить WireGuard-сервер на маршрутизаторе для подключения удаленных пользователей к серверам организацииЛВС.
- адресация внутри туннеля – 110.0.0туннеля – 10.10.10.0/3024;
- порт подключения к серверу – 43020;
- адрес WireGuard-сервера внутри туннеля – 11010.010.010.1.
Решение:
Предварительно нужно выполнить следующие действия:
- загрузить на ESR приватный ключ сервера и публичный ключ клиента;
- создать object-group network, в которой будет указан список IP-адресов, которым будет разрешено проходить через туннель.
Импортируйте по tftp приватный ключ сервера и публичный ключ клиентаСоздадим ключевую пару x25519, которая будет использоваться в работе WireGuard:
| Блок кода |
|---|
esr# crypto generate private-key x25519 filename wg_server_private.key
esr# crypto generate public-key x25519 private-key wg_server_private.key filename wg_server_public.key |
Для успешной работы необходимо совершить обмен открытыми криптографическими ключами с удаленной стороной любым удобным способом. На данном этапе настройки открытым криптографическим ключом является файл с именем wg_server_public.key, который хранится в crypto:public-key:
| Блок кода |
|---|
esr# show crypto certificates public-key
File name
--------------------------------------------------------------------------------------------------------------
wg_server_public.key |
copy tftp://192.168.16.10:/server.priv crypto:private-key/server.priv
esr# copy tftp://192.168.16.10:/client.pub crypto:public-key/client.pub |
Создайте object-group network, в которой будет указан список Создадим object-group network со списком IP-адресов, которым будет разрешено прохождение проходить через туннель:
| Блок кода |
|---|
esr(config)# object-group network WGclient_CLIENTSwg esr(config-object-group-network)# ip address-range 10.4010.0.10-10.40.0.20.2 |
Создайте профиль WireGuard-сервера, задайте локальный адрес сервера, порт для прослушивания и выставьте MTU:
| Блок кода |
|---|
esr(config)# remote-access wireguard WG esr(config-wireguard-server)# local-address 11010.010.010.1/3024 esr(config-wireguard-server)# port 43020 esr(config-wireguard-server)# mtu 1420 |
...
| Блок кода |
|---|
esr(config-wireguard-server)# private-key wg_server_private.keypriv esr(config-wireguard-server)# ip firewall disable |
...
| Блок кода |
|---|
esr(config-wireguard-server)# peer 1 esr(config-wireguard-server-peer)# public-key wg_client_public.keypub esr(config-wireguard-server-peer)# access-addresses object-group WGclient_CLIENTS |
Для усиления криптостойкости установим заранее известный симметричный ключ:
| Блок кода |
|---|
esr(config-wireguard-server-peer)# pre-shared-key base64 r4u48oYTouJ+j1GrAtVWRIZqlQ2YLjEZEvc+Yttc6R4= |
wg |
Включите туннель и WireGuard-сервер:
...
| draw.io Diagram | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Решение:
...

