使用SSH时使用公钥认证详解

什么是公钥认证?

当我们在使用ssh远程登录服务器时,主要分为两个认证过程:

  • 主机验证过程
  • 身份验证过程

其中身份验证过程按验证的先后顺序有以下五种方法:

  • gssapi-with-mic:
  • hostbased:
    -此认证方式不安全且大大增加认证时间,建议到配置文件/etc/ssh/sshd.config中进行更改。
  • publickey:
    -此认证方式即为公钥认证。我们推荐使用这种方法进行认证。
  • keyboard-interactive
  • password:
    -密码认证。初始状态时是以这种方式登录的,但不推荐使用这种方法。与其他认证方法相比,自动脚本可以轻松破解正常长度的密码。

为什么推荐使用公钥认证?

  • 使用这种方式更加的安全。
    -由于这种认证方式的实验需要得到对方的公钥,且在连接前会使用少量的数据包用到了最为安全的非对称算法进行验证。使得验证过程极为安全准确。

  • 更加快速且避免交互
    -公钥认证过程中并不需要密码的输入,避免了交互,便于我们写脚本文件。

公钥认证的原理

为了简化过程,将客户端称为A,服务端称为B。

  1. A生成其公私钥并向B发送用于认证的公钥
  2. B将A的公钥保存起来。
  3. 当A请求远程登录B时,B会使用A的公钥对一小段数据(称为M)进行加密得到随机数N,将N发给A。
  4. A使用自己的私钥对N进行解密,得到了数据M1,对M使
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值