window下xshell 开启密钥认证 禁用服务器密码登录

由于大家比较朴实,将实验室服务器密码设置成了程序员都知道的。但最近有些实验室连续最近出现了非法入侵现象(由于服务器连的是内网,估计是校内小朋友干的,太伤心了)。只能采用开启密钥认证,禁用密码登录。

相信大家RSA非对称加密的原理大家都了解,这里就不赘述了。

这里主要是window下xshell设置方法:

首先填入你需要连接服务器的基本信息。

window下xshell 开启密钥认证 禁用服务器密码登录_第1张图片

下一步:

window下xshell 开启密钥认证 禁用服务器密码登录_第2张图片

之后的对话框,点击下一步,下一步,下一步

window下xshell 开启密钥认证 禁用服务器密码登录_第3张图片


选择RSA加密。

window下xshell 开启密钥认证 禁用服务器密码登录_第4张图片

生成秘钥对,私钥和公钥。

window下xshell 开启密钥认证 禁用服务器密码登录_第5张图片

这里输入私钥的名字和打开私钥的密码。 

window下xshell 开启密钥认证 禁用服务器密码登录_第6张图片

点击保存公钥文件(作用可以看看下图中的说明),本文保存的文件名为id_rsa_1024.txt。

window下xshell 开启密钥认证 禁用服务器密码登录_第7张图片



将id_rsa_1024.txt 拷贝(如使用xftp,rz等)到需要秘钥认证的服务器。

登入服务器:

(如果没有.ssh文件夹)$ mkdir ~/.ssh
$ chmod 700 .ssh
$ cat id_rsa_1024.txt >> ~/.ssh/authorized_keys  (id_rsa_1024.txt 是你public key的文件名)

$ rm ~/id_rsa_1024.txt 
$ chmod 600 ~/.ssh/*

如果以上步骤不能实现不输密码登陆的话,需要检查sshd服务的Pubkey认证功能是否默认打开
/etc/ssh/sshd_config:
PubkeyAuthentication yes           
如果修改后需要要重起你的ssh服务,用ssh –v来显示详细的登陆过程.

最后一步:关闭静态密码
建议不使用静态密码,以后都我们都使用key登录,修改如下内容可以关闭使用密码认证:

关闭Pam的传统密码认证.

PasswordAuthentication选项更改为 no

使用public登录:

选择刚才你跟公钥配对的私钥,输入你设置的打开私钥的秘密。点击ok即可登录。

window下xshell 开启密钥认证 禁用服务器密码登录_第8张图片

其他:使用Export导出你的私钥给其他人使用。

window下xshell 开启密钥认证 禁用服务器密码登录_第9张图片

其他人只有使用Import导入即可。


ps:关于两台服务器之间如何使用秘钥登录,这里给一个nopasswd脚本。

[plain]  view plain copy print ? 在CODE上查看代码片
  1. #!/bin/sh  
  2. scp ~/.ssh/id_dsa.pub  $1@$2:~/  
  3. ssh $1@$2 " touch ~/.ssh/authorized_keys ; cat ~/id_dsa.pub  >> ~/.ssh/authorized_keys; chmod 644 ~/.ssh/authorized_keys; exit"  

执行方式 sh nopasswd USER REMOTE_HOST  注:USER 为另一台服务器用户名 REMOTE_HOST为另一台服务器ip地址。
执行此脚本前,请确认:
本机上已有 id_dsa.pub ,若无。 使用命令 ssh-keygen -t dsa 获得。
远程机上登录用户家目录下,已经有 .ssh 文件夹,若无创建之。

注意:这是在服务器还可以使用文本密码登录的基础上。

你可能感兴趣的:(window下xshell 开启密钥认证 禁用服务器密码登录)