ssh無密碼登入要使用公鑰與私鑰。linux下可以用用ssh-keygen生成公鑰/私鑰對,下面我以centos為例。
有機器a(192.168.1.155),b(192.168.1.181)。現想a通過ssh免密碼登入到b。
首先以root賬戶登陸為例。
1.在a機下生成公鑰/私鑰對。
[root@a
~]# ssh
-keygen
-t rsa
-p ''
-p表示密碼,-p '' 就表示空密碼,也可以不用-p引數,這樣就要三車回車,用-p就一次回車。
該命令將在/root/.ssh目錄下面產生一對金鑰id_rsa和id_rsa.pub。
一般採用的ssh的rsa金鑰:
id_rsa
私鑰id_rsa.pub 公鑰
下述命令產生不同型別的金鑰
ssh-keygen -t dsa
ssh-keygen -t rsa
ssh-keygen -t rsa1
2.把a機下的/root/.ssh/id_rsa.pub 複製到b機的/root/.ssh/authorized_keys檔案裡,先要在b機上建立好 /root/.ssh 這個目錄,用scp複製。
[root@a
~]# scp /root/.ssh/[email protected]:/root/.ssh/authorized_keys
root@
192.168
.1.181
's password:
id_rsa.pub
100% 223
0.2kb/s
00:00
由於還沒有免密碼登入的,所以要輸入一次b機的root密碼。
3.authorized_keys的許可權要是600!!!
[root@b
~]# chmod
600/root/.ssh
/authorized_keys
4.a機登入b機。
[root@a
~]# ssh -lroot
192.168
.1.181
the authenticity of host
'192.168.1.181 (192.168.1.181)
'can
't be established.
rsa key fingerprint
is00
: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
309:
53:18 2008
from
root
[root@b
~]#
第一次登入是時要你輸入yes。
現在a機可以無密碼登入b機了。
小結:登入的機子可有私鑰,被登入的機子要有登入機子的公鑰。這個公鑰/私鑰對一般在私鑰宿主機產生。上面是用rsa演算法的公鑰/私鑰對,當然也可以用dsa(對應的檔案是id_dsa,id_dsa.pub)
想讓a,b機無密碼互登入,那b機以上面同樣的方式配置即可。
假設 a 為客戶機器,b為目標機;
要達到的目的:
a機器ssh登入b機器無需輸入密碼;
加密方式選 rsa|dsa均可以,預設dsa
做法:1、登入a機器
2、ssh-keygen -t [rsa|dsa],將會生成金鑰檔案和私鑰檔案id_rsa,id_rsa.pub或id_dsa,id_dsa.pub
3、將 .pub 檔案複製到b機器的 .ssh 目錄, 並 cat id_dsa.pub>> ~/.ssh/authorized_keys
4、大功告成,從a機器登入b機器的目標賬戶,不再需要密碼了;
ssh-keygen做密碼驗證可以使在向對方機器上ssh ,scp不用使用密碼.
具體方法如下:
ssh-keygen -t rsa
然後全部回車,採用預設值.
這樣生成了一對金鑰,存放在使用者目錄的~/.ssh下。
將公鑰考到對方機器的使用者目錄下,並拷到~/.ssh/authorized_keys中。
要保證.ssh和authorized_keys都只有使用者自己有寫許可權。否則驗證無效。(今天就是遇到這個問題,找了好久問題所在),其實仔細想想,這樣做是為了不會出現系統漏洞。
ssh無密碼登入
若想登入對方主機,而不需要輸入密碼,操作如下 首先在自己主機上執行 ssh keygen t rsa 三次回車 在 ssh生成公私鑰 id rsa.pub id rsa 將id rsa.pub拷貝到對方的 ssh中 記得重新命名,如my.pub 在對方的.ssh中新建乙個authosized key...
ssh 無密碼登入
今天在配置ssh登入的時候,遇到了一點問題 a.首先我建立了乙個使用者 useradd g hadoop m s bin bash hadoop b.進入hadoop主目錄,生成公鑰私鑰,但是發現沒有.ssh目錄,就手動生成.ssh目錄。c.進入 ssh 目錄下 ssh keygen t rsa,生...
SSH無密碼登入
a為本地主機 即用於控制其他主機的機器 b為遠端主機 即被控制的機器server 假如ip為172.24.253.2 a和b的系統都是linux 在a上的命令 ssh keygen t rsa 連續三次回車,即在本地生成了公鑰和私鑰,不設定密碼 ssh root 172.24.253.2 mkdir...