在 Redhat8 上通过 selinux/pam 阻止的 snmp 远程重新启动服务

在 Redhat8 上通过 selinux/pam 阻止的 snmp 远程重新启动服务

我在通过 snmp 远程启动/停止/重新启动服务时遇到一些问题。

它似乎在许可模式下的 SElinux 上工作得很好,但在强制模式下它会失败并出现这种类型的错误消息(如 /var/log/secure 中所示)

Aug 17 15:29:43 tester2-RHEL8 sudo: PAM audit_log_acct_message() failed: Permission denied
Aug 17 15:29:43 tester2-RHEL8 sudo:  testuser : PAM account management error: Permission denied ; TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/sbin/service router stop

该消息本身毫无用处

在 /var/log/messages 中命令似乎已成功执行

Aug 17 15:29:43 tester2-RHEL8 snmpd[1501]: RTRSnmp : stopping RTR service
Aug 17 15:29:43 tester2-RHEL8 snmpd[1501]: RTRSnmp : starting external process "sudo service router stop &" as user testuser
Aug 17 15:29:43 tester2-RHEL8 snmpd[1501]: RTRSnmp : external process "sudo service router stop &" exited with status 0

这是 snmpd.conf 文件

###########################################################################
snmpd.conf

###########################################################################
# SECTION: Access Control Setup

# SNMP v1 and v2
rocommunity public
rwcommunity testuser

# SNMP v3
createUser testuser SHA testusersnmp
rouser testuser

createUser testuserrw SHA testusersnmp
rwuser testuserrw

###########################################################################
# SECTION: Trap Destinations

trapcommunity trapdest
trap2sink 127.0.0.1 testdir

doNotRetainNotificationLogs yes

###########################################################################
# SECTION: System Information Setup

syslocation s-RTR
syscontact [email protected]

###########################################################################
# SECTION: RTR SNMP Module

dlmod S_RTR /home/testuser/release/release_1/bin/libRTRSnmpAgent.so

rtr_ip 127.0.0.1
rtr_port 4500
rtr_retry_period 10
rtr_end_system_id 000000000
rtr_service_user testuser
rtr_service_start sudo service router start
rtr_service_stop sudo service router stop &
rtr_service_restart sudo service router restart &

我已经厌倦了,最终也只是删除了无声的否认

semodule -DB

即使根据 sealert 中的建议添加 selinux 策略,这也被证明是不成功的

我已经创建了全新安装,现在又回到了上面的权限被拒绝错误,除了 SElinux 通过 snmp 远程使用此命令有问题之外,几乎不知道根本原因是什么:

snmpset -v3 -u testuserrw -l authNoPriv -a SHA -x AES -A password -X password 192.168.0.122 "0.0.0.0.0.0.40140.0.0.0.0.0" i 0

相同的命令将通过 ssh 运行以获取更多信息。

我不知道从这里可以去哪里,甚至一些关于如何增加日志记录的信息也会有很大的帮助,因为我在 Redhat 文档中没有看到任何有关它的信息。

干杯,

相关内容