AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 622913
Accepted
Mojo
Mojo
Asked: 2014-08-21 15:29:21 +0800 CST2014-08-21 15:29:21 +0800 CST 2014-08-21 15:29:21 +0800 CST

审计表示无事可做,但 puppet 无法在 SELinux 强制下运行

  • 772

我决心让我的 puppet master 运行 SELinux 设置为强制执行。如果我允许它,它运行良好。

我在 RHEL 7 上,使用 systemd、apache2、passenger 4 和 puppet 3。

我已经使用审计日志和audit2allow 完成了几次通过,以制作覆盖审计日志的semodule。(而且这是一团糟,乘客从 apache 模块运行,作为 apache 用户,执行 puppet 主代码。)

这是一个全新的配置,所以 puppet manifest 是一个默认的空节点,什么都不做。

如果我在远程机器上运行“puppet agent -t”,它会以 setenforce 0 成功。审计日志非常空。(audit2allow 报告“无事可做。”)

但是,如果我将 setenforce 设为 1,我会得到这些:

Aug 20 23:14:28 puppet002 puppet-master[1544]: Permission denied - /etc/puppet/auth.conf
Aug 20 23:14:29 puppet002 puppet-master[1544]: Permission denied - /etc/puppet/manifests/site.pp on node agentserver.example.com

我尝试更改 /etc/puppet/* 上的所有权,并且 se 上下文看起来不错:

[root@puppet002 log]# cd /etc/puppet
[root@puppet002 puppet]# ls -lZ
-rw-r--r--. apache apache system_u:object_r:puppet_etc_t:s0 auth.conf
-rw-r--r--. apache apache system_u:object_r:puppet_etc_t:s0 fileserver.conf
drwxr-xr-x. apache apache system_u:object_r:puppet_etc_t:s0 manifests
drwxr-xr-x. apache apache system_u:object_r:puppet_etc_t:s0 modules
-rw-r--r--. apache apache system_u:object_r:puppet_etc_t:s0 puppet.conf

有任何故障排除建议吗?

[编辑]:附加信息,按照关闭“dontaudit”并重复练习的建议,错误消息发生了变化。我的 $ssldir 是 /var/lib/puppet/ssl 而 $logdir 是 /var/log/puppet,这使得这些错误很有趣:

puppet-master [3210]:权限被拒绝 - /etc/puppet/ssl

puppet-master [3210]:(/File[/etc/puppet/ssl]/ensure)从不存在更改为目录失败:无法在确保上设置“目录”:权限被拒绝 - /etc/puppet/ssl

puppet-master [3210]:无法准备执行:初始化时出现 3 次失败:文件 [/etc/puppet/ssl]:从不存在更改为目录失败:无法在确保上设置“目录”:权限被拒绝- /etc/puppet/ssl;文件[/etc/puppet/manifests]:从不存在更改为目录失败:无法在确保上设置“目录”:权限被拒绝 - /etc/puppet/manifests;文件 [/var/lib/puppet/log]:从 0755 更改为 0750 失败:无法在 /var/lib/puppet/log 上设置模式 755:权限被拒绝 - /var/lib/puppet/log

当然,所有作品都在 Permissive 中。:(

phusion-passenger
  • 1 1 个回答
  • 1062 Views

1 个回答

  • Voted
  1. Best Answer
    Mojo
    2014-08-22T09:53:08+08:002014-08-22T09:53:08+08:00

    为了更深入地解决这个问题,我setroubleshoot-server在我的 puppet master 上安装了这个包。我没有将机器置于 Permissive 模式,而是将其置于 Enforcing 状态。然后我将我的审计日志输入到 sealert 中,得到了这个 gem:

    found 3 alerts in /var/log/audit/audit.log
    --------------------------------------------------------------------------------
    
    SELinux is preventing /usr/bin/ruby from search access on the directory .
    
    *****  Plugin catchall (100. confidence) suggests   **************************
    
    If you believe that ruby should be allowed search access on the  directory by default.
    Then you should report this as a bug.
    You can generate a local policy module to allow this access.
    Do
    allow this access for now by executing:
    # grep ruby /var/log/audit/audit.log | audit2allow -M mypol
    # semodule -i mypol.pp
    

    实际上,这允许 puppet master 在 Enforcing 模式下成功运行。

    我的理论是,在 Enforcing 模式下,Puppet master 被触发到触发额外访问警报的不同代码路径,而在 Permissive 模式下没有发现。

    • 1

相关问题

  • Nginx 404 使用 Phusion 乘客部署 Ruby on Rails 应用程序

  • 为什么我在乘客下的 Rails 应用程序偶尔会停止运行?

  • 乘客 + Nginx => 502 错误网关

  • 在 Apache + Passenger 上运行 Ruby on Rails 应用程序 == 占用大量内存

  • 使用Passenger时使用Nginx over Apache with Rails的优缺点是什么

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve