linux使用秘钥登录
warning:
这篇文章距离上次修改已过714天,其中的内容可能已经有所变动。
每次都忘记密码,得生成个密钥对来用,这样就方便不少了,也能防止密码泄露。
生成密钥对
ssh-keygen
在生成的时候,passphrase置空就可以实现无密码登录。
生成信息:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ubuntu/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ubuntu/.ssh/id_rsa
Your public key has been saved in /home/ubuntu/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:peKC/qZlWvJf8I7kqMcx+FvK5zamf8i0gR82JBNoC8U ubuntu@VM-0-10-ubuntu
授权公钥
密钥对生成之后, 要将公钥给服务器,然后持私钥链接。
cd /home/ubuntu/.ssh
cat id_rsa.pub >> authorized_keys
确保文件及目录权限:
chmod 600 authorized_keys
chmod 700 ~/.ssh
修改配置,打开秘钥登录
配置文件路径:/etc/ssh/sshd_config
PubkeyAuthentication yes
允许 root 账号登录:
PermitRootLogin yes
禁用密码登录:
PasswordAuthentication no
重启服务:
service sshd restart
使用
下载秘钥 id_rsa ,导入 xshell 中, 并输入对应的账号,即可使用。
注意事项
生成出来的秘钥默认是跟着 openssh 的版本,有些可能会不兼容。比如 jenkins 使用的就是 4096 长度的旧版本秘钥。因此在生成的时候要指定一下:
ssh-keygen -m PEM -t rsa -b 4096
评论已关闭