我在通过 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 文档中没有看到任何有关它的信息。