我是靠谱客的博主 追寻小熊猫,最近开发中收集的这篇文章主要介绍sun.net.ftp.FtpClient踩坑FTP连接模式FTP主动模式FTP被动模式问题解决方法,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
sun.net.ftp.FtpClient 是一个FTP连接工具,比较坑的一点是该工具只能运行在FTP被动模式下。
FTP连接模式
FTP连接模式分为被动模式和主动模式。
FTP连接分为命令端口和数据端口。
FTP主动模式
命令端口号:21
数据端口号:20
FTP被动模式
命令端口号:21
数据端口号:1024-65535
问题
代码中使用了sun.net.ftp.FtpClient 连接工具实现文件同步到FTP服务器上,但是该连接工具只支持被动模式,客户服务器不允许放行这么多端口号。
解决方法
1、修改代码使用Apache提供的FTPClient工具,设置FTP连接方式为主动方式,防火墙放开20/21两个端口。
2、不修改代码,修改FTP配置,指定FTP被动模式传输端口范围。
(1)/etc/vsftpd.conf中添加如下配置
pasv_enable=YES
pasv_min_port=5000 (根据现场安全要求,自己填写)
pasv_max_port=6000(根据现场安全要求,自己填写)
(2)FTP服务器防火墙配置中放开相应的端口号
最后
以上就是追寻小熊猫为你收集整理的sun.net.ftp.FtpClient踩坑FTP连接模式FTP主动模式FTP被动模式问题解决方法的全部内容,希望文章能够帮你解决sun.net.ftp.FtpClient踩坑FTP连接模式FTP主动模式FTP被动模式问题解决方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复