1.首先生成自己的公钥和私钥:
ssh-keygen命令用来生成公钥和私钥
-t用来指定密钥类型(dsa|ecdsa|ed25519|rsa|rsa1)
-p用来指定密码短语
-C用来添加注释
比如:
ssh-keygen-trsa-C"mykey"
此时,会在存放ssh秘钥的地方生成两个文件(不同系统,存放秘钥的地方不同),“.pub”结尾的是公钥,另一个是私钥。
2.将公钥部署到服务器:
公钥需要写入到服务的~/.ssh/authorized_key文件中,这里我通过sftp将公钥上传到服务器,然后将文件内容写入到~/.ssh/authorized_key文件中。
上传公钥到服务器:
sftproot@yourhost-p22
putmykey.pub
将文件写入authorized_keys中
catmykey.pub>>~/.ssh/authorized_keys
chmod600~/.ssh/authorized_keys
3.设置服务器ssh的可以通过公钥登录:
打开/etc/sshd_config文件,修改如下配置:
RSAAuthenticationyes
PubkeyAuthenticationyes
AuthorizedKeysFile.ssh/authorized_keys.
4.重启ssh服务,就可以通过公钥登录了:
sudoservicesshrestart.