SSH无需输入密码自动认证

一、 生成密钥

  1. 执行 ssh-keygen -t rsa
  2. 提示输入保存密钥的文件名,我输入的是 id_rsa ,回车
  3. 提示要输入保护密码,这里直接回车,不需要密码保护
  4. 完成后如下图,在当前目录下会生成 id_rsa 和 idrsa.pub 两个文件,一个是rsa密钥对的私钥,一个是公钥(带.pub的)

二、放置公钥

在证书认证过程中,公钥即公开的密钥,是不需要保密的,可以发给任何人。你想要谁认证你,你就给谁发一份儿,让他保存起来。后面认证的时候,用你的私钥加密一段文字,他用你的公钥能解密,解密成功了,也证明你是可信任的了。

  1. 公钥给GITHUB 服务器
    公钥给谁,如果你要GITHUB服务器认证你,你就给github服务器,github服务器接收你的公钥的位置,是在你登录完GITHUB在网右上角的个人小图标里,进入个人账号空间,在 SSH and GPG keys 菜单里,点 New SSH Key 新增你的公钥。
    把上面第一步中的 rsa_id.pub 文件中的内容完全复现到新弹出的窗口中,保存即可。
    这样,GITHUB就拿到了你的公钥了。
  2. 公钥给你的机房中的LINUX服务器
    如果你想登录你的机房中LINUX服务器,避免输入用户密码,那你把你的公钥就给这些服务器。
    放到当前用户home 目录下的 .ssh 目录下的 authorized_keys 文件中,如果没有此文件,你就用你上面生成的公钥文件id_rsa.pub替换此文件即可,如果已经有,可以把你的公钥追加到最后即可。

    # 这条指令把我本机用户home目录下的id_rsa.pub文件发送到192.168.0.231服务器root用户的home目录下
    # 并添加到 authorized_keys 文件中
    ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

你可能感兴趣的:(ssh)