要在Ubuntu上使用SFTP和密鑰登錄,請按照以下步驟操作:
生成SSH密鑰對(如果尚未生成): 在本地計算機上打開終端,然后輸入以下命令以生成SSH密鑰對:
ssh-keygen -t rsa -b 2048
按照提示操作,你可以選擇自定義密鑰的存儲位置和設置密碼短語。完成后,你將在~/.ssh
目錄下找到id_rsa
(私鑰)和id_rsa.pub
(公鑰)文件。
將公鑰復制到遠程服務器:
使用以下命令將公鑰復制到遠程服務器的~/.ssh/authorized_keys
文件中:
ssh-copy-id user@remote_host
其中,user
是遠程服務器上的用戶名,remote_host
是遠程服務器的IP地址或域名。按照提示操作,可能需要輸入遠程服務器的用戶密碼。
如果無法使用ssh-copy-id
命令,你可以手動將公鑰復制到遠程服務器:
~/.ssh/id_rsa.pub
文件,復制其內容。~/.ssh
目錄(如果尚不存在)并設置正確的權限:mkdir -p ~/.ssh
chmod 700 ~/.ssh
~/.ssh/authorized_keys
文件,并將剛才復制的公鑰內容粘貼到該文件中:echo "your_public_key" >> ~/.ssh/authorized_keys
其中,your_public_key
是你剛才復制的公鑰內容。authorized_keys
文件的權限:chmod 600 ~/.ssh/authorized_keys
使用SFTP和密鑰登錄: 在本地計算機的終端中,使用以下命令通過SFTP和密鑰登錄到遠程服務器:
sftp -i /path/to/your_private_key user@remote_host
其中,/path/to/your_private_key
是你的私鑰文件(例如~/.ssh/id_rsa
)的路徑,user
是遠程服務器上的用戶名,remote_host
是遠程服務器的IP地址或域名。
現在,你應該已經成功地使用SFTP和密鑰登錄到了遠程服務器。在此會話中進行的任何文件傳輸都將使用密鑰認證,無需輸入密碼。