您的位置:首页 > 运维架构 > Shell

Xshell设置密钥登录,禁用管理员密码登录

2015-03-10 00:19 861 查看
作为一名运维人员,我们首先要保证服务器的安全。而用户登录系统有两种方式,密码和密钥,毫无疑问,使用密钥登录更安全一些。下面设置root用户只能使用密钥登录,不能使用密码登录。

测试工具:RHEL6.6,Xshell

步骤一:生成密钥

打开Xshell,在菜单栏中点击Tools按钮,选择New User key Wizard。




可看到密钥生成界面,选择RSA加密算法,密钥长度这里设置成2048。




密钥已经生成,选择Next。





输入密钥名称,以及给密钥加密的密码,继续下一步。





现在就可以看到公钥信息了,将公钥复制保存下来。




步骤二:上传公钥

1> 在root用户家目录下创建隐藏目录.ssh,并在此目录下创建以authorized_key文件,并将事先生成的公钥放入authorized_key中。
mkdir -v ~/.ssh
vim ~/.ssh/authorized_keys
......

2>修改权限
chmod 600 ~/.ssh/authorized_keys
chmod 700 .ssh/

3>清空防火墙规则和关闭selinux
iptables -F
/etc/init.d/iptables save

setenforce 0
修改/etc/selinux/config配置文件中SELINUX=permissive

4>修改ssh配置文件,去掉注释,使其支持密钥认证。
RSAAuthentication yes
PubkeyAuthentication yes

5>重启sshd服务
/etc/init.d/sshd restart

步骤三:配置Xshell使用密钥登录

填写Name和Host,然后点击Authentication。




Method选择Public Key,UserName填写root,User Key选择先前生成的密钥,并在Passphrase栏内填入给密钥加密的密码。




步骤四:测试是否可用设置的公钥密码登录

可以看到可以使用root用户密码登录,也可用Public Key密码登录,先测试下能否用Public Key密码登录,能登录则进行步骤五。









步骤五:配置禁用root密码登录

注意:上一步骤测试成功后,可进行此步骤。
1> 找到/etc/ssh/sshd_config文件中PasswordAuthentication yes,将其修改为 PasswordAuthentication no 即可。
2> 重启sshd服务
/etc/init.d/sshd restart

可看到只能使用Public Key登录的选项。




通过上述设置,即使别人获取了root密码也不可以登录,没有私钥也是无法登录的,切记保管好公钥文件。这样便进一步保正了服务器的安全。
本文出自 “在路上” 博客,请务必保留此出处http://mingxiao.blog.51cto.com/8124243/1618850
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: