1、生成默认格式的密匙key,此过程会在/root/.ssh/文件件夹下生成id_rsa(私钥)和id_rsa.pub(公钥)。
ssh-keygen
查看/root/.ssh/目录
2、将公钥id_rsa.pub复制到远程主机/root/.ssh/文件中,并且重命名为authorized_keys。(此处以远程主机ip为192.168.4.163举例)
方法一:scp /root/.ssh/id_rsa.pub root@192.168.4.163:/root/.ssh/authorized_keys
或者 cat ~/.ssh/id_rsa_pub | ssh -p 22 root@192.168.4.163 "umask 077;mkdir -p ~/.ssh/;cat ->>~/.ssh/authorized_keys
在远程主机上查看
方法二 ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.4.163
以上两种方法都是把公钥交给192.168.4.163的root账户。其实,简单来说,就是用户会把别人的公钥放在家目录的./ssh/authorized_keys文件中。如果有更多的人把自己的公钥交给root账户,那么authorized_keys文件中则会有更多条内容,分别代表不同的公钥。
注意:1、在服务端的sshd_config配置文件中可以使用AuthorizedKeysFile配置项指定其他文件为认证文件。
2、ssh服务端相关目录或者文件权限不能过大。服务端用户目录.ssh目录的权限正常700,服务端用户家目录.ssh/authorized_keys文件的权限默认为600.