MacOS Sonoma14.2.1系统SSH免密登录
摘要:MacOS下免密登錄的一些注意事項。
系統環境
操作系統:macOS Sonoma 14.2.1
SSH免密登錄
ssh免密登錄的原理是在本機生成本機的ssh公鑰和私鑰,將公鑰上傳至待連接的主機,本機通過私鑰進行ssh連接實現免密登錄。
# ssh密鑰生成命令
ssh-keygen
# ssh上傳(復制)命令
# ssh-copy-id格式:ssh-copy-id -i 私鑰 遠程主機用戶名@遠程主機IP
# ssh-copy-id命令示例
ssh-copy-id -i ~/.ssh/id_liupp root@192.168.8.187
# ssh登錄
# 命令格式: ssh -i 私鑰 遠程主機用戶名@遠程主機IP
# ssh登錄示例:
ssh -i ~/.ssh/id_liupp root@192.168.8.187
關于這兩個命令的具體用法可以通過搜索引擎查詢.
# ssh免密連接命令
ssh root@IP
回車后仍然提示輸入密碼,通過搜索引擎查詢,得出的結果是mac系統下需要使用“ssh-add”命令將私鑰添加至ssh-agent高速緩存:
# ssh-add 命令格式
# ssh -add -K 私鑰
# 示例:
ssh -add -K ~/.ssh/id_liupp
但輸入后提示:
WARNING: The -K and -A flags are deprecated and have been replaced
by the --apple-use-keychain and --apple-load-keychain
flags, respectively. To suppress this warning, set the
environment variable APPLE_SSH_ADD_BEHAVIOR as described in
the ssh-add(1) manual page.
釋義為-K參數對于Mac來說已經過期,需要將“-K”參數換成“–apple-use-keychain”:
# ssh-add 命令格式
# ssh -add -K 私鑰
# 示例:
ssh-add --apple-use-keychain ~/.ssh/id_liupp
添加成功后再在終端執行 “ssh root@IP”即可實現免密登錄。
存在問題及解決方案
經過使用發現一個問題,即是在本機重啟后,免密登錄會失效,經查詢得知,ssh-add將私鑰添加到高速緩存,但緩存在重啟后會失效,需要每次重啟后重新添加,在mac下的解決方案是:
1.在“應用程序”中的找到“自動操作”應用(或CTRL+SPACE)搜索自動操作
2.打開后默認彈出選擇文件對話框,點擊“取消”,點擊啟動欄的自動操作圖標,“選取文稿類型”中選擇“應用程序”:
3.左側“資源庫”選擇“實用工具”,雙擊右側的“運行shell腳本”將ssh-add命令復制至運行腳本腳本中,點擊標題欄左側的“未命名”,起個名字(這里命名為add-ssh-key)并保存至指定位置。
4.打開“系統設置”,左側搜索欄搜索“登錄項”,在“登錄項”的“登錄時打開”中將保存的自動執行程序(add-ssh-key)添加進來.
5.重啟后驗證,至此配置完畢。
6.操作步驟圖示見下方:
總結
以上是生活随笔為你收集整理的MacOS Sonoma14.2.1系统SSH免密登录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 元梦之星枪械瞄准方法推荐
- 下一篇: 00后程序员,2023年终总结