Linux系统中使用有状态防火墙实现FTP功能

  首先大家要认清楚一个概念,使用FTP是从http代理出去,还是由socks代理或firewall上打开一个口转发。从http代理出去的FTP,实际上使用的是http代理程序,象最常用的squid,是http/https代理,但是它也能代理ftp请求。当你打开浏览器登陆ftp站点时,使用的就是http代理程序来处理ftp的问题。而有些程序只能设置成socks或firewall代理,象Cuteftp,wu-ftp和dos下的FTP。此类的代理才是标准的FTP代理。

  本文假设大家对netfilter技术已经有了一定了解,介绍利用netfilter的有状态功能在inux2.4内核上实现FTP。

  系统环境:

  linux7.2,安装了iptable,squid,有两块网卡:

  eth0:x.x.x.x 接internet,

  eth1:192.168.0.1 接内网。

  firewall相关规则:
引用:
  ##Ismod the firewall modules *加载模块
  modprobe ip_tables
  insmod ip_conntrack
  insmod ip_conntrack_ftp
  insmod ip_nat_ftp