跳到主要内容

ssh 密钥登陆手记

生成ssh公钥密钥对

在本机上生成ssh公钥密钥对

ssh-keygen -b 1024 -t rsa

根据提示生成密钥对,期间会询问你密钥对保存的位置,以及密钥对的密码。

拷贝公钥到目标服务器

将公钥拷贝到目标服务器需要自动登陆的用户目录的 .ssh 目录下(如果目录不存在,需要创建~/.ssh目录,并把目录权限设置为700)。

例如要自动登陆的用户 root,则将公钥拷贝到服务器 /root/.ssh 目录下。

scp .ssh/id_rsa.pub username@host:~/.ssh/
# 如果用户目录不存在.ssh目录,创建目录
mkdir ~/.ssh

# 将目录权限设置为700
chmod 700 ~/.ssh

登陆目标服务器,进入用户目录的 .ssh 目录下,将公钥追加到 authorized_keys 中,没有该文件则会自动创建。

如果后续要添加其它公钥,只需要使用 cat 命令将公钥追加到该文件中即可。

# 将公钥追加到 authorized_keys
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

# 修改权限
chmod 600 authorized_keys

登陆测试

在本机通过ssh登陆到目标服务器

ssh username@host

如果公钥设置了密码,则会提示输入密码,如果没有设置密码,则自动登录。