ssh登录认证
概述
SSH
的全称为Secure Shell
,即安全外壳协议。它是一种专为远程登陆会话和网络服务提供安全性的应用层协议。
主要功能是安全的连接到服务器。
ssh加密原理
-
口令验证登录
- 服务器生成公钥和私钥
- 客户端发起连接请求,服务器将公钥发给客户端
- 客户端输入口令(服务器密码),并用服务器发来的公钥加密,发送给服务器
- 服务器通过私钥解密,拿到口令(服务器密码)
- 如果正确则认证成功
-
密钥验证登录
客户端生成公钥和私钥,将公钥提前部署在服务器上
客户端发起连接请求
服务器随机生成一个字符串,用本地的公钥加密,发送给客户端
客户端通过私钥解密,将解密后的字符串发送给服务器
服务器验证本地字符串和客户端发来的字符串的一致性,如果通过,则认证成功
使用
使用密钥的方式登录时, 客户端密钥一般存放在服务器的~/.ssh/authorized_key
目录中(其中~
指的是客户端登录服务器时指定的用户名),用户在登录的时候指定使用到的私钥和登录服务器的用户名和ip地址。
# 密钥的方式登录
ssh -i ./root_key.pem root@54.243.22.210
# 密码的方式登录
ssh -p 6688 ymtar@128.14.9.130