Linux多臺主機之間實現免密登陸

在我們的內網環境中,每天都要切換登陸很多不同的機器,每次都要手動輸入密碼;既長又難記的密碼真讓人頭疼,以下來講解如何在不同主機之間進行免密登陸。

準備兩臺機器

A:192.168.56.18
B:192.168.56.6

在A和B機器上生成密鑰

[root@centos7_code1 ~]# ssh-keygen -t rsa                       #生成ssh私鑰和公鑰文件
	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:
	SHA256:Se8XcMGievTvZeHcsGys+qWiQenSrwax61ewxi4lAEU root@centos7_code1
	The key's randomart image is:
	+---[RSA 2048]----+
	|   oE      ..    |
	|  .       . ..   |
	|   .    .....    |
	|    . ..++ o     |
	|     . *S+. . o  |
	|      =+*.o  * = |
	|      .O+.... @ .|
	|      o.+o...B   |
	|     ..+ooo==    |
	+----[SHA256]-----+
[root@centos7_code1 ~]# ls /root/.ssh/                          #可以看到私鑰和公鑰文件
	id_rsa  id_rsa.pub

A機器免密登錄B機器

[root@centos7_code2 .ssh]# touch authorized_keys
然後在A機器上覆制自己的公鑰文件 id_rsa.pub到B機器的authorized_keys文件中
[root@centos7_code1 .ssh]# scp /root/.ssh/id_rsa.pub [email protected]:/root/.ssh/authorized_keys

再來到B機器上查看拷貝過來的文件內容
[root@centos7_code2 .ssh]# vim /root/.ssh/authorized_keys
	ssh-rsa 		AAAAB3NzaC1yc2EAAAADAQABAAABAQCw7nix6UTAZN5R2N3Nqi+eDqcdDj2Dgcnk1nVXgNQNmygdMtkA3WOrC/hvHqnAdf9LCxqeddyPPofe8bAY/gHnfTKBUuW/2vYNC3Xn6FQrttkCuUwsvPoFkdqmqmk21cU/RGhKzHO1Bu65IxDb9jr38h5eIwdYdBVjJNdIAENM4dafNN/ZmW9PCSXTdCCshqHtX/nDg4h4AP1PqvnHOB6miSCGXevZWbhrdFzsEj/bTo6mtqNc1wZ6XkKZ2CWi384KCxnMzipcntHUzEXiu0kDMc6pA+CLK7wdKm9pWpfRl+VBqwfdmmUgGffHW3FELu8WdiGX9G/Me7KtXBgnvckr root@centos7_code1

注意:

如果需要多臺機器登錄到本臺機器免密,把其它機器的公鑰文件需追加到該文件底部即可

測試A機器免密登錄B機器

[root@centos7_code1 .ssh]# ssh [email protected]
	Last login: Sun Jul 22 21:57:14 2018 from 192.168.56.2
[root@centos7_code2 ~]#

如果A機器也需要免密登錄到其他主機,反過來相同操作即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章