Уважаемые, помогите разобраться!Проблема простая и в то же время сложная: Надо тупо пробросить соединение через гейт во внутреннюю сетку по 25 порту, на почтарь который стоит в локалке. Как это сделать я уже себе голову сломал.
Долго и упорно лазил по этому сайту. Инфы - ПОЛНО! А толку-ноль :-((((
имеем:
FreeBSD 4.7
Собрана с IPFW.
-----------------------------------
++ rc.conf
-----------------------------------
hostname="XXXXX"
gateway_enable="YES"
network_interfaces="lo0 rl0 rl1"
ifconfig_lo0="inet 127.0.0.1"
ifconfig_rl1="inet 10.0.0.1 netmask 255.255.255.0"
ifconfig_rl1_alias0="inet 10.0.1.1 netmask 255.255.255.255"
ifconfig_rl0="inet XX.XX.XXX.XXX netmask 255.255.255.128"
defaultrouter="YY.YY.YYY.YYY"
sshd_enable="NONE"
sendmail_enable="NONE"
portmap_enable="YES"
inetd_enable="YES"
keyrate="fast"
keymap="ru.koi8-r"
# keychange="61 ^[[K"
scrnmap="koi8-r2cp866"
font8x16="cp866-8x16"
font8x14="cp866-8x14"
font8x8="cp866-8x8"
firewall_enable="YES"
firewall_script="/usr/home/rc.firewall"
firewall_type="close"
firewall_logging="YES"
natd_enable="YES"
natd_interface="rl0"
natd_flags="-f /etc/natd.conf"
----------------------------------------------------------------------
++natd.conf
-----------------------------------
verbose no
log no
same_ports yes
use_sockets yes
redirect_port tcp 10.0.0.6:25 25
----------------------------------------------------------------------
rc.firewall
-----------------------------------
#!/bin/sh
ipfw="/sbin/ipfw -q"
ournet="10.0.0.0/24"
uprefix="10.0.0"
ifout="rl0"
ifuser="rl1"
${ipfw} flush
${ipfw} add 10 divert natd tcp from any 25 to any
${ipfw} add 20 divert natd tcp from any to any 25
${ipfw} add 100 divert natd all from any to any via ${ifout}
${ipfw} add 105 allow all from any to any via ${ifout}
${ipfw} add 110 allow all from me to any via ${ifout}
${ipfw} add 111 allow all from any to me via ${ifout}
${ipfw} add 120 allow all from any to any via ${ifuser}
-----------------------------------Знающие люди, подскажите ... где? ...в каком месте я накосячил?
наверняка какая нибудь мелочь забыта?????Заранее спасибо
я прекрасно понимаю что этот вопрос в форуме обсуждался миллион раз, и я учел все (как мне кажеться) нюансы, но все таки все равно требуется помощь...
>я прекрасно понимаю что этот вопрос в форуме обсуждался миллион раз, и
>я учел все (как мне кажеться) нюансы, но все таки все
>равно требуется помощь...# natd -alias_address Ваш.Реальный.IP.Адрес -redirect_port tcp 10.0.0.6:25 25
# ipfw add 1 divert natd tcp from any to me 25 in recv rl0
# ipfw add 1 divert natd tcp from 10.0.0.6 25 to any out xmit rl0
не знаю что я сделал неправильно но мне это к сожалению не помогает.в natd.conf добавил:
same_ports yes
use_sockets yes
alias_address rl0
redirect_port tcp 10.0.0.6:25 25в rc.firewall изменил
#!/bin/sh
ipfw="/sbin/ipfw -q"
ournet="10.0.0.0/24"
uprefix="10.0.0"
ifout="rl0"
ifuser="rl1"
${ipfw} flush
${ipfw} add 10 divert natd tcp from any to me 25 in recv rl0
^^^^^^^^^^^^^^^^^^^^^
${ipfw} add 20 divert natd tcp from 10.0.0.6 25 to any out xmit rl0
^^^^^^^^^^^^^^^^^^^^^
${ipfw} add 100 divert natd all from any to any via ${ifout}
${ipfw} add 105 allow all from any to any via ${ifout}
${ipfw} add 110 allow all from me to any via ${ifout}
${ipfw} add 111 allow all from any to me via ${ifout}
${ipfw} add 120 allow all from any to any via ${ifuser}При таком раскладе не то что телнет на 25 порт не ходит , да и еще локальная сеть в Инет не выходит :-((((
Может я ядро не так собрал?
вот опции firewall, задействованные мною в ядре
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_FORWARD
options IPDIVERT
options TCP_DROP_SYNFIN
options IPFW2
Поставь
/usr/ports/net/rinetd/
и забудь о проблеме