SSH(Secure Shell)是一種加密協議,用於連接遠程設備。 默認情況下,它工作在 TCP 端口 22。使用 SSH 連接遠程服務器有兩種方法,一種是使用密碼驗證,另一種方法是使用公鑰進行驗證。 在本教程中,您將學習如何在 CentOS8 中生成 SSH 密鑰並通過 SSH (SCP) 複製文件而無需輸入密碼。
生成 SSH 密鑰
在生成 SSH 密鑰之前。 首先,驗證是否安裝了SSH。 要進行驗證,請打開終端並鍵入以下命令。
# ssh –V
驗證SSH包後。 現在我將使用以下命令生成 SSH 密鑰。
# ssh-keygen
為了加強安全性,您可以根據需要提及加密算法,如下所示。
# ssh-keygen –t rsa # ssh-keygen –t rsa –b 4096
輸入上述命令後,應出現以下輸出。
要將文件保存在建議的目錄中,請按 進入.
接下來,它會提示您輸入密碼,將其留空,然後按 Enter。 應出現以下輸出。
SSH 密鑰生成成功。 您可以通過使用以下命令查看您的 SSH 密鑰來驗證它。
此命令將打印您的 SSH 密鑰。
將 SSH 複製到遠程端,使用以下命令。
# ssh-copy-id –i [email protected]
如果需要雙向通信,請在遠程端重複上述所有過程。
無密碼複製文件:
使用以下命令複製遠程端的文件。
# scp 文件.txt [email protected]:/tmp/
它會將您的文本文件複製到遠程服務器,為了驗證,請轉到遠程端並驗證您的文件是否已被複製。
SSH 配置
有時您需要要求在遠程端配置 SSH 以進行身份驗證。 在這種情況下,啟用 SSH 身份驗證密鑰,為此打開 /etc/ssh/sshd_config,並啟用或添加以下行。
RSAAuthentication 是 PubkeyAuthentication 是
Save 配置文件並使用以下命令重新啟動服務。
# systemctl 重啟 sshd
結論
在本教程中,我們學習瞭如何在 CentOS8 中生成 SSH 身份驗證密鑰並通過 SSH 複製文件,而無需輸入密碼。 希望本教程能幫助你理解SSH密鑰生成,並在遠程端複製文件。