searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

ssh认证机制

2023-04-10 08:54:55
19
0

远程登录一般有两种方式:

* 密码登录:客户端发出授权请求时,服务端要求输入密码进行验证授权

* 密钥登录:客户端发出授权请求时,服务端根据事先配置的密钥验证身份并授权
 

配置步骤

1. 客户端生成密钥对,包括公钥、私钥
2. 私钥配置在本地,将公钥发送给服务端
3. 服务端将客户端的公钥加入到授权列表
 

执行原理

1. 客户端发出远程登录请求 用户名@服务端主机名或者IP
2. 服务端查看是否有 该用户名 的公钥
3. 如果有,服务端生成随机字符串,并用公钥加密(就是随机字符串与公钥作某种运算),发送给客户端
4. 客户端利用本地的私钥对字符串解密(逆运算)。
5. 客户端将解密后的字符串结果发送给服务端
6. 服务端利用解密的字符串与原始字符串匹配,如果相等,验证通过,并授权给客户端。
 

配置ssh步骤

1. 客户端生成密钥对 `ssh-keygen -t rsa (-f ~/.ssh/id_rsa) -C "comment"`
2. 拷贝公钥到服务器 `scp id_rsa.hub servername@ip:/home/usernam/`
3. 在服务器端将公钥添加至授权列表
    1. `touch authorized_keys`
    2. authorized_keys文件权限必须为600 `chmod 600 authorized_keys`
    3. 追加公钥信息到授权文件中 `cat ~/id_rsa.pub >> authorized_keys`
4. 客户端登陆 `ssh -i id_rsa servername@ip`
0条评论
0 / 1000
qinyl
6文章数
0粉丝数
qinyl
6 文章 | 0 粉丝
qinyl
6文章数
0粉丝数
qinyl
6 文章 | 0 粉丝
原创

ssh认证机制

2023-04-10 08:54:55
19
0

远程登录一般有两种方式:

* 密码登录:客户端发出授权请求时,服务端要求输入密码进行验证授权

* 密钥登录:客户端发出授权请求时,服务端根据事先配置的密钥验证身份并授权
 

配置步骤

1. 客户端生成密钥对,包括公钥、私钥
2. 私钥配置在本地,将公钥发送给服务端
3. 服务端将客户端的公钥加入到授权列表
 

执行原理

1. 客户端发出远程登录请求 用户名@服务端主机名或者IP
2. 服务端查看是否有 该用户名 的公钥
3. 如果有,服务端生成随机字符串,并用公钥加密(就是随机字符串与公钥作某种运算),发送给客户端
4. 客户端利用本地的私钥对字符串解密(逆运算)。
5. 客户端将解密后的字符串结果发送给服务端
6. 服务端利用解密的字符串与原始字符串匹配,如果相等,验证通过,并授权给客户端。
 

配置ssh步骤

1. 客户端生成密钥对 `ssh-keygen -t rsa (-f ~/.ssh/id_rsa) -C "comment"`
2. 拷贝公钥到服务器 `scp id_rsa.hub servername@ip:/home/usernam/`
3. 在服务器端将公钥添加至授权列表
    1. `touch authorized_keys`
    2. authorized_keys文件权限必须为600 `chmod 600 authorized_keys`
    3. 追加公钥信息到授权文件中 `cat ~/id_rsa.pub >> authorized_keys`
4. 客户端登陆 `ssh -i id_rsa servername@ip`
文章来自个人专栏
文章
6 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0