使用wget通过FTP下载目录,但不将密码作为参数传递

时间:2011-03-11 20:32:11

标签: security bash ftp passwords wget

当我没有SSH访问服务器时,我通常通过FTP下载内容,如下所示:

wget -r ftp://user:pass@server/path/to/dir

如何让我的密码更安全?我不喜欢密码在命令中,但是当我尝试这样的事情时:

wget -r ftp://user@server/path/to/dir

它不起作用。它给了我“登录不正确”。

2 个答案:

答案 0 :(得分:3)

您可以将您的凭据放在~/.wgetrc中,如下所示:

ftp_user = user
ftp_password = pass

根据您的需要,此配置文件也可以use a different location

  

初始化时,Wget将默认查找全局启动文件/ usr / local / etc / wgetrc(或者除了/ usr / local之外的某些前缀,如果没有安装Wget),并从那里读取命令,如果它存在。

     

然后它会查找用户的文件。如果设置了环境变量WGETRC,Wget将尝试加载该文件。如果做不到这一点,将不会再进一步​​尝试。

     

如果未设置WGETRC,Wget将尝试加载$ HOME / .wgetrc。

答案 1 :(得分:3)

这也可以解决问题:

wget -r --ask-password ftp://user@server/path/to/dir

ask_password = on/off也可以在~/.wgetrc中声明。