Переброс портов.

 

Есть задача - входящий из Интернета запрос на определенный порт внешнего интерфейса перебросить на другой порт внутрь сети. Когда это нужно ? Некоторые примеры:

 

- переброс запросов на внутренний WWW сервер с изменением номера порта

- переброс запросов на внутренний Proxy

- переброс запросов на почтовый сервер, расположенный в DMZ

 

Если внешний коннект сети выполнен на «твердотельном» роутере от DLink или CISCO или иже с ними - смотреть на соответствующую документацию. Если уже очень нехорошие буковки там просматриваются - то надо готовиться платить деньгу спецу.

 

Мы подразумеваем, что у нас внешний сервер - на FreeBSD. В нем минимум 2 сетевых карты. Или больше. Как пробросить порты в этом случае:

 

Ставим из /usr/ports/sysutils/socket - стандартное make, make install

Добавляем для нашего порта, по которому мы будем ломиться со стороны Интернета соответствующую запись в /etc/services

 

ourpt8010        8010/tcp

ourpt8010        8010/udp

 

Теперь еще одна запись в /etc/inetd.conf

 

<Порт по описанию из /etc/services>  stream tcp nowait root /usr/local/bin/socket socket  <IP - куда мы бросаем> <Port - куда мы бросаем>

 

В окончательном виде  - примерно так:

Пробрасываем порт 8010 (описан выше)  на порт 80 на внутренний IP 192.168.11.42

 

ourpt8010 stream tcp nowait root /usr/local/bin/socket socket  192.168.11.42 80

 

 

 

перестартуем InetD по kill -1

 

Проверяем работоспособность.



Используются технологии uCoz