Проброс портов в MikroTik

 

 

1. Проброс портов в winbox

 

Открываем IP — Firewall — NAT, жмем «+»

 

 

Chain — цепочка, в которой будет обрабатываться правило. Выбираем dstnat.

 

Src. Address — адрес источника. Если мы хотим указать конкретный адрес, то забиваем сюда. Но т.к. веб-сервер должен быть доступен всем, то я это поле не заполняю.

 

Dst. Address — адрес, к которому будут обращаться клиенты извне. В данном примере это адрес 1.1.1.1. Можно этот адрес не указывать, но в этом случае нужно будет обязательно указать In. Interface

 

Protocol — выбираем TCP.

 

Dst. port — порт, к которому будут обращаться клиенты извне. Для веб-сервера по-умолчанию это порт 80.

 

In. Interface — интерфейс, который смотрит наружу. В нашем случае это интерфейс inetTest.

 

Остальные параметры нам в этой статье неинтересны, поэтому переходим на вкладку Action.

 

 

Action — выбираем dst-nat.

 

To Addresses — пишем IP-адрес нашего веб-сервера в локальной сети.

 

To Ports — порт 80.

 

Этого, собственно, достаточно. Но есть один очень важный момент. У роутера MikroTik есть встроенный веб-сервер, который висит на том же дефолтном порту 80. Надо его оттуда убрать. Заходим в IP — Services  и меняем там порт службы www с 80-го, на произвольный.

 

Процесс создания правила проброса порта RDP аналогичен вышеописанному.

 

Хотел бы только сказать, что такой простой проброс RDP чертовски небезопасен и использовать его в таком виде крайне не рекомендую. Если известен удаленный IP-адрес, с которого будет производиться подключение, обязательно его указывайте в поле Src. Address. Это как минимум. А лучше вообще используйте VPN (легко поднимается на MikroTik) вместо банального проброса порта. Если уж сильно нужен именно проброс порта и неизвестен адрес источника, то есть еще такая штука,  port knocking называется. Так же можно реализовать на MikroTik, но это материал для отдельной заметки — читайте статью Port knocking MikroTik .

 

Здесь проброс RDP используется только в качестве примера проброса порта, а не как призыв открывать небезопасный доступ к своим рабочим столам всему интернету.

 

2. Проброс портов — скрипты

 

В скриптах я добавил еще одно правило для протокола HTTPS на веб-сервер, а для проброса RDP использовал нестандартный порт.

 

/ip firewall nat

 

# WEB Server 192.168.33.2 HTTPS port 80

add action=dst-nat chain=dstnat comment=test dst-address=1.1.1.1 dst-port=80 in-interface=inetTest protocol=tcp to-addresses=192.168.33.2 to-ports=80

 

# WEB Server 192.168.33.2 HTTPS port 443

add action=dst-nat chain=dstnat comment=test dst-address=1.1.1.1 dst-port=443 in-interface=inetTest protocol=tcp to-addresses=192.168.33.2 to-ports=443

 

# RDP PC 192.168.33.129

add action=dst-nat chain=dstnat comment=test dst-address=1.1.1.1 dst-port=4565 in-interface=inetTest protocol=tcp to-addresses=192.168.33.129 to-ports=3389

 

 

Для RDP dst-port указан 4565, который MikroTik перенаправит на персоналку 192.168.33.129 на стандартный порт RDP — 3389. Соответственно, удаленному пользователю при подключению к удаленному рабочему столу надо будет так же указать и порт: 1.1.1.1:4565

 

Естественно, не забудьте разрешить в файерволе входящие соединения на внешний интерфейс (у нас inetTest) на порты, которые мы собираемся пробросить (в этом примере 80, 443, 4565).