使用SecureCRT工具创建RSA公钥和私钥
【选项】=》【会话选项】
然后在弹出对话框中选择【公钥】然后点击【属性】:
在弹出窗口中选中【使用会话公钥设置】,点击【创建身份文件】按钮:
然后下面是进行密钥设置向导,按照如图设置,然后点击下一步:
关于这里的【通行短语】和【注释】可以不同填写,但是如果【通行短语】设置了的话,那么需要记住,因为第一次登录会被使用到:
这里选择公钥和私钥文件的保存路径
下面是提示是否需要上传密钥信息,这里我们选择【否】,我们自己手工上传:
然后我们点击确定按钮:
上传公钥
#下面的做法是在用户的用户目录中建立一个.ssh(前面用了.表示是隐藏目录)目录,在目录中添加一个authorized_keys文件,将刚刚生成的.pub后缀的文件内容粘贴到authorized_keys文件中。设置这个authorized_keys文件的权限设置成600,而将.ssh的目录权限设置成700。
[root@localhost ~]# cd /home/ALone
[root@localhost ALone]# mkdir .ssh
[root@localhost ALone]# chmod 700 .ssh
[root@localhost ALone]# cd .ssh
[root@localhost .ssh]# vim authorized_keys
[root@localhost .ssh]# chmod 600 authorized_keys
[root@localhost .ssh]# ls -ld ../.ssh authorized_keys
-rw-------. 1 root root 381 Dec 24 09:53 authorized_keys
drwx------. 2 root root 4096 Dec 24 09:53 ../.ssh
#这里我们需要将公钥和.ssh目录的所有者和所属组设置成ALone,否则就会出现无法连接的情况
[root@localhost .ssh]# chgrp ALone authorized_keys ../.ssh
[root@localhost .ssh]# chown ALone authorized_keys ../.ssh
[root@localhost .ssh]# ls -ld ../.ssh authorized_keys
-rw-------. 1 ALone ALone 381 Dec 24 09:26 authorized_keys
drwx------. 2 ALone ALone 4096 Dec 24 09:26 ../.ssh
设置允许使用密钥登录
[root@localhost .ssh]# vim /etc/ssh/sshd_config
#来到47行将下面三行内容前面的井号去掉
#RSAAuthentication yes
#PubkeyAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys
对于这个位置,原本是注释掉了,发现如果没有将注释去掉还是可以使用密钥登录的,但是如果将上面的注释去掉并且将yes修改成no,那么就不能密钥登录了。登录的时候会得到下面内容:
设置禁止通过密码登录ssh
#禁止掉密码登录,编辑vim /etc/ssh/sshd_config文件来到66行,将PasswordAuthentication中的yes设置成no:
修改ssh的默认连接端口
#修改SSH的默认连接端口,编辑vim /etc/ssh/sshd_config文件来到13行,将Port前面的井号去掉,然后将后面的22修改成自己想要的端口号:
#接着我们需要将这个端口加入iptables中
[root@localhost .ssh]# iptables -I INPUT -p tcp --dport 10078 -j ACCEPT
禁止root用户远程登录
编辑vim /etc/ssh/sshd_config文件,来到45行中将PermitRootLogin一行注释去掉,并且将yes修改成no,这里发现如果PermitRootLogin值没有明确设置成no(就是注释掉或者没有注释掉而值设置成yes)都是允许root用户登录的。
在对于上面/etc/ssh/sshd_config文件的修改后需要保存文件,然后平滑重启ssh服务
[root@localhost .ssh]# /etc/init.d/sshd reload