生成ssh服务器密钥

一 基本原理
公钥认证需要一对密钥:公钥-私钥,将公匙放在服务器上你的宿主目录下,私钥保存在客户端。当登录服务器时,客户端软件将向服务器发出公钥认证请求,服务器先检查你的公匙是否合法,然后就用公钥加密一个随机数发送给客户端软件。客户端软件用私钥将这个加密的随机数解密后发送给服务器。因为公钥和私钥是成对使用的,公钥加密的数据只能用私钥解密,所以服务器就可以确认公钥认证的合法性了。
二 操作步骤
1. 生成公钥-私钥对
1)在服务器上生成公钥和私钥
#/usr/bin/ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):直接按回车
Enter same passphrase again:直接按回车
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
……

2)让服务器许可该证书
将公钥文件id_rsa.pub内容拷贝到文件/root/.ssh/authorized_keys中,如果没有就新建一个文本文件即可.

3)将私钥id_rsa下载到客户端
因为SSH-2类型的私钥是没有标准格式的, 而Winscp只支持Putty格式的私钥.
所以需要使用puttygen.exe将私钥文件进行转换,下载puttygen.exe

4)使用puttygen.exe转换私钥
运行puttygen.exe, 点击File -> Load private key, 打开id_rsa, 点击”Save private key”,保存私钥到文件id_rsa.ppk.

5)设置私钥密码
为了增强安全性,可以在”Key passphrase”和”Confirm passphrase”文本框中输入密码,使用私钥时必须输入该密码, 即使别人窃取到你的私钥如果不知道密码是不能使用密钥登录服务器的.

2. 使用公钥-私钥
运行Winscp, New一个Session,输入服务器IP地址,端口号,用户名和密钥的密码,将”Private key file”设置为id_rsa.ppk的位置.

三 结束语
如果没有设置私钥密码,就不需要输入密码就可以登录服务器了.
到此为止, 就可以更安全更灵活的连接linux服务器了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值