美文网首页
SSH免密登录一步搞定

SSH免密登录一步搞定

作者: Joeyzz7000 | 来源:发表于2021-02-03 21:30 被阅读0次

    SSH免密登录

    服务器A实现免密登录服务器B。(基于Linux服务器)

    实现过程


    一、服务器A公钥的生成

    服务器A上命令行界面输入下面命令,会在当前用户目录下新建[.ssh]文件夹,文件夹内包含id_rsa(私钥)与id_rsa.pub(公钥)

    服务器A:~ nicholas.joey$ ssh-keygen -t rsa -C "你的邮箱"
    服务器A:~ nicholas.joey$ cd .ssh
    服务器A:.ssh nicholas.joey$ ls -al
    total 40
    drwx------   6 nicholas.joey  staff   192  2  3 14:13 .
    drwxr-xr-x+ 47 nicholas.joey  staff  1504  2  3 14:13 ..
    -rw-r--r--   1 nicholas.joey  staff   263  2  3 14:13 config
    -rw-------   1 nicholas.joey  staff  2602 11 14 14:08 id_rsa
    -rw-r--r--   1 nicholas.joey  staff   570 11 14 14:08 id_rsa.pub
    -rw-r--r--@  1 nicholas.joey  staff  6270  2  3 09:14 known_hosts
    
    二、目标服务器B的处理

    当前用户目录下是否存在[.ssh]文件夹,没有则新建[.ssh]文件夹并赋予 700 权限。

    并创建文件 authorized_keys。将其服务器A创建的id_rsa.pub(公钥)内容复制在 authorized_keys 文件中。

    [服务器B ~]$ mkdir .ssh/
    mkdir: 无法创建目录 “.ssh/”: 文件已存在
    [服务器B ~]$ chmod 700 .ssh/
    [服务器B ~]$ cd .ssh/
    [服务器B .ssh]$ touch authorized_keys
    [服务器B .ssh]$ vim authorized_keys
    [服务器B .ssh]$ cat authorized_keys 
    ssh-rsa ***** 741779841@qq.com
    

    结尾

    实现上述两步,服务器A就可通过SSH免密登录服务器B

    服务器A:~ nicholas.joey$ ssh root@192.168.0.106
    
    Authorized users only. All activities may be monitored and reported.
    
    Last login: Wed Feb  3 16:12:41 2021 from 
    [服务器B ~]$ 
    

    还可以自定义名称进行免密登录,在其服务器A[.ssh]文件夹中新建 config 文件

    Joey:~ nicholas.joey$ cat .ssh/config 
    #本地开发环境
    #自定义名称
    Host joey
    #服务器B地址
    HostName 192.168.0.106
    #服务器B用户名
    User root
    #验证方式为公钥方式
    IdentityFile ~/.ssh/id_rsa
    Joey:~ nicholas.joey$ ssh joey
    
    Authorized users only. All activities may be monitored and reported.
    [服务器B ~]$ 
    

    相关文章

      网友评论

          本文标题:SSH免密登录一步搞定

          本文链接:https://www.haomeiwen.com/subject/cbjjtltx.html