linux ssh keys

1. 原理:

SSH 密钥对总是成双出现的,一把公钥,一把私钥。公钥可以自由的放在您所需要连接的 SSH 服务器上,而私钥必须稳妥的保管好。

所谓"公钥登录",原理很简单,就是用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录 shell,不再要求密码。这样子,我们即可保证了整个登录过程的安全,也不会受到中间人攻击

 

2. 生成密钥对

# centos
$ ssh-keygen -t rsa -P '这里写密码' -f ~/.ssh/id_rsa

# windows下
首先需要安装cmder
$ ssh-keygen -t rsa -P '这里写密码' -f C:\Users\czn\.ssh\id_rsa

 

3. 将公钥复制到远程服务器中

# 在远程服务器上创建文件
$ mkdir ~/.ssh && touch ~/.ssh/authorized_keys
$ vim ~/.ssh/authorized_keys
将你的公钥粘贴进去即可

 

4. 测试

$ ssh 192.168.31.86
# 键入生成密钥对时的密码即可完成登陆。

 

5. 根据别名访问远程服务器

修改/etc/hosts文件

$ vim /etc/hosts

# 同windos下的hosts文件
写入
192.168.31.110 data1
192.168.31.111 data2
192.168.31.112 data3

 

# 访问
$ ssh data1

 

posted @ 2018-03-30 19:36  家迪的家  阅读(646)  评论(0编辑  收藏  举报