1. 使用 ssh-keygen 生成密钥,默认参数就行,执行后会在 ~/.ssh/ 目录下生成两个文件:id_rsaid_rsa.pub
  2. 手工将 id_rsa.pub 的内容添加到要登陆到的 目标 服务器的 ~/.ssh/authorized_keys 文件。或使用以下方法自动复制(192.168.1.2为目标机器):

    ssh-copy-id root@192.168.1.2
  3. 使用 ssh root@192.168.1.2 登陆目录服务器
  4. 登陆后会在本机的 ~/.ssh/ 目录下生成 known_hosts 文件,删除此文件的对应行后,再次登陆会重新确认是否免密

多私钥管理

  1. 启动 ssh-agent:

    #注意反引号
    eval `ssh-agent`
  2. 添加私钥:

    ssh-add ~/.ssh/aliyun #私钥文件

github SSH 登陆

将上面 id_rsa.pub 的内容复制到 Settings/SSH and GPG keys 就行

提示

如果希望ssh公钥生效, 目标服务器 需满足至少下面两个条件:

  1. ~/.ssh 目录的权限必须是700
  2. ~/.ssh/authorized_keys 文件权限必须是600