分享SSH安全加固:基于密钥认证的 SSH

  • A+
所属分类:Security

SSH 为 Secure Shell 的缩写,是允许你通过无安全网络(例如 Internet)和远程系统之间安全访问/通信的加密网络协议。无论何时使用 SSH 在无安全网络上发送数据,它都会在源系统上自动地被加密,并且在目的系统上解密。SSH 提供了四种加密方式,基于密码认证,基于密钥认证,基于主机认证和键盘认证。最常用的认证方式是基于密码认证和基于密钥认证。

在基于密码认证中,你需要的仅仅是远程系统上用户的密码。如果你知道远程用户的密码,你可以使用 ssh user@remote-system-name 访问各自的系统。另一方面,在基于密钥认证中,为了通过 SSH 通信,你需要生成 SSH 密钥对,并且为远程系统上传 SSH 公钥。每个 SSH 密钥对由私钥与公钥组成。私钥应该保存在客户系统上,公钥应该上传给远程系统。

配置基于密钥认证的 SSH

切换到普通用户long

删除之前生成的密钥

生成带密码的密钥

加入授权

添加权限

修改SSH配置文件,启用RSA认证

本地测试

分享SSH安全加固:基于密钥认证的 SSH

添加其他服务器(方法1)

添加其他服务器(方法2)

第二种方法比较简单,如果两个服务器的用户名相同的话,直接 ssh ip就可以连接

Windows客户端生成公钥

使用git生成公钥(方法一)

安装git

打开windows命令提示符,输入ssh-keygen -t rsa 回车生成密钥

分享SSH安全加固:基于密钥认证的 SSH

进入到用户公钥目录,并复制公钥到服务器上

分享SSH安全加固:基于密钥认证的 SSH

使用Xshell生成公钥(方法二,私钥默认保存在Xshell中,需手动导出)

Xshell--工具--新建用户密钥生成向导

分享SSH安全加固:基于密钥认证的 SSH

密钥类型:RSA 密钥长度2048位,默认直接点击下一步

分享SSH安全加固:基于密钥认证的 SSH

密钥生成成功,直接下一步

分享SSH安全加固:基于密钥认证的 SSH

自己定义密钥名称和密码(为了安全,密钥最好也得设置密码)

分享SSH安全加固:基于密钥认证的 SSH

保存公钥,点击完成

分享SSH安全加固:基于密钥认证的 SSH

公钥添加到服务器上

分享SSH安全加固:基于密钥认证的 SSH

使用Xshell连接,方法选成Public key,用户名,用户密钥选择自己的私钥id_rsa,就可以直接连接了

分享SSH安全加固:基于密钥认证的 SSH

禁止SSH密码认证

重启服务,让配置生效

当前xshell会话不要关闭,新建会话测试

 

 

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: