Rocky Linux 8.6下Rstudio Server开源版2022.07.2 PAM acct_mgmt失败求解决
解决Rocky Linux 8.6部署RStudio Server时PAM acct_mgmt失败问题
问题现象
在Rocky Linux 8.6部署RStudio Server Open Source 2022.07.2时,出现PAM acct_mgmt 权限拒绝错误,pamtester测试结果如下:
[user@super_cool_server downloads]$ pamtester -v rstudio aaron.oster authenticate acct_mgmt open_session close_session pamtester: invoking pam_start(rstudio, aaron.oster, ...) pamtester: performing operation - authenticate Password: pamtester: successfully authenticated pamtester: performing operation - acct_mgmt pamtester: Permission denied
跳过acct_mgmt直接执行会话操作可成功:
[user@super_cool_server downloads]$ pamtester -v rstudio aaron.oster authenticate open_session close_session pamtester: invoking pam_start(rstudio, aaron.oster, ...) pamtester: performing operation - authenticate Password: pamtester: successfully authenticated pamtester: performing operation - open_session pamtester: sucessfully opened a session pamtester: performing operation - close_session pamtester: session has successfully been closed.
补充信息:CentOS 7上运行RStudio Server 1.2无登录问题,但在Rocky Linux上部署该版本同样无法运行,且未找到官方文档提及的/etc/pam.d/common-account文件。
解决步骤
1. 修正RStudio的PAM配置文件
Rocky Linux 8(基于RHEL 8)不再使用common-*系列PAM配置文件,取而代之的是system-auth和password-auth。需确保/etc/pam.d/rstudio包含正确的account验证规则:
编辑/etc/pam.d/rstudio文件,添加或修改以下行:
account include system-auth
完整配置示例:
auth include password-auth account include system-auth session include system-auth
2. 检查用户账号状态
- 确认用户未被锁定:执行
passwd -S aaron.oster,输出中不应出现L标记。 - 确认用户拥有有效登录Shell:查看
/etc/passwd中该用户的Shell字段,需为/bin/bash这类允许登录的Shell,而非/sbin/nologin。 - 确认用户不在
/etc/security/access.conf的拒绝列表内,或已被加入允许列表。
3. 检查SELinux设置
Rocky Linux默认启用SELinux,可能干扰PAM操作:
- 临时关闭测试:执行
setenforce 0,重新测试RStudio登录。若问题解决,需调整SELinux策略而非永久关闭:
执行ausearch -m avc -ts recent查看拒绝日志,再用audit2allow生成并安装自定义策略模块。
4. 验证配置并重启服务
修改配置后,重新用pamtester测试:
pamtester -v rstudio aaron.oster authenticate acct_mgmt open_session close_session
若所有操作均成功,重启RStudio Server:
systemctl restart rstudio-server
内容的提问来源于stack exchange,提问作者A-A-ron
相关产品推荐
相关产品推荐

