如何在jftp脚本中建立主动连接?被动模式及-a选项无效问题
如何在jftp脚本中建立主动连接?
我之前也碰到过jftp默认走被动模式的问题,尝试-a选项没效果的话,可以试试下面这几个可行方案:
先确认jftp版本的正确参数:不同版本的jftp参数可能存在差异,先执行
jftp --help或者jftp -h查看主动模式对应的选项。有些版本里主动模式的长选项是--active,而短选项-a可能被分配给了ASCII传输模式这类其他功能,这时候你需要用完整的-active选项来指定主动连接。调整命令格式:如果确认
-active是正确选项,你的命令应该改成这样:jftp list -active -port XXX %USER% %PASSWORD% %SOURCE%记得把
XXX替换成实际的FTP端口号,通常默认是21,如果你的服务器用了自定义端口就填对应数值。通过配置文件全局设置主动模式:如果不想每次命令都手动加选项,可以修改jftp的配置文件。找到用户目录下的
~/.jftp/jftp.conf(没有的话就新建一个),添加一行:ftp.active.mode=true保存后再执行你的
jftp list命令,就会默认使用主动模式了。排查防火墙/网络限制:主动模式需要FTP服务器主动连接你的客户端端口(通常是20端口,或是客户端指定的端口范围),所以要确保你的客户端防火墙没有拦截入站连接请求,同时服务器端也允许主动模式的端口通信。这也是很多时候选项看似生效但连接失败的常见原因。
内容的提问来源于stack exchange,提问作者Jignesh Rawal
相关产品推荐
相关产品推荐

