更换ssh通信证书,ssh更改公钥和密钥,以保证服务器安全

OpenSSH 通信过程中有两类证书会被使用,一是服务器端证书,共四个文件,两种加密类型 rsa 和 dsa。

/etc/ssh/ssh_host_rsa_key       # RSA 密钥
/etc/ssh/ssh_host_rsa_key.pub # RSA 公钥
/etc/ssh/ssh_host_dsa_key      # DSA 密钥
/etc/ssh/ssh_host_dsa_key.pub # DSA 公钥

二是当用户使用证书认证时,上传到 ~/.ssh/ 目录的证书公钥,和保存在客户端主机上的证书密钥。

服务器端证书的用途是加密传输数据,当客户端连接服务器端时,服务器端会选择一种加密协议,如 rsa ,并将服务器端的 RSA 公钥(/etc/ssh/ssh_host_rsa_key.pub)发送给客户端,客户端使用这个公钥将要发送给服务器端的数据(例如认证密码)加密,再通过网络传输给服务器端。服务器端再使用服务器端 RSA 密钥解开被加密的数据,得到明文。只有拥有这个 RSA 密钥的用户可以解开这个加密数据。

客户端证书的用途是鉴定用户身份。

现在的问题是 VPS 服务商的系统都是预安装了 openssh 服务器程序的,而服务器端证书是一般是安装包里的脚本在安装时生成的。换句话说就是相同类型的VPS用户的系统 OpenSSH 的服务器端证书都一样!每个VPS用户都有能力拿到密钥!

更换服务器端证书

sudo ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
sudo ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
sudo service ssh restart

Over!

posted on 2010-12-24 15:59  lexus 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lexus/archive/2010/12/24/1916085.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值