设置SSH证书远程登陆

Author Avatar
GeniusFunny 11月 25, 2019
  • 在其它设备中阅读本文章

每次远程登录服务器时都要手动输入密码,其实我们可以通过SSH证书实现远程一键登陆服务器。

客户端:macOS 10.15.1

服务器: Centos7

客户端配置

  1. 生成ssh公钥、私钥:

    1
    $ ssh-keygen
  2. 传送公钥到服务器上:

    1
    $ scp ~/.ssh/id_rsa_server.pub root@12.34.567.89:~
  3. 指定登陆服务器使用的私钥:

    1
    $ vi ~/etc/ssh/ssh_config

    添加下面的内容:

    1
    2
    HOST 12.34.567.89
    IdentityFile ~/.ssh/id_rsa_server

服务器配置

  1. 将上一步接收到的公钥添加到authorized_keys中

    1
    $ cat ~/id_rsa_server.pub >> ~/.ssh/authorized_keys
  2. 配置sshd_config,开启证书登陆

    1
    vim ~/etc/ssh/sshd_config

    修改内容为:

    1
    2
    RSAAuthentication yes
    PubkeyAuthentication yes
  3. 重启sshd使刚才的修改生效

    1
    $ service restart sshd

一键登录

接下来就不用输入密码直接登陆服务器:

1
$ ssh root@12.34.567.89

其它

ssh-keygen
ssh_config与sshd_config