我在一台机器上安装了 Squid 代理。我尝试在另一台主机之间进行 FTP 传输。
在 squid.conf 文件中,我给出了 http_port 3128、http_access local allow、FTP allow 等。在 Mozilla 浏览器设置、http 代理选项中,我提供了本地 IP 和端口 3128。我的主机有 2 个网络接口。eth0
= 192.168.14.168,eth1= 192.168.14.169。eth0
是默认路由。
Mozilla http 代理是 192.168.14.168,端口 3128。iptables 设置,
iptables -t nat -A PREROUTING -i eth0 -s ! 192.168.14.168 -p tcp --dport 80 -j DNAT --to 192.168.14.168:3128
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/16 -d squid-box -j SNAT --to 192.168.14.168
但是当我通过 FTP 连接到远程主机 (192.168.14.170) 时,总是会建立连接。如果我停止 squid 代理,那么远程主机 FTP 也会在浏览器中运行。如果所有流量都通过 squid 进行,那么一旦我停止 squid,FTP 就不应该在 Mozill 中连接到远程主机,但这种情况确实发生了。因此,流量不会通过 squid。但是,我设置了 3128,如http_port
中所示squid.conf
。
我的设置问题是什么?请给我建议。
感谢并问候,Kumarraj
答案1
Ftp 不使用端口 80。端口 80 用于 http。
如果处于被动模式,Ftp 将使用端口 21 和 20;如果处于主动模式,则使用端口 21 和随机端口。
您能给我们提供您的网络拓扑吗?