mac/Linux SSH免密連接

解決每次訪問服務器或者git提交需要輸入服務器用戶密碼的繁瑣過程

正常操作

打開終端,在本機生成ssh密鑰

ssh-keygen

顯示如下

Generating public/private rsa key pair.
Enter file in which to save the key (/Users/yourname/.ssh/id_rsa):

此時默認存放在括號中位置,直接回車可以存放在默認位置。如果你有多種類型ssh連接比如工作、私人,你也可以定義在自己想要的位置及名稱,比如我輸入了 /Users/yourname/.ssh/id_rsa_test.接下來兩個可以定義密碼,我選擇默認回車不使用密碼,再次回車確認。此時會在.ssh文件夾下生成id_rsa_test以及id_rsa_test.pub

接下來將公鑰id_rsa_test.pub中的全部複製到服務器~/.ssh中的authorized_keys中,沒有的話自己創建

方法一

ssh-copy-id -i ~/.ssh/id_rsa_test.pub name@IP

方法二

直接複製id_rsa_test.pub中的內容,進入服務器中粘貼即可

兩種方法最後無論如何都要進入服務器

將authorized_keys權限設置爲600 .ssh權限設置爲700

chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh

最後一步在本機.ssh文件夾中新建config文件

Host Test #你的服務器別名
  HostName 115.115.115.115 #你的服務器ip
  User test 你的服務器用戶名
  IdentityFile ~/.ssh/id_rsa_test #你的私鑰

現在嘗試ssh test 成功

曾經配置過的不能免密登陸了

此時無法ssh到服務器 此時使用剛纔的ssh-copy-id name@IP命令會報類似以下錯誤

/usr/bin/ssh-copy-id: WARNING: All keys were skipped because they already exist on the remote system.

我們此時刪除主機上的authorized_keys,並在重新創建新的key

重複創建時的操作

mac在finder中查看隱藏文件方法

正常在終端中查看隱藏文件可以使用

ls -la

但是如果想在Finder中查看隱藏文件需要如下命令

defaults write com.apple.finder AppleShowAllFiles -boolean true;killall Finder

不需要查看隱藏文件功能時將true變爲false即可

defaults write com.apple.finder AppleShowAllFiles -boolean false;killall Finder

文章同時發佈在我的私人博客www.wakli.com上面

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章