如何使用代理访问终端中的 FTP 服务器?

如何使用代理访问终端中的 FTP 服务器?

我的电脑上安装了 Ubuntu 16.04。我的网络需要 http 代理才能访问互联网。

说代理是“xxx.xx.xx.xx“ 并且端口是 “8080“。

我为 http、https 和 ftp 设置了系统代理。我可以通过终端访问互联网。但我只能在 Web 浏览器中访问 FTP 服务器,而不能在终端中访问。

当我尝试访问 FTP 服务器时,我得到:

user@hostname:~$ ftp ftp.example.org
ftp: connect to address 213.138.116.78: Connection refused
Trying 2001:41c8:112:8300::15:0...
ftp: connect: Network is unreachable
ftp> 

它与 VPN 一起工作。

任何帮助都将受到赞赏。

答案1

安装 lftp。它有一个 ftp 代理环境变量,您可以将其设置为从命令行通过代理进行连接。 lftp 手册页

例子:

user@yourmachine:~$ sudo apt-get install lftp

[...]

user@yourmachine:~$ lftp
lftp :~> set ftp:proxy http://proxyuser:proxypass@yourproxyIPorHOSTNAME:port 
lftp :~> open ftp.example.com 
lftp :~> USER ftpUSER
password: ftpPASS

答案2

  1. 在环境中设置 ftp_proxy

    export ftp_proxy="http://xxx.xx.xx.xx:8080"
    
  2. 此后当您使用 ftp 命令时,它会自动添加代理服务器。

    ftp ftp.example.org
    
  3. 如果不再需要代理。

    unset ftp_proxy
    

相关内容