由于linux上的openssh的版本已太老,服务器要确保安全必须对openssh升级,在selinux开启的情况下openssh升级到9.0后ssh连接有可能提示Access Denied,这种情况下一般是selinux拦截了sshd。最简单直接解决ssh无法连接的方法就是关闭selinux,但是selinux对服务器的安全非常重要,一般情况下不要关闭。那在selinux开启的情况下又怎么处理?
解决方法:先查看系统实时日志,tail –f /var/log/messages,一般有报错提示,“localhost sshd[19802]: error: Could not get shadow information for admin…”,这个要先去/etc/ssh/sshd_config下把UsePAM改为yes,然后到/etc/pam.d/sshd下把内容修改为
auth required pam_sepermit.so
auth include password-auth
account required pam_nologin.so
account include password-auth
password include password-auth
session required pam_selinux.so close
session required pam_loginuid.so
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
这是因为linux系统中pam_stack.so这个库已经不再使用,需要修改/etc/pam.d/sshd才行。修改完成重启sshd即可。
注:centos6和7都是这么操作,不要往sshd_config更改别的或增加别的配置,会导致重启异常。重启后连接不上如centos6执行命令service sshd restart后连接中断这个是sshd关闭后重启失败,需要到虚拟机中重新启动就可以了。
原文地址:https://blog.csdn.net/u011439436/article/details/128020734
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_46676.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!