操作步驟:
-
客戶端【Mac電腦】生成公私鑰:
ssh-keygen -t rsa (連續(xù)三次回車即可,無需要設(shè)置密碼)
-
連接服務(wù)端【iPhone手機】:
ssh root@服務(wù)端ip (也可以使用usb連接手機)
-
找到并進入服務(wù)端上的.ssh目錄:
cd ~/.ssh mkdir .ssh (若沒有踊跟,則創(chuàng)建文件目錄)
-
設(shè)置文件目錄的權(quán)限:
chmod 700 .ssh (必須將.ssh的權(quán)限設(shè)為700,或者755)
-
拷貝客戶端公鑰即id_rsa.pub到服務(wù)端目錄.ssh:
scp ~/.ssh/id_rsa.pub root@192.168.39.168:.ssh/id_rsa.pub 或 ssh-copy-id root@服務(wù)器地址 (此時需要輸入密碼alpine)
-
找到服務(wù)端.ssh目錄下的authorized_keys文件
touch authorized_keys (若沒有玛痊,則創(chuàng)建文件) chmod 600 authorized_keys (給600權(quán)限)
-
將公鑰內(nèi)容追加到authorized_keys文件:
cat id_rsa.pub >> authorized_keys (可通過`cat`命令查看)
原理
- 即使用公鑰登錄,所謂的公鑰登錄狂打,即前期登錄成功擂煞,原理如下:
- 客戶端【Mac電腦】將自己的公鑰發(fā)給遠程的服務(wù)端【iPhone手機】
- 服務(wù)端隨機生成一段字符串,發(fā)給客戶端
- 客戶端利用私鑰將手機發(fā)來的字符串加密
- 服務(wù)端利用公鑰解密字符串