題 使用Linux FTP用戶名和密碼登錄


用一行登錄FTP的命令是什麼?

ftp username:password@my.domain.com

說:

用戶名:密碼所需的密碼


18
2018-03-03 16:26


起源


使用 man ftp 找出,或者也許 ftp --help。別忘了 ftp 可能意味著不同的效用 - Basile Starynkevitch
ftp ftp://username:password@my.domain.com
您還應該記住,給定進程的命令行對系統上的所有其他用戶都是可見的。因此,將密碼作為命令行的一部分可能是一個嚴重的安全問題。
相關 - superuser.com/questions/937124/...。 - slm


答案:


ftp ftp://username:password@my.domain.com

你可以很容易地使用 ftp --help 雖然。


7
2018-03-03 16:38



顯示的命令產生:“名稱或服務未知”。 ftp -help與ftp:,//或者用戶名:password @沒有任何關係。 - C.W.Holeman II
您使用的是哪個版本的Linux?當我嘗試上面的語法時,我也得到“名稱或服務未知”。我正在使用CentOS 6。 - Tim Ludwinski
我也知道名字或服務 - Kevin Johnson
在ubuntu遠程服務器上對我不起作用 - user391339
我也找到了 ftp -help  無益 你建議的格式在ubuntu 16上對我不起作用。 - Henry


ftp -nv yourftpserver.com

然後 user your_username 要么 user anonymous


我發布了這個答案 ftp ftp://username:password@my.domain.com 對我不起作用。

Usage: { ftp | pftp } [-46pinegvtd] [hostname]
   -4: use IPv4 addresses only
   -6: use IPv6, nothing else
   -p: enable passive mode (default for pftp)
   -i: turn off prompting during mget
   -n: inhibit auto-login
   -e: disable readline support, if present
   -g: disable filename globbing
   -v: verbose mode
   -t: enable packet tracing [nonfunctional]
   -d: enable debugging

6
2018-05-28 21:35



這不是很有用,因為它需要交互式使用。我不妨輸入'ftp user @ yourserver'。 - smaudet


最好的選擇是使用 的.netrc 以及安全目的的gpg之類的東西。

我已經為此編寫了一個通用腳本,我可以稍後上傳,但它歸結為:

gpg -c .netrc

或者可選地在命令行和輸出目的地上使用密碼短語:

gpg --passphrase <secretphrase> -o .netrc.gpg -c .netrc

這裡沒有顯示,但你可以另外使用非對稱密鑰(如果你有它們設置)與gpg,以使這更加安全。

然後當您準備登錄時

gpg .netrc.gpg
# or
gpg --passphrase <secretphrase> -o .netrc .netrc.gpg
ftp yourservername
rm .netrc

一個例子.netrc:

machine google.com
login <username>
password <secretpassword>

我實際上將這些文件的本地哈希和原始副本保存在與我使用.netrc文件的計算機不同的計算機上,並驗證.netrc的哈希值以及我運行的腳本,但這是在上面和超出OP的原始問題。


1
2017-08-05 08:38





使用 NETRC。它比在命令行上輸入密碼更好。


0
2017-12-11 06:51



這個答案不值得一個負面評分(雖然它缺乏一個如何做的例子)。 - Peter Mortensen
我同意 - 然而沒有人改變過這種情況(我沒有對它進行過任何改變)。 - smaudet