Добрый день.
У меня возникла необходимость в перенаправлении портов,
а именно открыть доступ внешним клиентам на сервер Citrix который расположен в локальной сети с ip 192.168.0.9 и работающий на 1494 порту. Как это сделать? Ниже привожу конфигурационные файлы FreeBSD 5.5
Собрал ядро с включенными в него функциями:
.....
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=1000
options IPFIREWALL_FORWARD
options IPDIVERT
.....далее добавил необходимые записи в rc.conf:
#cat /etc/rc.conf
.....
defaultrouter="xxx.yyy.zzz.177"
font8x14="cp866-8x14"
font8x16="cp866b-8x16"
font8x8="cp866-8x8"
gateway_enable="YES"
hostname="bsd.office.ru"
ifconfig_rl0="inet 192.168.0.100 netmask 255.255.255.0"
ifconfig_rl1="inet xxx.yyy.zzz.180 netmask 255.255.255.248"
inetd_enable="YES"
keymap="ru.koi8-r"
mousechar_start="3"
scrnmap="koi8-r2cp866"
sshd_enable="YES"
usbd_enable="YES"
firewall_enable="YES"
firewall_script="/etc/ipfw.firewall"
natd_enable="YES"
natd_interface="rl1"
natd_flags="-f /etc/natd.conf"
.....создал файл ipfw.firewall
#cat /etc/ipfw.firewall#!/bin/sh
FwCMD="/sbin/ipfw -q"
LanOut="rl1"
LanIn="rl0"
IpOut="xxx.yyy.zzz.180"
IpIn="192.168.0.100"
NetMask="24"
NetIn="192.168.0.0"${FwCMD} add allow ip from any to any via lo0
${FwCMD} add allow ICMP from any to any
${FwCMD} add allow tcp from any 21 to any
${FwCMD} add allow tcp from any to any 21
${FwCMD} add allow tcp from any 20 to any
${FwCMD} add allow tcp from any to any 20${FwCMD} add allow all from any to any via ${LanIn}
${FwCMD} add allow tcp from any to ${IpOut} 22 in via ${LanOut} setup
${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}${FwCMD} add allow tcp from any 80 to any
${FwCMD} add allow tcp from any to any 80${FwCMD} add allow udp from any 53 to any
${FwCMD} add allow udp from any to any 53${FwCMD} add allow tcp from any 443 to any
${FwCMD} add allow tcp from any to any 443${FwCMD} add allow tcp from any 4899 to any
${FwCMD} add allow tcp from any to any 4899${FwCMD} add allow tcp from any 1494 to any
${FwCMD} add allow tcp from any to any 1494${FwCMD} add allow tcp from any 21 to any
${FwCMD} add allow tcp from any to any 21
${FwCMD} add allow tcp from any 20 to any
${FwCMD} add allow tcp from any to any 20Потом создал фаил natd.conf
#cat /etc/natd.confredirect_port tcp 192.168.0.105:4899 4899
redirect_port tcp 192.168.0.9:1494 1494Подскажите пожалуста что делаю не так? Может кто сталкивался с этой проблемой. Очень надо, надежда только на вас!!!
попробуй в натд
redirect_port tcp 192.168.0.9:1494 _реальныйИП_:1494>Добрый день.
>У меня возникла необходимость в перенаправлении портов,
>а именно открыть доступ внешним клиентам на сервер Citrix который расположен в
>локальной сети с ip 192.168.0.9 и работающий на 1494 порту. Как
>это сделать? Ниже привожу конфигурационные файлы FreeBSD 5.5
>Собрал ядро с включенными в него функциями:
>.....
>options IPFIREWALL
>options IPFIREWALL_VERBOSE
>options IPFIREWALL_VERBOSE_LIMIT=1000
>options IPFIREWALL_FORWARD
>options IPDIVERT
>.....
>
>далее добавил необходимые записи в rc.conf:
>#cat /etc/rc.conf
>.....
>defaultrouter="xxx.yyy.zzz.177"
>font8x14="cp866-8x14"
>font8x16="cp866b-8x16"
>font8x8="cp866-8x8"
>gateway_enable="YES"
>hostname="bsd.office.ru"
>ifconfig_rl0="inet 192.168.0.100 netmask 255.255.255.0"
>ifconfig_rl1="inet xxx.yyy.zzz.180 netmask 255.255.255.248"
>inetd_enable="YES"
>keymap="ru.koi8-r"
>mousechar_start="3"
>scrnmap="koi8-r2cp866"
>sshd_enable="YES"
>usbd_enable="YES"
>firewall_enable="YES"
>firewall_script="/etc/ipfw.firewall"
>natd_enable="YES"
>natd_interface="rl1"
>natd_flags="-f /etc/natd.conf"
>.....
>
>создал файл ipfw.firewall
>#cat /etc/ipfw.firewall
>
>#!/bin/sh
>
>FwCMD="/sbin/ipfw -q"
>
>LanOut="rl1"
>LanIn="rl0"
>IpOut="xxx.yyy.zzz.180"
>IpIn="192.168.0.100"
>NetMask="24"
>NetIn="192.168.0.0"
>
>${FwCMD} add allow ip from any to any via lo0
>
>${FwCMD} add allow ICMP from any to any
>
>${FwCMD} add allow tcp from any 21 to any
>${FwCMD} add allow tcp from any to any 21
>${FwCMD} add allow tcp from any 20 to any
>${FwCMD} add allow tcp from any to any 20
>
>${FwCMD} add allow all from any to any via ${LanIn}
>
>${FwCMD} add allow tcp from any to ${IpOut} 22 in via ${LanOut}
>setup
>
>${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}
>
>${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
>
>
>${FwCMD} add allow tcp from any 80 to any
>${FwCMD} add allow tcp from any to any 80
>
>${FwCMD} add allow udp from any 53 to any
>${FwCMD} add allow udp from any to any 53
>
>${FwCMD} add allow tcp from any 443 to any
>${FwCMD} add allow tcp from any to any 443
>
>${FwCMD} add allow tcp from any 4899 to any
>${FwCMD} add allow tcp from any to any 4899
>
>${FwCMD} add allow tcp from any 1494 to any
>${FwCMD} add allow tcp from any to any 1494
>
>${FwCMD} add allow tcp from any 21 to any
>${FwCMD} add allow tcp from any to any 21
>${FwCMD} add allow tcp from any 20 to any
>${FwCMD} add allow tcp from any to any 20
>
>Потом создал фаил natd.conf
>#cat /etc/natd.conf
>
>redirect_port tcp 192.168.0.105:4899 4899
>redirect_port tcp 192.168.0.9:1494 1494
>
>Подскажите пожалуста что делаю не так? Может кто сталкивался с этой проблемой.
>Очень надо, надежда только на вас!!!
/usr/ports/net/redir ?
Можно проще:
В inetd.conf добавить:source-port stream tcp nowait root /usr/local/bin/socket socket dest-ip dest-port
Не забыть поменять source-port, dest-ip, dest-oprt и, почему-то (без этого не пахаетъ!), добавить source-port и dest-port в /etc/services.
Разумеется, перезапустить inetd.
Да, сокет ставить вот из этого порта: /usr/ports/sysutils/socket.
Проблема уже решина.
И была очень бональной: вот на этой машине 192.168.0.9 не был прописан шлюз по умолчанию указывающий на freebsd!!!