Hey,天还没亮,夜猫子,要注意身体哦!

记录:Xshell设置密钥登录vps、密钥通过winscp登陆

   

之前写过修改ssh端口的文章,今天看见别人的一篇文章:在使用sftp命令时可以添加密钥文件的地址实现免密码连接vps,便用xshell测试一下。

sftp命令添加密钥文件实现免密码连接vps的代码:

 
  1. admin@new:~# sftp -o Identityfile=/root/identify1.txt admin@*.*.*.* -oPort=22  

下面开始用Xshell设置密钥登录vps

1、用xshell生成密钥对

xshellshengchengmiyuedui (1)
生成密钥参数

选择RSA密钥类型,密钥长度可以选择1024或2048,然后点击下一步按钮。
生成密钥对

 

直接点击下一步。

 

密钥信息

 

密钥名称可以随便取,密码我这里为了登陆vps的时候只用私钥而不用填写密码就不填了(当然,填了会更安全)。

 

保存公钥

 

最后保存公钥在本地电脑,点击完成。

 

2、将公钥上传到vps或服务器

①将刚刚生成并保存的公钥id_rsa_2048.pub上传到你的vps的/root/.ssh目录(如果目录不存在,则自己新建一个。如果用winscp新建.ssh目录后发现它消失了,那么按照以下步骤显示隐藏文件:选项->面板->“显示隐藏文件”打钩。),将id_rsa_2048.pub重命名为authorized_keys并将它的权限设置为:600

②用winscp打开vps的/etc/ssh/sshd_config文件,找到RSAAuthentication和PubkeyAuthentication,将两行前面的#注释删除。

③重启ssh:

  1. service ssh restart   #debian、ubuntu

3、保存私钥并配置xshell使用密钥登陆vps

保存私钥1 保存私钥2

导出刚刚生成的私钥id_rsa_2048。

xshell新建会话

xshell新建会话,填写名称及IP。选择私钥
点击左侧“用户身份验证”,方法选“Public Key”,用户密钥选择刚刚生成的私钥id_rsa_2048,点击确定。

选择密钥登陆

连接vps,选择登陆密钥,点击确定,测试能否成功登陆vps。成功登陆后看下一步。

4、设置禁止密码登陆vps

用winscp打开vps的/etc/ssh/sshd_config文件,找到PasswordAuthentication将后面的yes改成no,重启ssh。

  1. service ssh restart   #debian、ubuntu

重启ssh后可以测试只用密码是登陆不了vps了。

5、生成私钥登陆winscp

注意到,直接用刚才生成的私钥id_rsa_2048是登陆不了winscp的。

winscp登陆

打开winscp,新建站点,填写相关信息后点击高级。

winscp选择密钥

点击左侧的验证,导入密钥文件。

winscp所有文件

将右下角选择为“所有文件”。

winscp找到私钥

选择xshell导出的私钥,点击打开。

将私钥转为putty格式

点击“确定”。

导入putty成功

再“确定”。

winscp保存私钥

最后点击“Save private key”保存putty格式的私钥,选择该密钥即可用于winscp登陆vps。

未经允许不得转载:Rising Sun's Blog » VPS » 记录:Xshell设置密钥登录vps、密钥通过winscp登陆
标签:
评论 0
 
 
发表评论