小伙伴經常在運維的時候需要ssh到很多其他的服務器,但是又要每次輸入密碼,一兩臺還沒什么,多了就煩了。所以這里教大家如何直接ssh到其他機器而不用輸入密碼。
[root@jw ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): ——一路回車吧
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):?
Enter same passphrase again:?
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
54:77:79:fd:82:90:d7:c5:7f:5a:04:39:8f:e8:40:09 root@jw
The key's randomart p_w_picpath is:
+--[ RSA 2048]----+
| ? ? ? ?E..o..o*o|
| ? ? ? ? .=...= =|
| ? ? ? ?.. o o *o|
| ? ? ? . ?. o o *|
| ? ? ? ?S ?o ? +.|
| ? ? ? ? ? ?. . ?|
| ? ? ? ? ? ? ? ? |
| ? ? ? ? ? ? ? ? |
| ? ? ? ? ? ? ? ? |
+-----------------+
會在本機生成兩個文件,一個id_rsa.pub公鑰一個id_rsa私鑰
[root@jw ~]# cd .ssh/
[root@jw .ssh]# pwd
/root/.ssh
[root@jw .ssh]# ll
total 8
-rw-------. 1 root root 1675 Nov ?6 09:46 id_rsa
-rw-r--r--. 1 root root ?389 Nov ?6 09:46 id_rsa.pub
將公鑰拷貝到你需要連接的主機上,如192.168.3.2
[root@jw .ssh]# ssh-copy-id -i id_rsa.pub root@192.168.3.2
The authenticity of host '192.168.3.2 (192.168.3.2)' can't be established.
RSA key fingerprint is e4:fa:45:0d:a1:e5:77:0d:be:41:2f:d9:f3:2f:56:f1.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.3.2' (RSA) to the list of known hosts.
root@192.168.3.2's password:?
Now try logging into the machine, with "ssh 'root@192.168.3.2'", and check in:
? .ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
拷貝需要輸入yes,并輸入對方主機192.168.3.2的密碼
查看192.168.3.2的/root/.ssh/目錄下會生成authorized_keys文件,內容如下
[root@jw2 .ssh]# cat authorized_keys?
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAt5Bum8vL+FezAzM9xUzSLnzTVGOwwmnu6dQcrIu5WCNqb1VgO1J2jj0jUDaK670tNIi5b2C+rr0kontqlVwblFZCrT/2gLBqj51t8UKu7YzaCxJBqdHbIxSgyE2/klxM4x3L/8j2FnGiBDzB6eZ9VLatnFjm2D1QtxStu2It+h1Rg2sqQqMxg3+rLkeG4b8nPBDxw6pczYQR9mKsmvH3wEDi4+17wonz9T+tqQO0dI9jI7jibwEpHWkpVzWM+lQpyU4VrEtq9uVEE6gsIKcWzdpfM5B3WVfA8ts2TM8zxu+NRvA0Dfxzh3iEkVUv7zAPs6tlZM16JoHcXros++goJQ== root@jw
[root@jw2 .ssh]# pwd
/root/.ssh
————————————————
如此直接在本機192.168.3.1 ssh對方ip,ssh 192.168.3.2 因為默認都是root,所以可以不用輸入root@192.168.3.2
如果需要在192.168.3.2遠程192.168.3.1;那就在3.2上如上步驟做一遍;
可以在192.168.3.1主機上查看/root/.ssh/目錄下的文件
[root@jw .ssh]# ll
total 12
-rw-------. 1 root root 1675 Nov ?6 09:46 id_rsa——私鑰 ?解密
-rw-r--r--. 1 root root ?389 Nov ?6 09:46 id_rsa.pub——公鑰 加密
-rw-r--r--. 1 root root ?393 Nov ?6 09:49 known_hosts——已知的主機列表
[root@jw .ssh]# cat known_hosts?
192.168.3.2 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAvMTT5iDe+VuIfIw76LspyYt7EcBTzj6aEa5dto+4G+la1sxnMiy2xIhynctX6T1JipXYsv2cPdPHfV2i/BD4ZLNV30+j6b5G+qEqHxaTxgoez6MyRCO0FT1pI5TpPHA9neMN/70Yrmp4RttHM04gz6X9CesZwfRaHpFoBcVm6+0YgEOakDSFbe7T/Se/M6dhuJwWXmJYSoSG/z1QkBn/QI/YgszjFQBiulDPXhHTd/WWJd64mFJLuAhr+QmA+QG4sdYlJYl26hFUUf/Tgzw9cdkNM57jyQ436crJ6s2duJZ3zYGvclwSVLdhQH7VigZFRoua+wTxeD8QgtaCOf2Osw==
????????????????????????????????????????????????????????????????????????????by:rm_rf_db
轉載于:https://blog.51cto.com/12185273/1979484