不懂就问 使用 Linux 时出现 root 无法登录的问题,但普通用户可以登录

2020-05-08 09:18:38 +08:00
 SnailsGl

刚学不久 linux 。用的 centos7

root 用户登录会卡顿一下,然后重复登录。

情景再现:修改了普通用户的 .bashrc 和 source .bash-profile 后,所有账号无法登录(重复登录),然后进入了单用户模式,删除了刚刚修改的内容(期间使用过“mount –o remount,rw /”),然后普通用户就可以登录了。

问题: 1 、只有普通用户可以登录,root 用户无法登录,且登录时提示上次登录时间然后卡顿 1 分钟,循环登录; 2 、使用普通用户登录后,su 可以切换到 root 用户。但是输入密码后不会弹出[root@xxxx xxxx]# ,而是有光标一直在闪烁。必须 Ctrl + C 后才能弹出[root@xxxx xxxx]#

第一次发主题,如果不妥的地方,请指教。 有没有办法可以查看登录时的日志?报了什么错?

6270 次点击
所在节点    Linux
25 条回复
SnailsGl
2020-05-08 09:30:32 +08:00
我表达的不清楚吗?还是........现在是不影响使用,但是这个问题我想康康......
dandycheung
2020-05-08 09:33:23 +08:00
系统的登录策略限制了 root 用户直接登录了吧?
nicevar
2020-05-08 09:45:53 +08:00
检查一下 /etc/pam.d/login, 看是不是禁止 root 用户本地登录了
yorkyoung
2020-05-08 09:46:30 +08:00
编辑 /etc/gdm/custom.conf 文件,具体如下所示:

在 daemon 选项中修改 AutomaticLoginEnable=true,AutomaticLogin=root 

如果 daemon 下为空则添加:

AutomaticLoginEnable=true
AutomaticLogin=root 

如:

[daemon] 
AutomaticLoginEnable=true
AutomaticLogin=root
SnailsGl
2020-05-08 09:47:17 +08:00
@dandycheung /etc/ssh/sshd_config 中的 PermitRootLogin 吗?我已经设置为 yes 了。
vhwwls
2020-05-08 09:52:21 +08:00
@SnailsGl #5 不是,你看楼下的,在 pam 那里看一下,可能限制本地登录了,一般安装完成之后是不存在这个问题的,除非你瞎配置了什么东西。
SnailsGl
2020-05-08 09:58:05 +08:00
@nicevar
#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth substack system-auth
auth include postlogin
account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session include system-auth
session include postlogin
-session optional pam_ck_connector.so
session required /lib64/security/pam_limits.so
session required pam_limits.so

内容是这样的,我...........有点看不懂....搜的答案,emmm.....也看不太懂,没有找到详细的解释
是多了这一行吗?“auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
SnailsGl
2020-05-08 10:08:08 +08:00
@yorkyoung emmmmmm.....我这边好像没有 /etc/gdm 这个目录......
nicevar
2020-05-08 10:52:08 +08:00
@SnailsGl
session required /lib64/security/pam_limits.so
session required pam_limits.so
估计是这里出问题了, 这个库正常吗, 看一下 /var/log/secure 的日志, 如果只是测试系统,没什么数据, 可以先注释这两行试试
SnailsGl
2020-05-08 10:56:08 +08:00
@nicevar 哇偶,我刚发现有这个日志,准备贴出来就收到大佬的回复了 =w=。好像报了错
May 8 10:51:04 localdomain sshd[2462]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.101.21 user=root
May 8 10:51:04 localdomain sshd[2462]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
May 8 10:51:06 localdomain sshd[2462]: Failed password for root from 192.168.101.21 port 54908 ssh2
May 8 10:51:20 localdomain sshd[2462]: Accepted password for root from 192.168.101.21 port 54908 ssh2
May 8 10:51:20 localdomain sshd[2462]: pam_unix(sshd:session): session opened for user root by (uid=0)
May 8 10:51:46 localdomain sshd[2462]: error: Received disconnect from 192.168.101.21 port 54908:0:
May 8 10:51:46 localdomain sshd[2462]: Disconnected from 192.168.101.21 port 54908
May 8 10:51:46 localdomain sshd[2462]: pam_unix(sshd:session): session closed for user root
SnailsGl
2020-05-08 10:57:03 +08:00
@nicevar 这两行我注释了还是一样的错......
nicevar
2020-05-08 10:59:39 +08:00
@SnailsGl 你是 ssh 过去的,我以为你在本机操作, 看样子是你修改了 /etc/ssh/sshd_config 的 PermitRootLogin 没重启 ssh 服务吧
nicevar
2020-05-08 11:00:04 +08:00
@SnailsGl 不用注释了,我以为你是在本机操作,改回来
SnailsGl
2020-05-08 11:02:16 +08:00
@nicevar 本地登录也一样,登不上去......但是日志不同
May 8 11:00:54 localdomain login: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
May 8 11:00:54 localdomain login: ROOT LOGIN ON tty1
May 8 11:01:17 localdomain login: pam_unix(login:session): session closed for user root
dandycheung
2020-05-08 11:02:23 +08:00
@SnailsGl 你先验证一下本机登录是否正常,再用 ssh 登录看。
LeeLou
2020-05-08 11:06:47 +08:00
注释掉,可能需要重启 sshd 才生效。 当前的 ssh 登录窗口可以不关,避免出错了,当前这个还可以管理。重新开一个 ssh 登录窗口。su 切换到 root 的时候也有问题, 要 ctrl+c 停止了才能进到 root 的 shell,这里似乎是 bash profile 的问题
SnailsGl
2020-05-08 11:09:12 +08:00
@dandycheung 不行
本机登录提示:
Last login: Fri May 8 10:35:36 2020 from 本机地址。然后卡顿一会儿后,重复登录

远程登录提示:
Last failed login: Fri May 8 11:04:47 CST 2020 from 本机地址 on ssh:notty
There was 1 failed login attempt since the last successful login.
Last login: Fri May 8 11:00:54 2020
Connection closing...Socket close.
Connection closed by foreign host.
nicevar
2020-05-08 11:13:29 +08:00
@SnailsGl 不一样,本地是登陆验证通过的, 远程是直接被拒绝了, 我建议你重启一下操作, 因为可能你操作不当存在多种可能
SnailsGl
2020-05-08 11:23:11 +08:00
@LeeLou 我确实改动过 .bashrc 和 .bash_profile,现在注释了所有的改动,也还是有这个问题。改了.bashrc 是不是也影响到了.bash_profile ?现在我是两个文件全还原了.要不我
SnailsGl
2020-05-08 11:24:03 +08:00
@nicevar linux 主机已经重启了,本地登录不了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/669517

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX