相關概念安全
系統支持網絡
# /etc/rc.conf[.local] auditd_enable="YES" # /usr/src/sys/amd64/conf/MyKernel options AUDIT
配置session
all all #匹配全部事件類別 aa authentication and authorization #認証 ad administrative #系統管理行爲 ap application #應用程序定義的行爲 cl file close #關閉文件相關的系統調用 ex exec Audit program execution #程序運行 fa file attribute access #文件屬性查看,即 stat 之類的系統調用 fc file create #文件建立 fd file delete #文件冊除 fm file attribute modify #文件屬性更改 fr file read #文件防問/讀取 fw file write #文件更改或寫入 io ioctl #針對 ioctl 系統調用 ip ipc #進程間通訊,包括 POSIX 與 SYSTEM V 兩類 lo login_logout #系統登入與登出 na non attributable #無屬主事件,即登錄以前的行爲,如失敗的登錄嘗試等 no invalid class #無效事件,無關歸類的事件 nt network #網絡請求與接受事件 ot other #其它小几率事件 pc process #審計進程的行爲,如某進程調用 exec 類系統調用執行了哪些額外操做
# 留空 表示記錄成功或失敗的事件
# + 表示僅記錄執行成功的事件
# - 表示僅記錄執行失敗的事件
# ^ 表示記錄既沒有返回成功也沒有返回失敗的事件
# ^- 沒有返回失敗信號的事件
# ^+ 沒有返回成功信號的事件
# 以上規則一樣適用於 audit_control 文件中的 flags 與 naflags 字段
John:lo,+ex:no #對 John 用戶的登入登出及成功執行的程序進行審計;沒法歸類的事件不審計 www:fc,+ex:no #對 www 用戶的文件建立與成功執行程序事件進行審計;沒法歸類的事件不審計
dir:/var/audit #存放審計日誌的目錄 dist:off #當設定爲 on 或 yes 時,全部審計日誌文件都會在 /var/audit/dist 下建立更連接,供 auditdistd 使用,經過網絡進行安全的分佈式存儲 flags:lo,aa #指定對全部用戶都審計的事件類別 host:10.1.1.2 #指定主機名稱 或 IP,追加在每條審計記錄的 header 以前;若使用主機名,在 /etc/hosts 中靜態添加,不要依靠 DNS naflags:lo #指定對哪些類別中的沒法斷定執行主體的事件進行審計 minfree:5 #存放日誌的目錄所在文件系統須要爲其它應用保留的空間百分比,如 5 表明預留 5% policy:cnt,argv #全局策略參數(cnt:某個事件審計失敗時継續運行,argv:) filesz:10M #指日誌大小上限,0 表示不限制;達到指定大小時,會建立一個新文件継續記錄,可使用的單位:B(Bytes)、K(Kilobytes)、M(Megabytes)、G(Gigabytes),指定的值小於 512K 時,會被忽略 expire-after:60d AND 1G #指定審計日誌失效條件,能夠爲時間(單位:y/d/h/s)或 size (單位:G/M/K/B)形式,能夠用 AND、OR 邏輯進行組合,如本例指建立時間超過 60 天的日誌會被清除,但若是全部日誌的總大小沒有超過 1G,則不清除,直到總大小達到 1G
管理app
#將審計日誌文件轉換爲可讀文件格式,每一個事件的記錄起始位置用 header 與 trailer 標識;-x 表示轉換爲 xml 格式
praudit [-x] /var/audit/AUDITFILE #示例: header,133,10,execve(2),0,Mon Sep 25 15:58:03 2006, + 384 msec exec arg,finger,John #命令及參數,此處意爲執行了 finger John 命令 path,/usr/bin/finger #所執行的命令的絕對路徑 attribute,555,root,wheel,90,24918,104944 #這是對 finger 二進制文件當時的屬性的描述 subject,robert,root,wheel,root,wheel,38439,38032,42086,128.232.9.100 #audit user ID, effective user ID and group ID, real user ID and group ID, process ID, session ID, port ID, and login address return,success,0 #執行結果 trailer,133 #結束標識
# 僅提取 John 用戶的審計日誌
auditreduce -u John /var/audit/AUDITFILE | praudit
# 以相似於 top 命令的界面形式動態監控
# 注意:監控行爲自己會產生大量審計記錄,影響視圖可讀性,此方法不適用於過於精細的審計對象
praudit /dev/auditpipe #auditpipe 設備默認只有 root 能夠訪問,若要受權 audit 用戶組中的成員使用,在 /etc/devfs.rules 中添加 add path 'auditpipe*' mode 0440 group audit
# 日誌文件會在正常關閉的時候執行壓縮 # 如:關機或到達臨界條件須要關閉舊的日誌文件進行 rotate 時 if [ "$1" = closefile ]; then #其中的 $一、closefile、$2 等是系統預先定義好的變量與標識 xz $2 fi
...分佈式