CentOS SSH无密码登录的配置

 更新时间:2016年10月22日 11:15:58   作者:aaron428  
本篇文章主要介绍了CentOS SSH无密码登录的配置,避免了繁琐的密码验证,有需要的朋友可以了解一下。

配置SSH无登陆验证,在很多场景下是非常方便的,尤其是在管理大型集群服务时,避免了繁琐的密码验证,在安全级别越高的服务器上,通常密码的设置更复杂,配置SSH,不仅可以用密钥保证节点间通信的安全性,同时也降低了频繁输入密码登陆的耗时,大大提高了管理效率。

原理简介

为了便于理解,假设需要在hadoop148这台机器上可以通过无密码登录的方式连接到hadoop107上。

首先在 hadoop148上生成一个密钥对,包括一个公钥和一个私钥,并将公钥复制到hadoop107上。

然后当 hadoop148通过SSH连接hadoop107机器时, hadoop107机器 就会生成一个随机数并用 hadoop148的公 钥对随机数进行加密,并发送给 hadoop148。

最后 hadoop148收到加密数之后再用私 钥解密,并将解密数回传给hadoop107, hadoop107确认解密数无误之后就允许hadoop148不 输入密码进行连接了

配置

具体步骤

1 、 登录hadoop148,执行命令 ssh-keygen -t rsa 之后一路回 车,查看刚生成的无密码钥对: cd .ssh 后 执行 ll

2 、把 id_rsa.pub 追加到授权的 key 里面去。 执行命令 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys

3 、修改权限: 执行 chmod 600 ~/.ssh/authorized_keys

常见问题

问题现象:

hadoop148机器已经生产rsa密钥

且已经将public key添加到serverB机器/root/.ssh/authorized_keys

但是ssh root@hadoop107机器时仍然需要输入密码,即无密码认证失败,

分析与处理: 

第一步:查看权限

用ssh -v debug访问,日志如下,但是从日志看不到失败原因,只知道在用publickey认证时,对端没有reply;

再查看/var/log/secure日志

发现所有用户的HOME目录应该是700权限,否则会引起很多问题,这个问题同样是由于这个原因

最终,执行chmod 700 root后解决

关于权限问题总结如下:

1) .ssh目录的权限必须是700

2) 用户目录的权限必须是700,比如我是用root用户操作的,则/root的权限必须是700

3) .ssh/authorized_keys文件权限必须是600

第二步:查看安全上下文

如果通过改变权限还不能解决问题,可以尝试如下方法:

首先用ls -laZ检查了一下.ssh目录,果然不是ssh_home_t,则需要使用restorecon命令对.ssh目录的context进行恢复。命令是:restorecon -r -vv /root/.ssh

第三步:分析/var/log/audit/audit.log日志

修改目录用户权限

chown -R root.root /root

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Linux下Makefile的编写与使用详解

    Linux下Makefile的编写与使用详解

    大家好,本篇文章主要讲的是Linux下Makefile的编写与使用详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • centos6.5中用yum方式安装php5.4与apache2.2的步骤

    centos6.5中用yum方式安装php5.4与apache2.2的步骤

    相信大家都知道lamp的安装配置,最麻烦的是apache和php,网上关于apache和php的安装配置有很多的相关文章,本文通过针对版本进行详细的介绍,文章主要介绍的是centos6.5中用yum方式安装php5.4与apache2.2的步骤,感兴趣的朋友们可以参考学习。
    2016-10-10
  • Linux 文件内容相关命令使用汇总

    Linux 文件内容相关命令使用汇总

    Linux操作系统有很多强大的文件内容相关命令,这些命令可以让您查看、分析和编辑文件。其中,最基本和常用的命令包括cat、more、less和head/tail等。除了这些基本命令之外,grep和find命令也是文件搜索和过滤方面的有力工具。
    2023-04-04
  • Linux中如何通过端口号查找进程号

    Linux中如何通过端口号查找进程号

    这篇文章主要介绍了Linux中如何通过端口号查找进程号问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Linux环境使用g++编译C++方法总结

    Linux环境使用g++编译C++方法总结

    本篇文章给大家分享了在Linux环境中用g++编译C++的方法以及相关实例代码分享,有兴趣的朋友学习下。
    2018-03-03
  • linux实现除了某个文件或某个文件夹以外的全部删除

    linux实现除了某个文件或某个文件夹以外的全部删除

    下面小编就为大家带来一篇linux实现除了某个文件或某个文件夹以外的全部删除。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • 记一次Centos服务器被挂马的抓马经历

    记一次Centos服务器被挂马的抓马经历

    这篇文章主要介绍了记一次Centos服务器被挂马的抓马经历分享,非常不错,具有参考借鉴价值,需要的朋友参考下
    2017-01-01
  • Linux系统(CentOS7安装)安装JDK8的教程详解

    Linux系统(CentOS7安装)安装JDK8的教程详解

    这篇文章主要介绍了Linux系统(CentOS7安装)安装JDK8的教程,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • Linux Centos7下生成https自签名证书

    Linux Centos7下生成https自签名证书

    这篇文章主要为大家详细介绍了Linux Centos7下生成https自签名证书的相关知识,文中通过示例图片进行了简单讲解,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11
  • linux轻量级 Web 服务器

    linux轻量级 Web 服务器

    linux轻量级 Web 服务器...
    2007-11-11

最新评论