Страница 1 из 1

NAT+divert

Добавлено: 2010-02-05 21:32:39
Spook1680
Профи подскажите где заковыка ничего не понимаю уж)))
ФРЯха 7.2
пашет squid + sams+rejik
почта и ася идут через натд
но все это работает только если
/usr/local/etc/rc.firewall

Код: Выделить всё

#!/bin/sh
fwcmd="/sbin/ipfw -q"
ournet='192.168.21.0/24'
uprefix='192.168.21'
ifout='sis0'
ifuser='rl0'
ports=pop3,ftp
vse=192.168.21.2
vip2=192.168.21.3
vip=192.168.21.4,192.168.21.5
allowedports="22,25,53,110,143"
natusers="192.168.21.2,192.168.21.3,192.168.21.4"

icq_users="192.168.21.2,192.168.21.3"
msn_users="192.168.21.2,192.168.21.3"
icq_port="5190,5180,5181"
msn_port="1863,443"
jabber="5222,5223,7777"

allowed_nets="77.108.98.0/24"

ipfw add 500 allow tcp from any to me 7000
ipfw add 50 divert natd all from ${natusers} to any ${allowedports},${jabber},${icq_port},${msn_port} out via sis0
ipfw add 51 divert natd all from ${icq_users} to any ${icq_port} out via sis0
ipfw add 52 divert natd all from ${msn_users} to any ${msn_port} out via sis0
ipfw add 53 divert natd icmp from ${natusers} to any out via sis0
ipfw add 54 divert natd all from ${natusers} to any ftp,1024-65535 out via sis0
ipfw add 60 divert natd all from any to 77.108.98.213 in via sis0
ipfw add 200 divert natd all from any to any via sis0
ipfw add 1300 allow tcp from any to 77.108.98.213 7000 via sis0
ipfw add 1000 pass tcp from 77.108.98.213 7000 to any via sis0
ipfw add 1000 pass tcp from any to 77.108.98.213 7000 via sis0
rc.conf

Код: Выделить всё

# Enable the firewall
#pf_rules="/etc/pf.conf"
#pf_rules_enable="YES"
#pf_enable="YES"
#pflog_logfile="/var/log/pf.log"
#pf_flags=""




# Enable ipfw and open it by default since we have PF
firewall_enable="YES"
firewall_login="YES"
firewall_type="open"
firewall_script="/usr/local/etc/rc.firewall"
#firewall_type="/etc/rc.firewall"


snddetect_enable="YES"
mixer_enable="YES"
bsdstats_enable="YES"
hostname="pcbsd"
ifconfig_rl0="inet 192.168.21.1 netmask 255.255.255.0"
ifconfig_sis0="inet 77.108.98.213 netmask 255.255.255.248"
defaultrouter="77.108.98.209"
natd_enable="YES"
natd_interface="sis0"
natd_flags="-f /etc/natd.conf"
#natd_flags=" -m -s -u -punch_fw 5000:5200"
gateway_enable="YES"
apache_enable="YES"
squid_enable="YES"
mysql_enable="YES"
sams_enable="YES"
named_enable="YES"
Стоит только начать редактировать фай /usr/local/etc/rc.firewall
и пытаться применить настройки то в итоги получаю, что почта и ася отваливаются а squid продолжает работать. Пользователи в инет входят по логину и паролю.
Где проблема, нипонимаю, уже 2 неделю. :cry:
Нужно перенаправить порт с серваки 7000 если на него стучаться из инета на машину 192.168.21.101:7000 но правило не срабатывает.
операционка PCBSD - у фряхи это 7.2 релиз.
в ядре прописано что
options IPFIREWALL
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT

Re: NAT+divert

Добавлено: 2010-02-06 10:29:02
reLax
Стоит только начать редактировать фай /usr/local/etc/rc.firewall
и пытаться применить настройки то в итоги получаю, что почта и ася отваливаются а squid продолжает работать. Пользователи в инет входят по логину и паролю.
Где проблема, нипонимаю, уже 2 неделю. :cry:
А это что ?

Код: Выделить всё

fwcmd="/sbin/ipfw -q"
достаточно в начале применить ${fwcmd} -q flush, а использовать все-таки fwcmd="/sbin/ipfw"

А насчет редиректа, когда только вышел 7-й релиз у меня divert так и не сработал по старым правилам, я на это забил сразу и не вникал - использовал в ту пору диковинный Kernel NAT ))