把ssh设置为无密码登录很简单,只需两步:

1、在本地创建公钥和私钥:

ssh-keygen -t rsa

2、然后把公钥上传到远程机器上:

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.41.132

正常情况下经这两步设置就可无密码登录了:

ssh 192.168.41.132

可是今碰到的问题是仍要输入密码,网上找了找资料,有说要 restorecon ,也有说要 chmod ,最终在 /var/log/audit/audit.log 中发现了问题:

# cat /var/log/audit/audit.log
...
type=AVC msg=audit(1417198093.916:14807): avc:  denied  { search } for  pid=1977 comm="sshd" name="/" dev=vdb1 ino=2 scontext=system_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=dir
...

这里报了 avc:  denied  { search } 的错误,属于SELinux安全性问题,解决该问题的方法是:

1、把 /var/log/audit/audit.log 文件中报错的行拷贝到临时文件 /tmp/error.txt :

# grep "avc:  denied  { search }" /var/log/audit/audit.log > /tmp/error.txt

2、执行下面的命令让系统自己找原因:

# audit2why -i /tmp/error.txt
type=AVC msg=audit(1417198093.916:14807): avc: denied { search } for pid=1977 comm="sshd" name="/" dev=vdb1 ino=2 scontext=system_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=dirWas caused by:Missing type enforcement (TE) allow rule.You can use audit2allow to generate a loadable module to allow this access.

3、按上面命令的输出说明,执行:

# audit2allow -i /tmp/error.txt -M local
******************** IMPORTANT ***********************
To make this policy package active, execute:semodule -i local.pp

4、按上面命令的输出说明,执行:

semodule -i local.pp

这样就解决了 avc:  denied  { search } 问题。

解决掉这个问题后,再执行ssh登录仍然需要输入密码。为此又查看了 /var/log/audit/audit.log 文件尾部,新发现了 avc:  denied  { getattr } 报错,解决方法同上面的1-4步。解决掉这两个报错后就可无密码登录了。

转载于:https://www.cnblogs.com/yang-wu/p/4131149.html

解决ssh无密码登录不成功的问题相关推荐

  1. linux服务器无密码登录不了,设置ssh无密码登录linux服务器的方法

    每次登录测试服务器,ssh登录总是需要输入密码.登录的少还行,登录的多了,多一行命令都是多余的. rsa认证登录方式 制作密钥对 在客户端(本地机器)终端下输入以下命令 ssh-keygen -t [ ...

  2. CentOS配置ssh无密码登录

    前提配置:使用root登录修改配置文件:/etc/ssh/sshd_config,将其中三行的注释去掉,如下: 然后重启ssh服务:service sshd restart.最后退出root,以下所有 ...

  3. CentOS配置ssh无密码登录的注意点

    前提配置:使用root登录修改配置文件:/etc/ssh/sshd_config,将其中三行的注释去掉,如下: 然后重启ssh服务:service sshd restart.最后退出root,以下所有 ...

  4. macos下如何配置ssh无密码登录

    macos下配置ssh无密码登录的过程与linux下配置ssh无密码登录的方式基本相同. 首先,创建一个用户.macos创建用户在"系统偏好设置>用户与群组中". 其次,通过 ...

  5. 老戚的黑科技之ssh无密码登录

    在使用ssh这个工具的时候,很多时候都需要输入密码,除了ssh,scp也远程拷贝文件时也需要输入密码,当操作的次数多了,免掉输密码的环节也就成了我一直想要实现的目标,以前实现过过一次,但那次之成功了一 ...

  6. CentOS系统实现SSH无密码登录的方法

    一.环境配置 1.服务端:CentOS release 5.3 IP:222.73.115.198 2.客服端:CentOS release 5.8 IP:192.168.4.244 二.配置SSH无 ...

  7. 学习笔记Hadoop(六)—— Hadoop集群的安装与部署(3)—— 配置ssh无密码登录

    三.配置ssh无密码登录 3.1.SSH SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立在应用层基础上的安全 ...

  8. SSH无密码登录:只需两个简单步骤 (Linux)

    最后更新 2017年4月8日 分类 最新文章 服务器安全 标签 RSA SSH Key 非对称加密 如果你管理一台Linux服务器,那么你就会知道每次SSH登录时或者使用scp复制文件时都要输入密码是 ...

  9. ssh无密码登录设置(centos6系统下实现)

    如以下操作还不能实现无密码登录的效果.可以从.ssh目录的所有者和所属组,和authorized_keys权限这两点上进行思考. 主机信息:192.168.116.132(客户端A)和 192.168 ...

最新文章

  1. springboot基于maven多模块项目搭建(直接启动webApplication)
  2. 软件研发的这些误区,你中了吗?
  3. 关于jquery的ajax编码的另类解决方案,巨简便
  4. android文件系统管理
  5. LevelDB 源码剖析(一)准备工作:环境搭建、接口使用、常用优化
  6. 算法-连续项的最大和问题(最大子数组问题)三种不同解法
  7. 第一百三十四期:MySQL分页查询方法及优化
  8. 详解Objective-C中委托和协议
  9. JQuery学习系列总结—菜单制作
  10. T-SQL 操作文件 具体解释
  11. poj 1164城堡问题(DFS)
  12. Scrivener for Mac如何自定义快捷键
  13. 关于JeeSite框架Shiro序列化漏洞修复解决方法
  14. 时间序列研(part14)--习题
  15. 计算机音乐出山,《出山》音乐
  16. 树莓派+摄像头实现监控功能
  17. 2021租房合同样板
  18. codeforces 129E/128C Games with Rectangle
  19. There was a problem confirming the ssl certificate: HTTPSConnectionPool(host=‘pypi.org‘,port=443)
  20. 静态内部类、静态变量的加载次数-理解静态内部类实现线程安全的单例模式

热门文章

  1. Golang Tips
  2. Linux技术学习路线图
  3. JS面向对象之创建对象
  4. Badboy录制测试脚本
  5. dede定义全局变量(include/common.inc.php)及调用方式
  6. ibatis和hibernate
  7. CVPR2020 夜间目标检测挑战赛冠军方案解读
  8. 代码安全检视方法有_在华为写了 13 年代码,都是宝贵的经验
  9. 《神经网络与深度学习》最新版!
  10. 博士笔记 | 周志华《机器学习》手推笔记第二章-模型评估与选择