и неразбирающийся в сабже
Дык, я так сразу и сказал. iptables -L -v -n --line-numbers сделать не могу, т. к. сейчас к этому компу нет доступа.
Вот фрагмент скрипта, устанавливающего правила для iptables.
int="eth2" # Внутренний интерфейс
ext="eth0" # Внешний интерфейс
intaddr="192.168.0.1"
extaddr="192.168.1.12"
localnet="192.168.0.0/24"
localports="1024:65535"
cmd="/sbin/iptables"
$cmd -P INPUT DROP
$cmd -P OUTPUT ACCEPT
$cmd -P FORWARD ACCEPT
$cmd -F INPUT
$cmd -F OUTPUT
$cmd -F FORWARD
$cmd -A INPUT -p icmp --icmp-type timestamp-request -j DROP
$cmd -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$cmd -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$cmd -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
$cmd -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
$cmd -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
$cmd -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP
$cmd -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
$cmd -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$cmd -A INPUT -i lo -j ACCEPT
$cmd -t nat -A POSTROUTING -o $ext -p icmp -j MASQUERADE
$cmd -A INPUT -p tcp --dport 21 -m state --state NEW -j ACCEPT
$cmd -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
$cmd -A INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT
# Раздаем инет для внутренней сети без прокси-сервера. Не надо так делать :-D
#$cmd -t nat -A POSTROUTING -s 192.168.0.0/24 -o $ext -j MASQUERADE
#------- END OF CONFIG -------#
Так что ему сказать, чтобы почту принимать-отправлять можно было?
Это:
iptables -t nat -A PREROUTING -p tcp --dport 25 -j MASQUERADE
iptables -t nat -A PREROUTING -p tcp --dport 110 -j MASQUERADE
будет работать?
Добавлено: 22 Апреля 2009, 14:31:01
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Этого как раз не надо. Нужен ограниченный доступ+кэширование