Raid
如何覆蓋 grsec?
最近重新啟動後,我有一對伺服器現在無法監控它們的磁碟狀態。納吉奧斯報告:
HP RAID Array UNKNOWN Error: No controllers detected. -/-/- (LD : [])
我在主機上手動執行檢查時遇到同樣的錯誤。當我這樣做時,每當我手動執行該檢查時,核心日誌都會顯示以下內容:
Apr 8 17:00:00 www.example.org kernel: [12345.000000] grsec: From 10.11.12.13: denied use of iopl() by /opt/hp/hpacucli /hpacucli.bin[hpacucli.bin:666] uid/euid:0/0 gid/egid:0/0, parent /bin/bash[bash:777] uid/euid:0/0 gid/egid:0/]
hpacucli 是用於與硬體 RAID 控制器互動並收集諸如磁碟狀態之類的東西的工具。它使用 iopl() 也就不足為奇了。grsec文件建議這是由
kernel.grsecurity.disable_priv_io
但 sysctl 說密鑰是未知的,我似乎也無法設置它。有沒有辦法改變它以允許 hpacucli 訪問 iopl() 而不必說重建到非 grsec 核心?
hpacucli
這些天 你不應該使用。
正確的現代工具是hpssacli
.此外,還有更有效的方法來檢查硬體 RAID 控制器狀態。您正在執行什麼作業系統/發行版/版本?您是否安裝了其他管理代理?
具有諷刺意味的是,這適用於我們的其他 HPraid 主機的原因是它們執行的是較新版本的 hpacucli,顯然不使用 iopl()。在這些舊主機上升級 hpacucli 解決了這個問題。
如何選擇性地允許 iopl() 的謎團仍然存在。也許再過一天。