1. 程式人生 > >ubuntu16.04配置ssh免密碼登陸

ubuntu16.04配置ssh免密碼登陸

1、首先可以參考鳥哥的linux私房菜一書中關於配置ssh免密碼登入問題,會詳細瞭解ssh免密碼登入的原理。
2、接下來說配置步驟
(1)檢視本機的有關於ssh 的相關預設的配置,目錄是/etc/ssh/sshd_config,其中有關於免密碼登入時使用的預設的檔案的存放檔案
這裡寫圖片描述
預設是沒有使用的,更改為使用預設的名稱,也就是將註釋解除
(2)假設機器的設定如下
這裡寫圖片描述
test2要使用test賬號登入server主機
1>在test2生成公鑰和私鑰進行如下操作
這裡寫圖片描述
2>私鑰就存在test2的賬戶下,在預設的位置,將公鑰放在server的~/.ssh/目錄下。
使用scp命令上傳

scp ~/.ssh/id_rsa.pub 目的主機使用者@目的主機ip:~/.ssh/id_rsa.pub.test2

然後將公鑰放入authorized_keys資料夾中

cat ~/.ssh/id_rsa.pub.test2 >> authorized_keys

3>修改~/.ssh/目錄下的known_hosts檔案的許可權

sudo chmod 644 ~/.ssh/known_hosts

修改.ssh目錄的許可權

  sudo chmod 755 ~/.ssh

至此配置完成進行登入。
(3)登入的格式

ssh -p 埠號 使用者名稱@主機ip

-p引數指名登入的埠號,預設是22埠,可以不用-p說明
3、簡化登入設定
每次登入時命令太長不容易記憶,有兩種方法可以簡化。
(1)在shell中鍵入

alias 別名='ssh 使用者名稱@主機ip -p 埠號'

之後就是可以直接使用別名進行登入
(2)更改配置檔案
在~/.ssh/目錄下建立config資料夾,配置格式如下

Host 登入時別名
    HostName 主機名稱或者IP
    Port 埠號
    User 使用者名稱
eg:
Host test
    HostName linux.dmsai.tw
    Port 22
    User test

配置完成後,直接使用

ssh test

這樣可以免密碼登入成功。