1.主動訪問的機器需要創建私鑰和公鑰 (client)
#cd ~
#mkdir .ssh
#chmod 700 .ssh
#cd .ssh
#ssh-keygen -t rsa //一路回車,各種提示按默認不要改
#ls -la
可以看到兩個密鑰文件:id_rsa(私鑰) id_rsa.pub(公鑰), 保證文件夾的權限正確否則服務無效
2.被訪問的機器配置(server)
#cd ~ #mkdir .ssh #chmod 700 .ssh #cd .ssh #touch authorized_keys #chmod 600 authorized_keys 將 id_rsa.pub(公鑰) 里的內容復制到 authorized_keys 文件中,保證文件夾的權限正確否則服務無效
3. 可能出現的問題和注意事項
3.1 需要關閉 SELinux 服務
# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: enforcing Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 28 如果要臨時關閉,可以執行,無效重啟服務器 # setenforce 0
Current mode: permissive
發生變化的地方紅色字體標注
如果要永久關閉,需要重新啟動服務器
# vi /etc/selinux/config
SELINUX=disabled
3.2 修改vi /etc/ssh/sshd_config 文件
#vi /etc/ssh/sshd_config
StrictModes no
修改為no,默認為yes.如果不修改用key登陸是出現server refused our key
(如果StrictModes為yes必需保證存放公鑰的文件夾的擁有與登陸用戶名是相同的.“StrictModes”設置ssh在接收登錄請求之前是否檢查用戶家目錄和rhosts文件的權限和所有權。
這通常是必要的,因為新手經常會把自己的目錄和文件設成任何人都有寫權限。)
MaxAuthTries 1
錯誤提示: Too many authentication failures
默認 1,用戶輸入密碼錯誤的次數,如果輸入密碼錯誤系統將自動鎖定N分鍾才能解鎖重新登錄