zoukankan      html  css  js  c++  java
  • ssh免密钥登陆

    ssh免密钥登陆

    描述:主机a免密钥登陆主机b,以a主机root用户免密钥登陆b主机root用户为例,其他用户同理。

    1.在a主机上创建公钥和密钥

    1 ssh-keygen

    一路回车

    查看生成的密钥对:

    1 # ll /root/.ssh/
    2 total 16
    3 -rw-------. 1 root root  393 May 24 15:30 authorized_keys 
    4 -rw-------. 1 root root 1679 May 24 15:10 id_rsa     #私钥
    5 -rw-r--r--. 1 root root  393 May 24 15:10 id_rsa.pub #公钥
    6 -rw-r--r--. 1 root root  396 May 24 17:21 known_hosts

    2.把公钥复制到远程主机上

    2.1方法1:

    1 # ssh-copy-id -i /root/.ssh/id_rsa.pub  root@b主机ip

    ssh-copy-id 把密钥追加到远程主机的 .ssh/authorized_key 上,但是这种方法需要输入b主机root密码。

    2.2方法2:不需要输入b主机用户密码

    查看a主机公钥内容:

    1 # cat id_rsa.pub
    2 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+Mte708BSEoyFdu1lShkj00FRVFmQwf9H++1KtbAfxuL09LlUPIN3W/GfAK7I3aQk19n5tfYZGVZc1mABuQGFjOq0nBFuWLpCcWU/8X2d496MF0gsxNcXxa5+YXqjulIJdGkIvDKuQJalnsbXP1M3rKbKptxmUyrQxyC7pVsXk6ccko1fZRMBLR1Vf7A8OsUfh/NWF16YtZU14SqpD57/XVzhvp0emprj4ESAkWnpMZZP7g/NUb7R1kNdhXUTBTNQaJjyK8EnGlD/7f8GuMSAftVYnId/GTTywFbOvZ733WrS0cMRl36XZGHmezCEu2D2uS01tumMDi3JfqJKPsGf root@a

    复制粘贴到b主机.ssh/authorized_key文件里,若不存在手动创建:

    1 # cat authorized_keys
    2 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+Mte708BSEoyFdu1lShkj00FRVFmQwf9H++1KtbAfxuL09LlUPIN3W/GfAK7I3aQk19n5tfYZGVZc1mABuQGFjOq0nBFuWLpCcWU/8X2d496MF0gsxNcXxa5+YXqjulIJdGkIvDKuQJalnsbXP1M3rKbKptxmUyrQxyC7pVsXk6ccko1fZRMBLR1Vf7A8OsUfh/NWF16YtZU14SqpD57/XVzhvp0emprj4ESAkWnpMZZP7g/NUb7R1kNdhXUTBTNQaJjyK8EnGlD/7f8GuMSAftVYnId/GTTywFbOvZ733WrS0cMRl36XZGHmezCEu2D2uS01tumMDi3JfqJKPsGf root@a

    3.免密钥登陆

    ssh b主机ip

    4.问题

    由于不知道root用户密码,采取的第二种方法,发现还是无法免密钥登陆:

    4.1首先,检查权限,并没有问题:

    .ssh目录,以及/home/当前用户 需要700权限:

    1 chmod 700 ~/.ssh
    2 chmod 700 /home/当前用户

    b主机.ssh目录下的authorized_keys文件需要600或644权限:

    1 chmod 644 ~/.ssh/authorized_keys

    4.2检查b主机/etc/ssh/sshd_config配置文件,根据实际情况改参数

    修改以下参数后,可以通过root免密钥登陆:

    PermitRootLogin no
    改成:
    PermitRootLogin yes

    注意:默认此参数是yes,由于有人改动,所以ssh密钥失败。

    记得一定要重启sshd服务:

    1 # /etc/init.d/sshd restart

    此时用a主机root用户通过ssh免密钥登陆b主机root用户了。。。

  • 相关阅读:
    应用程序框架实战三十七:Util最新代码更新说明
    应用程序框架实战三十六:CRUD实战演练介绍
    应用程序框架实战三十五:服务概述
    应用程序框架实战三十四:数据传输对象(DTO)介绍及各类型实体比较
    应用程序框架实战三十三:表现层及ASP.NET MVC介绍(二)
    应用程序框架实战三十:表现层及ASP.NET MVC介绍(一)
    应用程序框架实战二十九:Util Demo介绍
    应用程序框架实战二十八:前端框架决择
    Util应用程序框架公共操作类(十二):Lambda表达式公共操作类(三)
    应用程序框架实战二十六:查询对象
  • 原文地址:https://www.cnblogs.com/yangjianan/p/9084271.html
Copyright © 2011-2022 走看看