小编MSc*_*ltz的帖子

pam_limits.so 为 sudo 制造问题

我的 tomcat 服务器在 centos 7 上运行时出现问题。总共有 7 个,设置相同。4 个最近已修补并重新启动,其余 3 个的正常运行时间约为 2 年。

当我做:

sudo -u tomcat ls /tmp
Run Code Online (Sandbox Code Playgroud)

我在新打补丁的服务器上收到错误,说明:

sudo: pam_open_session: Permission denied
sudo: policy plugin failed session initialization
Run Code Online (Sandbox Code Playgroud)

在未打补丁的服务器上,我可以执行命令。

/etc/security/limits 是相同的:

tomcat soft nofile 5000000
tomcat hard nofile 5000000
tomcat soft nproc  5000000
tomcat hard nproc  5000000
Run Code Online (Sandbox Code Playgroud)

我可以通过注释来规避错误:

/etc/pam.d/sudo:

session    required     pam_limits.so
Run Code Online (Sandbox Code Playgroud)

我不明白?

我找对地方了吗?


来自两者的 strace 看起来像:

失败:

strace -e setrlimit sudo -u tomcat ls /tmp
setrlimit(RLIMIT_NPROC, {rlim_cur=RLIM64_INFINITY, rlim_max=RLIM64_INFINITY}) = 0
setrlimit(RLIMIT_NPROC, {rlim_cur=1031015, rlim_max=1031015}) = 0
setrlimit(RLIMIT_NPROC, {rlim_cur=5000000, …
Run Code Online (Sandbox Code Playgroud)

pam sudo centos

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

centos ×1

pam ×1

sudo ×1