====== Проброс портов ====== Для проброса портов снаружи сети во внутреннее пространство используется DNAT (Destination Network Address Translation). С помощью DNAT можно подменять для входящих пакетов адрес назначения. Выполним проброс порта. ==== Создаем правило **NAT** ==== На вкладке **NAT -> General** - **Chain** - направление потока данных. В списке выбора - srcnat, что означает "изнутри наружу", т. е. из локальной сети во внешний мир, и dstnat - из внешней сети во внутреннюю. Мы выбираем второе, так как будем принимать входящие подключения. - **Src. Address Dst. Address** - внешний адрес, с которого будет инициироваться подключение, и адрес назначения (всегда адрес роутера). Оставляем незаполненным. - **Protocol** - здесь указываем вид протокола для нашего соединения, tcp или udp, заполняем обязательно. - **Src. Port** (исходящий порт) - порт удаленного компьютера, с которого будут отправляться данные, оставляем пустым, если для нас это неважно. - **Dst. Port** (порт назначения) - проставляем номер внешнего порта роутера, на который будут приходить данные от удаленной машины и переадресовываться на наш компьютер во внутренней сети. - **Any. Port** (любой порт) - если мы проставим здесь номер порта, то укажем роутеру, что этот порт будет использоваться и как исходящий, и как входящий (объединяя два предыдущие поля в одном). - **In. interface** (входящий интерфейс) - здесь указываем интерфейс роутера MikroTik, на котором используется, "слушается" этот порт. В нашем случае, так как мы делаем проброс для поступления данных извне, это интерфейс, через который роутер подключен к Интернет, по умолчанию это ether1-gateway. Параметр нужно указать обязательно, иначе порт не будет доступным из локальной сети. Если мы подключены к провайдеру через pppoe, то возможно, потребуется указать его, а не WAN-интерфейс. - **Out. interface** (исходящий интерфейс) - интерфейс подключения компьютера, для которого мы делаем проброс портов. На вкладке **Action**, - В поле **Action** прописываем действие, которое должен будет выполнять роутер. Предлагаются варианты: - **accept** — просто принимает данные; - **add-dst-to-address-list** — адрес назначения добавляется в список адресов; - **add-src-to-address-list** — исходящий адрес добавляется в соответствующий список адресов; - **dst-nat** — перенаправляет данные из внешней сети в локальную, внутреннюю; - **jump** — разрешает применение правила из другого канала, например при установленном в поле Chain значения srcnat — применить правило для dstnat; - **log** — просто записывает информацию о данных в лог; - **masquerade** — маскарадинг: подмена внутреннего адреса компьютера или другого устройства из локальной сети на адрес маршрутизатора; - **netmap** — более новая вариация dst-nat; - **passthrough** — этот пункт настройки правил пропускается и происходит переход сразу к следующему. Используется для статистики; - **redirect** — данные перенаправляются на другой порт этого же роутера; - **return** — если в этот канал мы попали по правилу jump, то это правило возвращает нас обратно; - **same** — редко используемая настройка один и тех же правил для группы адресов; - **src-nat** — переадресация пакетов из внутренней сети во внешнюю (обратное dst-nat перенаправление). Для настройки проброса портов подойдут варианты dst-nat и netmap. Выбираем последний, как более новый и улучшенный. - В поле **To Adresses** прописываем внутренний IP-адрес компьютера или устройства, на который роутер должен будет перенаправлять данные по правилу проброса портов. - В поле **To Ports**, соответственно, номер порта, к примеру: - 80/tcp — WEB сервер, - 22/tcp — SSH, - 1433/tcp — MS SQL Server, - 161/udp — snmp, 23/tcp — telnet и etc. - Если значения в поле **Dst. Port** предыдущей вкладки и в поле **To Ports** совпадают, то здесь его можно не указывать. - Добавляем **комментарий** к правилу, чтобы напомнить себе, для чего его создавали. ==== Создаем правило для **FireWall** ==== вкладка **FireWall** * **Chain** - //input// * **Protokol** - //tcp// * Dst.port - пробрасыыаемый порт Вкладка **Action** * **Action** - //accept//