第一步是创建公钥
1、首先用CRT创建密钥,下图是图示:
密钥长度默认就可以,越大越安全
上图中选择OpenSSH密钥格式,这样在后面就不用再转格式,在早起可能不能直接生成OpenSSH密钥格式,需要转换。我的版本可以直接生成。下面是转换的命令
ssh-keygen–i –f Identity.pub
最后点击完成,会弹出如下图示,一个我选择的是否,也可以选择是。
可以在之前的文件目录中找到刚才的私钥和公钥文件
因我并没有更改这个地址,所以默认是C:\Users\Administrator\Documents这个目录下会有:Identity(私钥),Identity.pub(公钥)
需要把Identity.pub(公钥)放到服务器上的~.ssh隐藏目录下,因此如果服务器上没有~.ssh这个隐藏目录,就需手动创建。ls –a可以查看隐藏目录
我的已经存在.ssh隐藏目录。
[[email protected] ~]# ls -a
. .bash_history .baser install.log .tcshrc
.. .bash_logout b.txt install.log.syslog
anaconda-ks.cfg .bash_profile .cshrc .ssh
[[email protected] ~]#
通过rz –y命令将Identity.pub(公钥)拷贝到服务器上(这里可以用多种方法)。
需将文件放到.ssh目录下
[[email protected] ~]# mv Identity.pub .ssh
[[email protected] ~]# cd .ssh
[[email protected] .ssh]# ls
Identity.pub known_hosts
[[email protected] .ssh]#
需将文件名更改authroized.keys
注意:之所以将Identity.pub(公钥)该名为authroized.keys,原因:在ssh的配置文件/etc/ssh/sshd_config中AuthorizedKeysFile .ssh/authorized_keys所以需将公钥的文件名进行更改
[[email protected] .ssh]# cat Identity.pub>>authorized_keys
[[email protected] .ssh]# ls
authorized_keys Identity.pub known_hosts
[[email protected] .ssh]#
同时这里需要对.ssh目录的权限进行更改,以及authorized_keys文件的权限进行更改
将.ssh目录的权限改为700,authorized_keys文件的权限改为600(644),否则会导致后面出现问题无法登陆。
同时在上述操作完成后,需重启sshd服务/etc/init.d/sshd restart
第二步用CRT工具通过密钥登录Linux服务器
选择publickey点击属性
然后连接,会出现需要输入之前设置的通行短语,输入之后即可成功登陆