SSH使用私鑰無密碼登入遠端伺服器

2021-07-05 21:35:56 字數 1574 閱讀 4571

ssh無密碼登入要使用公鑰與私鑰。linux下可以用用ssh-keygen生成公鑰/私鑰對,下面我以debian為例。有機器a(192.168.1.155),b(192.168.1.181)。現想a通過ssh免密碼登入到b。1.在a機下生成公鑰/私鑰對。

[chenlb@a ~]$ ssh-keygen -t rsa

後面可加-p表示密碼,-p '' (-p後面兩個單引號)就表示空密碼,也可以不用-p引數,這樣就要三車回車,用-p就一次回車。

它在/home/chenlb下生成.ssh目錄,.ssh下有id_rsa和id_rsa.pub。

2.把a機下的id_rsa.pub複製到b機下,在b機的.ssh/authorized_keys檔案裡,用scp複製(windows下可用圖形化的winscp軟體)。

[chenlb@a ~]$ scp .ssh/id_rsa.pub [email protected]:/home/chenlb/id_rsa.pub 

[email protected]'s password:

由於還沒有免密碼登入的,所以要輸入密碼。

3.b機把從a機複製的id_rsa.pub新增到.ssh/authorzied_keys檔案裡。

[chenlb@b ~]$ mkdir .ssh

[chenlb@b ~]$ cat id_rsa.pub >> .ssh/authorized_keys

[chenlb@b ~]$ chmod 600 .ssh/authorized_keys

authorized_keys的許可權要是600。

4.a機登入b機。

[chenlb@a ~]$sudo ssh-agent bash --login -i            //如果出現could not open a connection to your authentication agent,需開啟ssh-agent服務

[chenlb@a ~]$ ssh-add  id_rsa

[chenlb@a ~]$ ssh 192.168.1.181

the authenticity of host '192.168.1.181 (192.168.1.181)' can't be established.

rsa key fingerprint is 00:a6:a8:87:eb:c7:40:10:39:cc:a0:eb:50:d9:6a:5b.

are you sure you want to continue connecting (yes/no)? yes

warning: permanently added '192.168.1.181' (rsa) to the list of known hosts.

last login: thu jul  3 09:53:18 2008 from chenlb

第一次登入是時要你輸入yes。

現在a機可以無密碼登入b機了。

小結:登入的機子(a)使用私鑰,被登入的機子(b)使用公鑰。這個公鑰/私鑰對在登入主機(a)產生。上面是用rsa演算法的公鑰/私鑰對,當然也可以用dsa(對應的檔案是id_dsa,id_dsa.pub)

想讓a,b機無密碼互登入,那b機以上面同樣的方式配置即可。

使用ssh無密碼登入

使用ssh無密碼登入 ssh 是乙個專為遠端登入會話和其他網路服務提供安全性的協議。預設狀態下ssh鏈結是需要密碼認證的,可以通過新增系統認證 即公鑰 私鑰 的修改,修改後系統間切換可以避免密碼輸入和ssh認證。以下將建立過程簡單介紹下。1.使用ssh keygen建立公匙 私匙對 ssh keyg...

使用ssh無密碼登入

使用ssh無密碼登入 ssh 是乙個專為遠端登入會話和其他網路服務提供安全性的協議。預設狀態下ssh鏈結是需要密碼認證的,可以通過新增系統認證 即公鑰 私鑰 的修改,修改後系統間切換可以避免密碼輸入和ssh認證。以下將建立過程簡單介紹下。1.使用ssh keygen建立公匙 私匙對 ssh keyg...

ssh無密碼登入

若想登入對方主機,而不需要輸入密碼,操作如下 首先在自己主機上執行 ssh keygen t rsa 三次回車 在 ssh生成公私鑰 id rsa.pub id rsa 將id rsa.pub拷貝到對方的 ssh中 記得重新命名,如my.pub 在對方的.ssh中新建乙個authosized key...