FTP动态部署
FTP动态部署
首先我们所熟系的ftp是分为两种模式的,一种为主动模式,一种为被动模式
主动模式
主动模式的意思是有我们的ftp服务端主动发起的对客户端的端口进行连接然后再传输数据
主动模式需要使用到的端口有21,20,故我们做需要做端口转换的话我们需要转换这两个端口就好了
DMZ主机:10.3.14.41(外网
FTP服务器:172.16.8.200(内网)
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 20 -j DNAT --to-destination 172.16.8.200:20
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 21 -j DNAT --to-destination 172.16.8.200:21
然后我们去进行测试,在这我们使用客户端去测试 首先我们需要将我们的客户端转换为主动ftp模式(windows默认是被动ftp)
首先打开IE
然后找到右上角的设置按钮
然后点击Internet选项
然后选择高级
然后找到这一项 把前面的√去掉即可
修改完后点击应用然后进行测试 测试成功
被动模式
被动模式的意思是由我们的客户端对ftp发起的连接,ftp服务器被动接受这个连接 然后开放一个随机端口用于和客户端之间互相之间传输数据
首先我们需要去修改一下我们vsftpd的配置文件,去添加下面几行
vi /etc/vsftpd.conf
pasv_enable=YES #开启ftp被动模式
pasv_address = 10.3.14.41 #被动ftp使用的IP地址 (若做了nat的话一定要写能够被客户端所访问的到的IP地址)
pasv_min_port = 40000 #被动模式下使用最小的随机端口
pasv_max_port = 40000 #被动模式下使用最大的随机端口
通过限制最小和最大端口从而来固定被动ftp的随机端口
然后下面我们只需要通过DNAT去转化这些端口
重要!!!!在这我们也需要去转换ftp的21端口 因为这个是我们ftp发送指令的端口
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 21 -j DNAT --to-destination 172.16.8.200:21
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40000 -j DNAT --to-destination 172.16.8.200:40000
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40001 -j DNAT --to-destination 172.16.8.200:40001
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40002 -j DNAT --to-destination 172.16.8.200:40002
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40003 -j DNAT --to-destination 172.16.8.200:40003
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40004 -j DNAT --to-destination 172.16.8.200:40004
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40005 -j DNAT --to-destination 172.16.8.200:40005
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40006 -j DNAT --to-destination 172.16.8.200:40006
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40007 -j DNAT --to-destination 172.16.8.200:40007
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40008 -j DNAT --to-destination 172.16.8.200:40008
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40009 -j DNAT --to-destination 172.16.8.200:40009
iptables -t nat -A PREROUTING -d 10.3.14.41 -p tcp --dport 40010 -j DNAT --to-destination 172.16.8.200:40010
然后将我们的客户端修改回ftp被动模式 然后再进行测试
测试结果成功