在CentOS系統中,使用SSH密鑰對進行SFTP登錄可以提供更安全的認證方式。以下是設置和使用SSH密鑰對進行SFTP登錄的步驟:
如果你還沒有SSH密鑰對,可以使用ssh-keygen
命令生成一個。
ssh-keygen -t rsa -b 4096
按照提示操作,通常會生成兩個文件:
~/.ssh/id_rsa
:私鑰~/.ssh/id_rsa.pub
:公鑰將生成的公鑰復制到遠程服務器的~/.ssh/authorized_keys
文件中。
你可以使用ssh-copy-id
命令來完成這個操作:
ssh-copy-id user@remote_host
其中,user
是遠程服務器的用戶名,remote_host
是遠程服務器的地址。
確保遠程服務器的SSH配置允許密鑰認證。編輯遠程服務器上的/etc/ssh/sshd_config
文件,確保以下配置項存在且未被注釋:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
然后重啟SSH服務:
sudo systemctl restart sshd
現在你可以使用SFTP通過密鑰登錄到遠程服務器了。
sftp user@remote_host
如果一切配置正確,你應該能夠直接登錄而無需輸入密碼。
為了更方便地使用SFTP,你可以在本地SSH配置文件~/.ssh/config
中添加一些配置。
Host remote_host
HostName remote_host
User user
IdentityFile ~/.ssh/id_rsa
這樣,你就可以直接使用sftp remote_host
來登錄了。
確保你的私鑰文件權限正確:
chmod 600 ~/.ssh/id_rsa
然后再次嘗試使用SFTP登錄:
sftp remote_host
如果一切正常,你應該能夠成功登錄并開始使用SFTP。
通過以上步驟,你就可以在CentOS系統上使用SSH密鑰對進行SFTP登錄了。