当SELinux将一个事件logging到我的CentOS 6系统上的审计日志中时,它将logging在纪元时间中,这在尝试排除故障时很麻烦。 有什么办法可以使用人类可读的date格式来logging这些事件吗? 我已经浏览了conf文件并search了一下,但似乎无法find任何东西。
我们正在将应用程序从Solaris迁移到Linux,并允许主用户通过使用RBACangular色来运行一些系统命令,如svccfg / svcadm(在redhat上的chkconfig)。 是否有可能,只使用SElinux(无sudo),允许一个普通的用户运行chkconfig off / on(基本上可以添加删除服务)? 我的方法是尝试创build一个具有相应SElinuxangular色的SElinux用户,该用户pipe理应用程序的域/types,并允许转换到运行chkconfig,tcpdump或任何其他通常仅限于root访问的系统实用程序所需的所有其他域。 到目前为止,我所有的尝试都失败了,所以我的第二个问题是在哪里可以find适用于这个特定问题的良好文档?
我正在CentOS 6.3机器上为我们的客户build立一个个人保pipe箱。 服务器将通过SFTP和基于PHP的专有HTTP服务进行访问。 这台机器将在我们的DMZ,所以它必须是安全的。 正因为如此,我有apache作为非特权用户运行,强化了apache,操作系统,PHP的安全性,在iptables中应用了大量的过滤,并应用了一些限制性的TCP包装器。 现在你可能已经怀疑这个人来了,SELinux也将被强制执行。 我正在设置PAM来使用MySQL,以便我的Web应用程序用户可以login。 这些用户都将在一个只能使用SSH的SFTP组中,用户将被连接到他们自己的“home”文件夹。 为了让这个SELinux希望文件夹有user_home_t标签。 父目录也只能由root用户写入。 如果这些限制不符合,SELinux将立即终止SSHpipe道。 需要通过http和SFTP访问的文件,所以我做了一个SELinux模块,允许Apache使用user_home_dir_t标签search/ attr /读/写等目录到目录。 由于sftp用户存储在MySQL中,我想在创build用户时设置其家庭目录。 这是一个问题,因为Apache没有对/ home目录的写入权限,只能由root来写,因为它需要保持SELinux和OpenSSH的快乐。 基本上我需要让Apache只做一些作为root的任务,而且只能在/ home中。 所以我需要以某种方式暂时提升权限,或让root用户为Apache执行这些任务。 我需要使用root权限来执行以下操作。 mkdir /home/userdir/ mkdir /home/userdir/userdir chmod -R 0755 /home/userdir umask 011 /home/userdir/userdir chcon -R -t user_home_t /home/userdir chown -R user:sftp_admin /home/userdir/userdir chmod 2770 /home/userdir/userdir 这将为用户创build一个家,现在我有一个想法,可以工作,克朗。 这意味着服务器需要检查每分钟没有家的用户,然后在创build用户时,界面会平均冻结30秒,然后才能确认我不喜欢的帐户。 有没有人知道是否可以用sudoers做些事情? 或者任何其他的想法,欢迎… 谢谢你的时间!
我有一个CentOS 6服务器,我试图让Apache Web服务器在目录中运行git pull 。 这个php文件很简单: <?php shellexec('cd /var/www/vhosts/domain;git pull'); 但是,当通过浏览器请求文件时, git pull命令不会运行。 暂时closuresSELinux运行setenforce 0允许它运行,但这不是一个安全的解决scheme。 / var / log / audit在请求文件时显示以下错误。 type=AVC msg=audit(1401182476.567:363184): avc: denied { read } for pid=11082 comm="ssh" name="known_hosts" dev=dm-0 ino=11272197 scontext=system_u:system_r:httpd_sys_script_t:s0 tcontext=unconfined_u:object_r:default_t:s0 tclass=file
我有一个通过Samba共享的文件夹和一个Docker容器,我想通过将它作为一个卷添加到Docker容器(是的,我知道这是不可移植的)来访问所述文件夹。 SELinux阻止容器访问该文件夹,因为该文件夹及其内容被标记为samba_share_t ,而不是svirt_sandbox_file_t 我知道smbd_t域可以访问一些SELinux标签(例如httpd_sys_content_t ,尽pipesesearch -s smbd_t –allow提供了一个完整的列表),但是svirt_sandbox_file_t不是其中的一个。 我看到了一些解决这个问题的方法: 通过networking访问容器中的samba共享(不需要在容器中安装samba,并且存在networking开销) 将文件夹及其内容svirt_sandbox_file_t为svirt_sandbox_file_t (防止Samba访问文件夹) 将该文件夹及其内容重新标记为public_content_rw_t (但也允许访问许多其他服务,我不想访问此文件夹) 创build一个策略,使svirt_lxc_net_t可以访问samba_share_t标签(由audit2allow生成,但可以让任何容器访问标记为samba_share_t的任何文件/文件夹) 我能想到的另一个select是用自己的标签创build自己的SELinuxangular色,只允许访问Samba和svirt(我以前没做过,但愿意尝试)。 我在这里错过了什么? 有没有更简单的方法来做到这一点?
我正在努力确定是否根据Redhat 6.8中的防火墙打开特定的端口 我想打开2222端口。 我已经尝试了以下内容: system-config-firewall,以sudo的身份运行,并将端口2222描述为要打开的特定端口: 然而,港口并不公开。 我通过尝试通过SSH连接到2222端口来testing。目前SSH运行在22端口上,而且我可以正常连接,但是当我configurationSSH通过2222运行时,使用/ etc / ssh /中sshd_config中的Port 2222 ,连接超时。 我知道SSHD被configuration为侦听该端口,因为我可以使用netstat来testing。 我也尝试过对/ etc / sysconfig / iptables进行各种编辑,包括添加下列规则: -I INPUT 9 -m state –state NEW -m tcp -p tcp –dport 2222 -j ACCEPT 和 -A INPUT -m state –state NEW -m tcp -p tcp –dport 2222 -j ACCEPT 每一个这些变化后,我执行sudo service iptables restart ,我无法连接。 […]
我想开始使用SELinux,并想知道在Apachestream量高的Web服务器上应该看到什么样的性能? <1%,5%,10%? 我们在讨论什么范围?
我试图在运行Apache 2.2.15和Perl 5.10.1的Red Hat Enterprise Linux 6.2 Web服务器上configurationSELinux,并连接到远程Oracle数据库。 Oracle 11.2g客户端已安装。 访问Oracle的PHP脚本正在工作,但Perl脚本不能。 当SELinux执行时,我尝试通过我的Web浏览器访问Perl脚本,Apache的错误日志显示这个消息: Can't load '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: libclntsh.so.11.1: cannot open shared object file: No such file or directory at /usr/lib64/perl5/DynaLoader.pm line 200. 奇怪的是,审计日志不logging任何相应的消息。 但是,当我将SELinux设置为permissive模式时,Perl脚本完美地工作。 这是libclntsh.so.11.1上的ls -lZ的输出: -rwxr-xr-x. oracle oracle system_u:object_r:textrel_shlib_t:s0 /path/to/oracle/product/11.2.0/client/lib/libclntsh.so.11.1 有没有人有任何build议来解决这个问题? 我希望能够通过SELinux运行Web服务器。 更新:在selinux设置为dontaudit之后,我在audit.log中获得了更多的输出。 但是,我使用audit2allow创build的模块不能安装。 semodule -i的输出是: semodule: Failed on cgi_oracle! cgi_oracle.te包含: module cgi_oracle […]
我有SELinux的问题。 setroubleshootbuild议启用mypol.pp与semodule -i mypol.pp所以Apache可以运行。 我运行build议的命令后,我不断得到: type=AVC msg=audit(1388119964.806:11): avc: denied { execute } for pid=2174 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3" dev=md0 ino=2228931 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_config_t:s0 tclass=file **** Invalid AVC allowed in current policy *** type=AVC msg=audit(1388120085.792:29): avc: denied { execute } for pid=2298 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3" dev=md0 ino=2228931 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_config_t:s0 tclass=file **** Invalid AVC allowed in current policy *** type=AVC msg=audit(1388120159.57:37): […]
当有人发送电子邮件到我的服务器,例如 [email protected] 我想它pipe道到一个PHP脚本。 所以在我的 /etc/aliases 文件我有: somestringthatisnotnecessarilyauser: "|/path/to/php/script.php" 在禁用SELinux的情况下,它将电子邮件完美地发送到PHP脚本。 启用SElinux后,maillog出现了一个权限错误: local[19660]: fatal: execvp /path/to/php/script.php: Permission denied 我对SELinux相当陌生,但是我把这个问题归咎于SELinux,因为在禁用的时候,它工作的很好。 有谁知道什么semanage命令,或其他政策,我需要申请与SELinux启用这个工作? 操作系统是Centos6.5 64位 这是什么/var/log/audit/audit.log发送电子邮件地址时说: type=AVC msg=audit(1395174916.444:476603): avc: denied { search } for pid=25396 comm="local" name="web" dev=dm-0 ino=522246 scontext=unconfined_u:system_r:postfix_local_t:s0 tcontext=unconfined_u:object_r:httpd_sys_content_t:s0 tclass=dir type=SYSCALL msg=audit(1395174916.444:476603): arch=c000003e syscall=59 success=no exit=-13 a0=7feaddb404a0 a1=7feaddb40470 a2=7feaddb3b2d0 a3=7fffa4fe93d0 items=0 ppid=21187 pid=25396 auid=500 uid=99 gid=99 euid=99 suid=99 […]