• SSH实现免密登陆


    SSH实现免密登陆配置

    ssh实现免密码登录的配置过程,主要分为以下几个步骤:

    • serverA生成密钥,包括私钥和公钥
    • serverA将公钥传到serverB上
    • serverA上配置serverB登陆的相关参数

    serverA使用admin用户创建密钥

    [root@serverA ~]# useradd admin
    [root@serverA ~]# echo '123456' | passwd --stdin admin 
    Changing password for user admin.
    passwd: all authentication tokens updated successfully.
    [root@serverA ~]# su - admin 
    [admin@serverA ~]$ ssh-keygen 
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/admin/.ssh/id_rsa):      //直接回车
    Created directory '/home/admin/.ssh'.
    Enter passphrase (empty for no passphrase):     //直接回车
    Enter same passphrase again:          //直接回车
    Your identification has been saved in /home/admin/.ssh/id_rsa.
    Your public key has been saved in /home/admin/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:QrWAlLwUL0UNG/VYp5sH8/1R90iXb6aXr1OIege7dHQ admin@serverA
    The key's randomart image is:
    +---[RSA 3072]----+
    |   oo=*+o . .    |
    |    =o =.= o    .|
    |   ...+ o =   ..+|
    |    .o     * o o=|
    |      . S o o.+oE|
    |       .   .o..*+|
    |           ..oooo|
    |          ..o.o..|
    |           ..o.o.|
    +----[SHA256]-----+
    [admin@serverA ~]$ ls ./.ssh/
    id_rsa  id_rsa.pub
    

    在serverB上创建Centos用户

    [root@serverB ~]# useradd Centos
    [root@serverB ~]# echo "123456" | passwd --stdin Centos 
    Changing password for user Centos.
    passwd: all authentication tokens updated successfully.
    [root@serverB ~]# su - Centos 
    [Centos@serverB ~]$ 
    

    将serverA上的公钥传到以Centos用户身份登录的serverB上

    [admin@serverA ~]$ ssh-copy-id Centos@192.168.121.11
    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/admin/.ssh/id_rsa.pub"
    /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
    /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
    Centos@192.168.121.11's password:       //输入Centos用户的密码
    
    Number of key(s) added: 1
    
    Now try logging into the machine, with:   "ssh 'Centos@192.168.121.11'"
    and check to make sure that only the key(s) you wanted were added.
    

    用Centos用户身份登陆serverB,查看传输的公钥

    [Centos@serverB ~]$ ls .ssh/
    authorized_keys
    [Centos@serverB ~]$ cat .ssh/authorized_keys 
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDZ5RO52kT73h9B9P1ttUQSfF5eVR+sJ7JG/XTmdtYDKM5Tmb9djUVMrzfzjRAcX8hdBRzcZqXVtg7VozVuJefsewmk+eu4dXTZfr0BbeaWuIj8lQRx9mMcqQSXfi41OZnYOKYfM/GQIGVWm99wP2JJwM6CUgoLZyxOVibnScTjoJNbW0I35BxuWg3MzVLImW8DxSl8USlN1RjBM6BaxGLSn1VpjPpyiolUDwGtOfCqF6iKOhhqRBiH8RiOsxEvZ+z5wwYT3uy/OvistRH+ur/3knplajON5H3ds9+9jQkNxk2w6fJv2bSMrKsOGsv6txeQoRw066LkdHRVuc4bjT4ZOCp7FZVAq4A9xWK51/lrbMWL2E7tt+JNsCR0NhJWLE28bzsdXP6/jo+VGxjtlMiLMkTq2h77eYDTlnZ0QS86OsD1yRBEsbIsLBTuMZXY3wSq67cGduUnc99Kye0EdYgam5PcSMBq86YIIq8eehg18QnVJo2yl8Q4pNLmEcqrXJM= admin@serverA
    

    测试在serverA上用Centos用户登陆serverB

    [admin@serverA ~]$ ssh Centos@192.168.121.11
    Last login: Mon Dec 14 21:42:15 2020
    [Centos@serverB ~]$ 
    

    在serverA上修改登陆serverB相关参数,简化快速登陆serverB

    首先在~/.ssh/目录下创建config文件

    [admin@serverA ~]$ cd ~/.ssh/
    [admin@serverA .ssh]$ touch config
    [admin@serverA .ssh]$ ls
    config  id_rsa  id_rsa.pub  known_hosts
    

    config文件的配置内容如下:

    [admin@serverA .ssh]$ vim config 
    [admin@serverA .ssh]$ cat config 
    Host serverB
    Hostname 192.168.121.11
    Port 22
    User Centos
    
    • Host为服务器的名称,输入登录命令时使用,登录只需要用serverB即可
    • Hostname为服务器的ip地址
    • Port为ssh的端口
    • User为服务器的用户名

    配置好相关参数之后,需要给config修改权限,否则会报错

    [admin@serverA ~]$ ssh serverB 
    Bad owner or permissions on /home/admin/.ssh/config        //权限没修改就会登录报错
    [admin@serverA ~]$ ll ~/.ssh/config 
    -rw-rw-r--. 1 admin admin 57 Dec 14 14:01 /home/admin/.ssh/config
    [admin@serverA ~]$ chmod 600 ~/.ssh/config 
    [admin@serverA ~]$ ll ~/.ssh/config 
    -rw-------. 1 admin admin 57 Dec 14 14:01 /home/admin/.ssh/config
    

    最后就可以简化登陆serverB了

    [admin@serverA ~]$ ssh serverB 
    Last login: Mon Dec 14 21:57:35 2020 from 192.168.121.10
    [Centos@serverB ~]$ hostname
    serverB
    [Centos@serverB ~]$ 
    
  • 相关阅读:
    【黑金动力社区】【原创博文集锦】《Verilog HDL那些事儿》导读
    [黑金原创教程][连载]关于《iBoard 电子学堂》的学习及进阶方式
    发布《iBoard 电子学堂》DEMO代码
    Cyclone III中LVDS的设计
    [黑金原创教程][连载][iBoard 电子学堂][第八卷 设计任意波发生器]第三篇 直接数字合成(DDS)原理
    专业级FPGA视频图像处理开发板发布
    [黑金原创教程][连载][iBoard 电子学堂][第〇卷 电子基础]第二篇 电路图与印刷电路板
    [黑金原创教程][连载][iBoard 电子学堂][第八卷 设计任意波发生器]第一篇 iBoard 任意波发生器简介
    [黑金原创教程][连载][iBoard 电子学堂][第〇卷 电子基础]第一篇 认识电子元器件
    ucgui 在《iBoard 电子学堂》上的移植
  • 原文地址:https://www.cnblogs.com/itwangqiang/p/14132965.html
Copyright © 2020-2023  润新知