原文地址:在這裏vim
第一步:在本機中建立祕鑰服務器
一、執行命令:ssh
ssh-keygen -t rsa -C "xx@qq.com"
(隨便編個字符串,通常用郵箱)編輯器
二、以後一路回車就行啦;會在~(home)目錄下中產生.ssh(隱藏)文件夾;
三、裏面有兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)文件
注意事項:
①在liunx環境下,要想複製公鑰或是私鑰,不要使用vim等編輯器打開文件來複制粘貼;
由於它會產生沒必要要的回車。
②應該使用cat把內容打印到終端上再來複制粘貼;.net
第二步:用 ssh-copy-id 把公鑰複製到遠程主機上日誌
ssh-copy-id zhangming@192.168.161.132
用這種方式拷貝使用的端口是Linux默認的22,若是你想指定端口,能夠使用:
ssh-copy-id -i /用戶名/.ssh/id_rsa.pub '-p 端口號 用戶名@106.75.52.44'code
ssh-copy-id -i /root/.ssh/id_rsa.pub '-p 22222 root@106.75.52.44'
這裏可能須要等一段時間,反正我是等了挺久的時間,而後顯示要你輸入密碼:
zhangming@106.75.52.44's password:
輸入完密碼後,顯示:blog
Now try logging into the machine, with "ssh '-p 22222 root@106.75.52.44'", and check in:
.ssh/authorized_keysip
to make sure we haven't added extra keys that you weren't expecting.
表示成功了!字符串
第三步: 遠程登入
[zhangming@localhost ~]$ ssh zhangming@192.168.161.134 Last login: Mon Oct 10 14:18:54 2016 from 192.168.161.135 ssh zhangming@123.59.44.56 -p 22222
注意
遇到的大坑:配置ssh免密碼登陸後,仍提示輸入密碼
解決方法:
首先咱們就要去查看系統的日誌文件
tail /var/log/secure -n 20
發現問題的所在:Authentication refused: bad ownership or modes for file
從字面上能夠看出是目錄的屬主和權限配置不當,查找資料得知:SSH不但願home目錄和~/.ssh目錄對組有寫權限,經過下面幾條命令改下
chmod g-w /home/zhangming chmod 700 /home/zhangming/.ssh chmod 600 /home/zhangming/.ssh/authorized_keys
而後咱們再去登陸,就能不用密碼進入了。
有木有很高興呀!