Имею: (linux, iptables)локальная сеть: 192.168.0.0/16
сервер локальной сети: 192.168.0.1
устройство для локальной сети: eth0
На этом узле работает прозрачный прокси- squid:3128.наружный адрес: 195.190.180.170
устройство для выхода наружу: eth1Необходимо локальному Windows-клиенту 192.168.0.9 предоставить доступ к ftp-узлу 111.222.333.444:121 (администратор этого узла организовал доступ на этот порт).
Что я сделал:
..
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
..
iptables -A INPUT --in-interface eth0 --protocol tcp --source 192.168.0.9 --dport 121 -j ACCEPT
iptables -A FORWARD --in-interface eth0 --protocol tcp --source 192.168.0.9 --dport 121 -j ACCEPT
iptables -A FORWARD --out-interface eth1 --protocol tcp --sport 121 --destination 192.168.0.9 -j ACCEPT
..Если клиент не указывает в своём Internet Explorer использование прокси, то доступ на 121 порт удалённого узла имеется, при указании использования прокси клиент получает сообщение,- доступ блокирован прокси сервером.
В конфиге squid.conf указано:
..
httpd_accel_host vitrual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
http_port 3128
..
acl SSL_ports port 443 563 # ssl
#acl SSL_ports port 4661 4662 4665 4672 # aMule
acl SSL_ports port 44777 7177 # svn
acl Safe_ports port 80 # http
acl Safe_ports port 81 83 84 85
acl Safe_ports port 21,121 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl SSL_ports port 443 5190 # icq- 443, 5190
acl Safe_ports port 443 5190 # icq- 443, 5190
#
acl CONNECT method CONNECT
..Верно ли я всё назначил?
Документацию по iptables читал, но чем больше читаю- тем больше сомнений в правильности принятого решения.
Спасибо.
бред у тебя. курить man iptables до посинения.forward - только позволяет пакетам с одного интерфеса на другой проходить.
смотринм на табицу нат и модули ip_nat_ftp, ip_conntrack_ftp
я на 100% уверен что для этого клиента сквид не нужен
>бред у тебя. курить man iptables до посинения.
>
>forward - только позволяет пакетам с одного интерфеса на другой проходить (если OS разрешено).
>
>смотринм на табицу нат и модули ip_nat_ftp, ip_conntrack_ftp
>
>я на 100% уверен что для этого клиента сквид не нужен
>>бред у тебя. курить man iptables до посинения.
>>
>>forward - только позволяет пакетам с одного интерфеса на другой проходить (если OS разрешено).
>>
>>смотринм на табицу нат и модули ip_nat_ftp, ip_conntrack_ftp
>>
>>я на 100% уверен что для этого клиента сквид не нуженЯ переделал к виду-
inp_cmd="--in-interface eth0 --protocol tcp --source 192.168.0.9 --dport 121"
#
$IPT_PREROUTING $inp_cmd -j REDIRECT --to-port 3128
$IPT_INPUT $inp_cmd -j ACCEPT
$IPT_FORWARD $inp_cmd -j ACCEPTА в squid.conf исправил строку-
acl Safe_ports port 21,121 # ftp
на строку-
acl Safe_ports port 21 121 # ftp
Быть может я опять не прав, но это работает.