WireGuard — это современный VPN-протокол и программное обеспечение с открытым исходным кодом, предназначенное для создания безопасных и быстрых туннелей между устройствами, обеспечивая шифрование данных и их передачу по защищенным каналам через интернет. Перенаправление всего трафика через WireGuard нужно для обеспечения безопасности, конфиденциальности и удобства при работе в сети. VPN позволяет обойти географические ограничения и доступ к заблокированным ресурсам.
Для начала скачайте и установите Wireguard на стороне клиента, чтобы подключаться к серверу: https://www.wireguard.com/install/
После установки Wireguard, подключитесь к RouterOS через winbox. Если Winbox не установлен, Вы можете его загрузить по данной ссылке: https://mikrotik.com/download
Введите адрес Вашего сервера/роутера, логин и пароль. Затем нажмите на кнопку “Connect” для подключения к RouterOS.

Откройте раздел Wireguard и создайте новый интерфейс.

Назовите интерфейс wg0 и измените порт на 51820. Нажмите на кнопку “Apply“, затем “OK”. У вас автоматически сгенерируется публичный и приватный ключ сервера Wireguard.

Теперь перейдите во вкладку IP - Addresses.

Нам необходимо добавить подсеть внутренних IP адресов, которые будут назначаться пользователям сервера Wireguard.
Нажмите на “+”. В поле Address укажите адрес 192.168.100.1/24
В поле Interface, укажите созданный интерфейс WireGuard – wg0
Затем нажмите на кнопки “Apply” и “OK”.

Теперь нам необходимо добавить клиента в сервер WireGuard.
Откройте программу WireGuard на своем компьютере.
Нажмите на комбинацию клавиш “CTRL + N”. Назовите профиль и скопируйте Public Key.

В RouterOS перейдите обратно в раздел WireGuard и откройте вкладку “Peers” и нажмите на кнопку “+”.

В открывшемся окне введите имя клиента, Вставьте в поле «Public Key» - публичный ключ, скопированный из WireGuard клиента.
В поле “Allowed Address” укажите, IP адрес, который будет назначаться клиенту. Укажите адрес 192.168.100.2/32. 32 подсеть – это 1 IP адрес.
Нажмите на кнопки “Apply” и “OK”.

Теперь нужно настроить правила для брандмауэра и NAT.
Перейдите во вкладку IP - Firewall - Filter Rules. Нажмите “+”

Добавим правило для разрешения WireGuard.
На вкладке General:Chain: InputProtocol: udpDst. Port: 51820
Затем перейдите во вкладку Action.

На вкладке Action выберите accept. Нажмите на кнопку “Apply” и “OK”.

Теперь создайте еще одно правило для пересылки трафика через туннель WireGuard.
На вкладке General:Chain: forwardSrc. Address: 192.168.100.0/24
Затем перейдите во вкладку Action.

На вкладке Action выберите accept. Нажмите на кнопку “Apply” и “OK”.

Теперь перейдите во вкладку NAT и добавьте еще одно правило для доступа в интернет.

На вкладке General:Chain: srcnatSrc. Address: 192.168.100.0/24
Затем перейдите во вкладку Action.

На вкладке Action выберите masquerade. Нажмите на кнопку “Apply” и “OK”.

Работы на стороне RouterOS закончены. Теперь нужно настроить конфигурационный файл.
Вставьте конфиг в программу WireGuard[Interface]
PrivateKey = <Приватный ключ клиента>
Address = 192.168.100.2/24
DNS = 8.8.8.8
[Peer]
PublicKey = <Публичный ключ роутера>
Endpoint = <IP_адрес_роутера>:51820
AllowedIPs = 0.0.0.0/0
Публичный ключ роутера Вы можете взять, перейдя в раздел WireGuard и открыв интерфейс wg0.

Конфигурационный файл должен будет выглядеть примерно вот так:
Активируйте соединение. 
Попробуйте проверить свой внешний IP. Он должен смениться на IP адрес роутера/сервера с RouterOS.



