• ssh免密登陆


    问题描述

    今天配置SSH免密登录时,使用 ssh-keygen 命令成功生成了公钥和私钥,并且也执行了 ssh-copy-id 机器地址将公钥添加到了服务器的authorized_keys文件中。紧接着用 service sshd restart 命令重启了SSH服务,但当执行 ssh 登录命令时仍然需要密码。 
    这里写图片描述

    解决方案

    一、查看系统安全日志,定位问题

    执行 sudo cat /var/log/secure 查看系统的安全日志,然后再安全日志中看到SSH登录过程中提示了如下错误:

    Authentication refused: bad ownership or modes for directory /home/skyler 
    这里写图片描述

    二、解决SSH Authentication Refused问题

    从日志中我们已经分析出了错误的具体原因,提示我们 /home/skyler 目录的属主和权限配置不当。然后上网查找资料得知:SSH不希望home目录和~/.ssh目录对组有写权限,于是执行以下命令进行更改:

    chmod g-w /home/skyler

    执行完成后,重启SSH服务再次执行ssh 登录时发现已经实现了免密登录,问题解决: 
    这里写图片描述

    扩展说明

    SSH进行认证的过程中除了对用户目录有权限要求外,对 .ssh 文件夹和 authorized_keys 文件同样也要限制,如果日志中提示这两个的问题,可以通过如下方式进行修改:

    chmod 700 /home/skyler/.ssh 
    chmod 600 /home/skyler/.ssh/authorized_keys

    SSH登录过程如果出现问题除了查看上述 /var/log/secure 文件外,还可以通过在 ssh 命令后添加调试参数 -vvv 来查看调试信息(eg: ssh -vvv localhost 便会以调试模式来执行本次ssh命令),以此来更好的定位问题。

  • 相关阅读:
    Windows Console 程序中定时器的使用
    AT91SAM7SE应用 IRQ
    AT91SAM7SE应用 PIT 周期中断(1ms)
    AT91SAM7SE应用 UART
    Modelsim图像处理算法的仿真——图像数据操作
    按照一定的间隔,从视频中截图并保存(OpenCV)
    MacBook Pro下关闭全局网络代理
    jmeter的HTTP取样器设置重连的次数
    【C#】比较 Random 与 RandomNumberGenerator 生成随机字符串
    KendoGrid基础
  • 原文地址:https://www.cnblogs.com/aisa/p/8661187.html
Copyright © 2020-2023  润新知