一、auditd工具簡(jiǎn)介
??audited是Linux審核系統(tǒng)的用戶空間組件。它負(fù)責(zé)將審核記錄寫入磁盤。查看日志是通過ausearch或aureport實(shí)用程序完成的。審核系統(tǒng)或加載規(guī)則的配置是使用auditctl實(shí)用程序完成的。在啟動(dòng)過程中,/etc/audit/audit.rules中的規(guī)則由auditctl讀取并加載到內(nèi)核中。另外,還有一個(gè)augenrules程序,它讀取/etc/audit/rules.d/中的規(guī)則,并將它們編譯為audit.rules文件。審核守護(hù)進(jìn)程本身有一些管理員可能希望自定義的配置選項(xiàng),它們位于audited.conf文件中。
二、auditd配置文件說明
1、配置文件關(guān)鍵字說明
關(guān)鍵字 | 關(guān)鍵字說明 |
---|---|
num_days | 日志保留的天數(shù) |
idletime | 空閑時(shí)間 |
max_log_file | 這個(gè)關(guān)鍵字指定了以兆字節(jié)為單位的最大文件大小。當(dāng)達(dá)到這個(gè)限制時(shí),它將觸發(fā)一個(gè)可配置的操作。給定的值必須是數(shù)值。 |
max_log_file_action | 此參數(shù)告訴系統(tǒng)當(dāng)系統(tǒng)檢測(cè)到已達(dá)到最大文件大小限制時(shí)采取什么操作。有效值為ignore、syslog、suspend、rotate和keep_logs。如果設(shè)置為ignore,審計(jì)守護(hù)進(jìn)程什么都不做。Syslog表示它將向Syslog發(fā)出警告。Suspend將導(dǎo)致審計(jì)守護(hù)進(jìn)程停止向磁盤寫入記錄。守護(hù)進(jìn)程還會(huì)活著。rotate選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程旋轉(zhuǎn)日志。需要注意的是,數(shù)值大的日志比數(shù)值小的日志要早。這與logrotate實(shí)用程序使用的約定相同。keep_logs選項(xiàng)類似于rotate,只是它不使用num_logs設(shè)置。這可以防止審計(jì)日志被覆蓋。 |
space_left | 這是一個(gè)以兆字節(jié)為單位的數(shù)值,它告訴審計(jì)守護(hù)進(jìn)程何時(shí)執(zhí)行可配置的操作,因?yàn)橄到y(tǒng)的磁盤空間開始不足。 |
space_left_action | 這個(gè)參數(shù)告訴系統(tǒng),當(dāng)系統(tǒng)檢測(cè)到磁盤空間開始變少時(shí),應(yīng)該采取什么行動(dòng)。有效值為:ignore、syslog、email、exec、suspend、single和halt。如果設(shè)置為ignore,審計(jì)守護(hù)進(jìn)程什么都不做。Syslog表示它將向Syslog發(fā)出警告。Email意味著它將向action_mail_acct中指定的電子郵件帳戶發(fā)送警告,同時(shí)將消息發(fā)送到syslog。Exec /path-to-script將執(zhí)行腳本。您不能將參數(shù)傳遞給腳本。Suspend將導(dǎo)致審計(jì)守護(hù)進(jìn)程停止向磁盤寫入記錄。守護(hù)進(jìn)程還會(huì)活著。single選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程將計(jì)算機(jī)系統(tǒng)置于單用戶模式。Halt選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程關(guān)閉計(jì)算機(jī)系統(tǒng)。 |
local_events | 本地的事件是否記錄,設(shè)置為no的場(chǎng)景應(yīng)該是只作為遠(yuǎn)程日志收集的服務(wù)器,但自身的日志大多數(shù)時(shí)候也是有必要記錄的 |
write_logs | 日志是否落盤,設(shè)置為no的場(chǎng)景應(yīng)該是將會(huì)把日志存儲(chǔ)到遠(yuǎn)程服務(wù)器的客戶端(沒有足夠空間的情況下) |
log_file | 此關(guān)鍵字指定存儲(chǔ)審計(jì)記錄的日志文件的完整路徑名。它必須是一個(gè)普通文件。 |
log_format | 日志格式描述了信息應(yīng)該如何存儲(chǔ)在磁盤上。有兩個(gè)選項(xiàng):raw和nolog。如果設(shè)置為RAW,審計(jì)記錄將按照內(nèi)核發(fā)送的格式存儲(chǔ)。如果該選項(xiàng)設(shè)置為NOLOG,那么所有審計(jì)信息將被丟棄,而不會(huì)寫入磁盤。該模式不影響發(fā)送到審計(jì)事件分配器的數(shù)據(jù)。 |
log_group | 此關(guān)鍵字指定應(yīng)用于日志文件權(quán)限的組。默認(rèn)為root。組名可以是數(shù)字,也可以拼寫出來。 |
priority_boost | 這是一個(gè)非負(fù)數(shù),告訴審計(jì)守護(hù)進(jìn)程應(yīng)該提高多少優(yōu)先級(jí)。默認(rèn)值為4。沒有變化是0。 |
flush | 有效值為none、incremental、data和sync。如果設(shè)置為none,則不會(huì)進(jìn)行特殊操作將審計(jì)記錄刷新到磁盤。如果設(shè)置為增量,那么freq參數(shù)用于確定顯式刷寫磁盤的頻率。data參數(shù)告訴審計(jì)守護(hù)進(jìn)程始終保持磁盤文件的數(shù)據(jù)部分同步。sync選項(xiàng)告訴審計(jì)守護(hù)進(jìn)程在每次寫入磁盤時(shí)保持?jǐn)?shù)據(jù)和元數(shù)據(jù)完全同步。 |
freq | 這是一個(gè)非負(fù)數(shù),告訴審計(jì)守護(hù)進(jìn)程在發(fā)出顯式刷寫到磁盤命令之前要寫入多少條記錄。只有將flush關(guān)鍵字設(shè)置為incremental時(shí),這個(gè)值才有效。 |
num_logs | 如果rotate指定了max_log_file_action,則該關(guān)鍵字指定了保留的日志文件數(shù)。如果數(shù)字是<2、日志不旋轉(zhuǎn)。這個(gè)數(shù)字必須小于等于99。默認(rèn)值為0,表示沒有旋轉(zhuǎn)。隨著要旋轉(zhuǎn)的日志文件數(shù)量的增加,可能需要向上調(diào)整內(nèi)核積壓工作表的設(shè)置,因?yàn)樾D(zhuǎn)文件需要更多的時(shí)間。這通常在/etc/audit/audit.rules中完成。如果配置日志輪換,守護(hù)進(jìn)程將檢查多余的日志并刪除它們,以保持磁盤空間可用。只有在啟動(dòng)和重新配置導(dǎo)致空間檢查時(shí),才會(huì)進(jìn)行多余的日志檢查。 |
disp_qos | 此選項(xiàng)控制您想要在審計(jì)守護(hù)進(jìn)程和調(diào)度程序之間進(jìn)行阻塞/無(wú)損通信還是非阻塞/有損通信。在審計(jì)守護(hù)進(jìn)程和分配器之間有一個(gè)128k的緩沖區(qū)。對(duì)于大多數(shù)應(yīng)用來說,這已經(jīng)足夠了。如果選擇了lossy,那么當(dāng)隊(duì)列滿時(shí),進(jìn)入分派器的事件將被丟棄。(如果log_format不是nlog,事件仍然寫入磁盤。)否則,auditd守護(hù)進(jìn)程將等待隊(duì)列有一個(gè)空位,然后將日志記錄到磁盤。風(fēng)險(xiǎn)在于,當(dāng)守護(hù)進(jìn)程等待網(wǎng)絡(luò)IO時(shí),事件不會(huì)被記錄到磁盤上。有效值有:lossy和lossless。默認(rèn)值為L(zhǎng)ossy。 |
dispatcher | dispatcher是一個(gè)由審計(jì)守護(hù)進(jìn)程在啟動(dòng)時(shí)啟動(dòng)的程序。它將把所有審計(jì)事件的副本傳遞給應(yīng)用程序的stdin。請(qǐng)確保您信任添加到這一行的應(yīng)用程序,因?yàn)樗詒oot權(quán)限運(yùn)行。 |
name_format | 該選項(xiàng)控制計(jì)算機(jī)節(jié)點(diǎn)名如何插入到審計(jì)事件流中。它有以下選項(xiàng):none、hostname、fqd、numeric和user。None表示沒有向?qū)徲?jì)事件插入計(jì)算機(jī)名。Hostname是gethostname系統(tǒng)調(diào)用返回的名稱。fqd意味著它接收主機(jī)名并通過dns解析為該機(jī)器的完全限定域名。Numeric類似于fqd,只是它可以解析機(jī)器的IP地址。為了使用這個(gè)選項(xiàng),你可能想測(cè)試hostname -i 或domainname -i 是否返回一個(gè)數(shù)字地址。此外,如果使用dhcp,則不建議使用此選項(xiàng),因?yàn)殡S著時(shí)間的推移,同一臺(tái)機(jī)器可能有不同的地址。User是一個(gè)從name選項(xiàng)中定義的管理員字符串。默認(rèn)值為none。 |
name | 這是管理員定義的字符串,如果user被指定為name_format選項(xiàng),它將標(biāo)識(shí)該機(jī)器。 |
action_mail_acct | 此選項(xiàng)應(yīng)包含有效的電子郵件地址或別名。默認(rèn)地址為root。如果電子郵件地址不是本機(jī)的,你必須確保在你的機(jī)器和網(wǎng)絡(luò)上正確配置了電子郵件。此外,該選項(xiàng)要求計(jì)算機(jī)上存在/usr/lib/sendmail。 |
admin_space_left | 這是一個(gè)以兆字節(jié)為單位的數(shù)值,它告訴審計(jì)守護(hù)進(jìn)程何時(shí)執(zhí)行可配置的操作,因?yàn)橄到y(tǒng)磁盤空間不足。這應(yīng)該被視為耗盡磁盤空間之前執(zhí)行某些操作的最后機(jī)會(huì)。該參數(shù)的數(shù)值應(yīng)該小于space_left的數(shù)值。 |
admin_space_left_action | 此參數(shù)告訴系統(tǒng)當(dāng)系統(tǒng)檢測(cè)到磁盤空間不足時(shí)采取什么操作。有效值為:ignore、syslog、email、exec、suspend、single和halt。如果設(shè)置為ignore,審計(jì)守護(hù)進(jìn)程什么都不做。Syslog表示它將向Syslog發(fā)出警告。Email意味著它將向action_mail_acct中指定的電子郵件帳戶發(fā)送警告,同時(shí)將消息發(fā)送到syslog。Exec /path-to-script將執(zhí)行腳本。您不能將參數(shù)傳遞給腳本。Suspend將導(dǎo)致審計(jì)守護(hù)進(jìn)程停止向磁盤寫入記錄。守護(hù)進(jìn)程還會(huì)活著。single選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程將計(jì)算機(jī)系統(tǒng)置于單用戶模式。停止 |
disk_full_action | 這個(gè)參數(shù)告訴系統(tǒng),當(dāng)系統(tǒng)檢測(cè)到日志文件寫入的分區(qū)已滿時(shí),應(yīng)該采取什么行動(dòng)。有效值為ignore、syslog、exec、suspend、single和halt。如果設(shè)置為ignore,審計(jì)守護(hù)進(jìn)程將發(fā)出syslog消息,但不采取其他操作。Syslog表示它將向Syslog發(fā)出警告。Exec /path-to-script將執(zhí)行腳本。您不能將參數(shù)傳遞給腳本。Suspend將導(dǎo)致審計(jì)守護(hù)進(jìn)程停止向磁盤寫入記錄。守護(hù)進(jìn)程還會(huì)活著。single選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程將計(jì)算機(jī)系統(tǒng)置于單用戶模式。Halt選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程關(guān)閉計(jì)算機(jī)系統(tǒng)。 |
disk_error_action | 這個(gè)參數(shù)告訴系統(tǒng),在將審計(jì)事件寫入磁盤或循環(huán)日志時(shí),如果檢測(cè)到錯(cuò)誤,應(yīng)該采取什么操作。有效值為ignore、syslog、exec、suspend、single和halt。如果設(shè)置為ignore,審計(jì)守護(hù)進(jìn)程將不執(zhí)行任何操作。Syslog表示對(duì)Syslog連續(xù)發(fā)出的警告不超過5次。Exec /path-to-script將執(zhí)行腳本。您不能將參數(shù)傳遞給腳本。Suspend將導(dǎo)致審計(jì)守護(hù)進(jìn)程停止向磁盤寫入記錄。守護(hù)進(jìn)程還會(huì)活著。single選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程將計(jì)算機(jī)系統(tǒng)置于單用戶模式。Halt選項(xiàng)將導(dǎo)致審計(jì)守護(hù)進(jìn)程關(guān)閉計(jì)算機(jī)系統(tǒng)。 |
tcp_listen_port | 這是一個(gè)范圍為1的數(shù)值。65535,如果指定,將導(dǎo)致auditd在對(duì)應(yīng)的TCP端口上監(jiān)聽來自遠(yuǎn)程系統(tǒng)的審計(jì)記錄。審計(jì)守護(hù)進(jìn)程可以鏈接到tcp_wrapper。您可能希望通過主機(jī)中的一個(gè)條目來控制訪問。允許和拒絕文件。 |
tcp_listen_queue | 這是一個(gè)數(shù)值,表示允許的掛起(請(qǐng)求但未接受的)連接數(shù)。默認(rèn)值為5。如果在同一時(shí)間啟動(dòng)的主機(jī)太多,例如停電后,這個(gè)值設(shè)置得太小可能會(huì)導(dǎo)致連接被拒絕。 |
tcp_max_per_addr | 這是一個(gè)數(shù)值,表示一個(gè)IP地址允許的并發(fā)連接數(shù)。默認(rèn)值為1,最大1024。設(shè)置得太大可能導(dǎo)致對(duì)日志服務(wù)器的拒絕服務(wù)攻擊。還要注意,內(nèi)核有一個(gè)內(nèi)部的最大值,即使auditd通過config允許這樣做,最終也會(huì)阻止該操作。默認(rèn)值在大多數(shù)情況下應(yīng)該足夠了,除非運(yùn)行自定義編寫的恢復(fù)腳本來轉(zhuǎn)發(fā)未發(fā)送的事件。在這種情況下,你只需要增加足夠大的數(shù)字就可以讓它進(jìn)來。 |
use_libwrap | 該設(shè)置確定是否使用tcp_wrapper來識(shí)別來自允許的計(jì)算機(jī)的連接嘗試。合法的取值包括“yes”和“no”。默認(rèn)值為“yes”。 |
tcp_client_ports | 這個(gè)參數(shù)可以是一個(gè)數(shù)值,也可以是兩個(gè)由破折號(hào)分隔的值(不允許有空格)。它表明客戶端端口允許傳入的連接。如果沒有指定,則允許任何端口。允許取值為1 ~ 65535。例如,要要求客戶端使用特權(quán)端口,請(qǐng)將此參數(shù)指定為1-1023。你還需要在audio -remote.conf文件中設(shè)置local_port選項(xiàng)。確??蛻舭l(fā)送從特權(quán)端口安全功能,以防止不可信用戶日志注入攻擊。 |
tcp_client_max_idle | 該參數(shù)表示在auditd發(fā)出報(bào)警之前,客戶端可能空閑的秒數(shù)(即根本沒有數(shù)據(jù))。如果客戶端機(jī)器出現(xiàn)問題,無(wú)法干凈地關(guān)閉連接,則用于關(guān)閉非活動(dòng)連接。注意,這是一個(gè)全局設(shè)置,必須比任何單獨(dú)的客戶端heartbeat_timeout設(shè)置高,最好是2倍。默認(rèn)為零,禁用此檢查。 |
enable_krb5 | 如果設(shè)置為“yes”,Kerberos 5將用于身份驗(yàn)證和加密。默認(rèn)值為no。 |
krb5_principal | 這是此服務(wù)器的主體。默認(rèn)值是auditd。有了這個(gè)默認(rèn)值,服務(wù)器將查找存儲(chǔ)在/etc/audit/audit.中名為auditd/hostname@EXAMPLE.COM的鍵key進(jìn)行身份驗(yàn)證,其中hostname是服務(wù)器主機(jī)的規(guī)范名稱,通過DNS查找其IP地址返回。 |
krb5_key_file | 此客戶端主體的密鑰位置。注意,密鑰文件必須為root用戶所有,模式為0400。默認(rèn)的是/etc/audit/audit.key |
2、默認(rèn)配置釋義
[root@s166 audit]# cat /etc/audit/auditd.conf
#
# This file controls the configuration of the audit daemon
#
#記錄本地事件
local_events = yes
#日志落盤存儲(chǔ)
write_logs = yes
#審計(jì)日志存儲(chǔ)路徑
log_file = /var/log/audit/audit.log
#日志文件屬組
log_group = root
#日志文件格式
log_format = RAW
#異步增量方式刷新到磁盤
flush = INCREMENTAL_ASYNC
#記錄數(shù)量達(dá)到此數(shù)值時(shí)寫入磁盤,與flush結(jié)合使用
freq = 50
#單個(gè)日志文件大小,單位為M,超過8M進(jìn)行日志分割
max_log_file = 8
#日志文件保存數(shù)量,超過的會(huì)被清除
num_logs = 5
#守護(hù)進(jìn)程優(yōu)先級(jí)
priority_boost = 4
#隊(duì)列滿是,丟棄事件記錄
disp_qos = lossy
#守護(hù)進(jìn)程啟動(dòng)的程序
dispatcher = /sbin/audispd
#審計(jì)事件不插入主機(jī)名
name_format = NONE
#管理員可以指定主機(jī)名,默認(rèn)注釋,未啟用
##name = mydomain
#日志文件超過大小時(shí)的動(dòng)作,ROTATE表示將日志輪轉(zhuǎn)分割
max_log_file_action = ROTATE
#系統(tǒng)磁盤空間剩余大小時(shí)執(zhí)行動(dòng)作,但是為M
space_left = 75
#系統(tǒng)磁盤空間不足時(shí)執(zhí)行的操作,發(fā)送SYSLOG告警
space_left_action = SYSLOG
#是否發(fā)送郵件,取值yes或者no
verify_email = yes
#發(fā)送郵箱的賬戶,默認(rèn)root@localhost,如果配置的是網(wǎng)絡(luò)郵箱,/usr/lib/sendmail確保正確配置
action_mail_acct = root
#磁盤空間剩余大小,剩余不足50M時(shí)停止審計(jì)記錄寫入
admin_space_left = 50
admin_space_left_action = SUSPEND
#磁盤滿或者磁盤錯(cuò)誤的時(shí)候停止寫入審計(jì)記錄
disk_full_action = SUSPEND
disk_error_action = SUSPEND
#如下是審計(jì)客戶端連接相關(guān)參數(shù)
use_libwrap = yes
##tcp_listen_port = 60
tcp_listen_queue = 5
tcp_max_per_addr = 1
##tcp_client_ports = 1024-65535
tcp_client_max_idle = 0
enable_krb5 = no
krb5_principal = auditd
##krb5_key_file = /etc/audit/audit.key
distribute_network = no
三、auditd相關(guān)命令與配置文件
1、auditd相關(guān)命令
- auditctl : 即時(shí)控制審計(jì)守護(hù)進(jìn)程的行為的工具,如添加規(guī)則等。
- **auditd :**audit 守護(hù)進(jìn)程負(fù)責(zé)把內(nèi)核產(chǎn)生的信息寫入到硬盤上,這些信息由應(yīng)用程序和系統(tǒng)活動(dòng)觸發(fā)產(chǎn)生。用戶空間審計(jì)系統(tǒng)通過 auditd 后臺(tái)進(jìn)程接收內(nèi)核審計(jì)系統(tǒng)傳送來的審計(jì)信息,將信息寫入到 /var/log/audit/audit.log。
- aureport : 查看和生成審計(jì)報(bào)告的工具。
- ausearch : 查找審計(jì)事件的工具
- auditspd : 轉(zhuǎn)發(fā)事件通知給其他應(yīng)用程序,而不是寫入到審計(jì)日志文件中。
- autrace : 一個(gè)用于跟蹤進(jìn)程的命令。類似于 strace,跟蹤某一個(gè)進(jìn)程,并將跟蹤的結(jié)果寫入日志文件之中。
- aulast: 與last類似,但使用審計(jì)框架安裝
- aulastlog: 與lastlog類似,也使用審計(jì)框架
- ausyscall: 映射syscall ID和名稱
- auvirt: 顯示關(guān)于虛擬機(jī)的審計(jì)信息
2、auditd相關(guān)配置文件
- /etc/audit/auditd.conf : auditd工具的配置文件
- /etc/audit/rules.d/audit.rules:包含審核規(guī)則的文件,如果我們需要修改審計(jì)范圍,直接編輯該文件,并使用auditctl -R 命令重載審計(jì)規(guī)則配置文件
- /etc/audit/audit.rules : 記錄審計(jì)規(guī)則的文件,該配置文件是根據(jù)etc/audit/rules.d/audit.rules下的配置文件自動(dòng)生成
四、auditd使用舉例
1、查看當(dāng)前審計(jì)規(guī)則
[root@s166 audit]# auditctl -l
No rules
2、配置一條審計(jì)規(guī)則
[root@s166 audit]# echo “-w /etc/hosts -p wa -k hosts_change” >> rules.d/audit.rules
3、重載配置
[root@s166 audit]# auditctl -R /etc/audit/rules.d/audit.rules
4、再次查看審計(jì)規(guī)則
[root@s166 audit]# auditctl -l
-w /etc/hosts -p wa -k hosts_change
5、修改/etc/hosts文件
[root@s166 audit]# vim /etc/hosts
…
192.168.0.186 s186
6、查看審計(jì)記錄
[root@s166 audit]# ausearch --start today -k “hosts_change”
五、auditd服務(wù)管理
??auditd服務(wù)默認(rèn)開機(jī)自啟動(dòng),配置了禁止手動(dòng)啟停服務(wù),如果我們需要啟動(dòng)或者停止服務(wù),需要修改/usr/lib/systemd/system/auditd.service中的RefuseManualStop=no,否則服務(wù)啟停服務(wù)命令,修改完成后執(zhí)行systemctl daemon-reload ,然后就可以手動(dòng)啟停管理服務(wù)了。實(shí)際上我們也可以不停止服務(wù)的情況下停止審計(jì),只需要執(zhí)行auditd -s disable命令就可以停止審計(jì)記錄。
- 查看auditd服務(wù)狀態(tài):systemctl status auditd
- 配置服務(wù)開機(jī)自啟動(dòng):systemctl enable auditd
- 取消服務(wù)開機(jī)自啟動(dòng):systemctl disable auditd
- 停止auditd服務(wù):systemctl stop auditd
- 啟動(dòng)auditd服務(wù):systemctl start auditd
- 重啟auditd服務(wù):systemctl restart auditd
- 重載審計(jì)規(guī)則配置:auditctl -R /etc/audit/rules.d/audit.rules
- 停止審計(jì):auditd -s disable
- 開啟審計(jì):auditd -s enable
六、auditctl命令簡(jiǎn)介
??audit 我們可以使用auditctl臨時(shí)配置規(guī)則,服務(wù)重啟失效,如果需要配置永久生效,我們需要將規(guī)則寫入到配置文件中。auditd審計(jì)規(guī)則分成三個(gè)部分,
- 控制規(guī)則:這些規(guī)則用于更改審計(jì)系統(tǒng)本身的配置和設(shè)置。
- 文件系統(tǒng)規(guī)則:這些是文件或目錄監(jiān)視。 使用這些規(guī)則,我們可以審核對(duì)特定文件或目錄的任何類型的訪問。
- 系統(tǒng)調(diào)用規(guī)則:這些規(guī)則用于監(jiān)視由任何進(jìn)程或特定用戶進(jìn)行的系統(tǒng)調(diào)用。
1、命令語(yǔ)法
#auditctl [選項(xiàng)] filter,action -S syscall -F condition -k label
2、命令參數(shù)說明
參數(shù) | 參數(shù)說明 |
---|---|
-w path | 指定要監(jiān)控的路徑 |
-p | 指定觸發(fā)審計(jì)的文件/目錄的訪問權(quán)限r(nóng)wxa,指定的觸發(fā)條件,r 讀取權(quán)限,w 寫入權(quán)限,x 執(zhí)行權(quán)限,a 屬性(attr) |
-k | 在審核規(guī)則上設(shè)置過濾名稱,方便后面使用ausearch查找 |
-D | 刪除所有規(guī)則和監(jiān)控 |
-W | 刪除指定path的規(guī)則和-w對(duì)應(yīng),參數(shù)都要一樣才能刪除 |
-b | 在 Kernel 中設(shè)定最大數(shù)量的已存在的審核緩沖區(qū) |
-R | 讀取審計(jì)規(guī)則配置 |
-l | 列表展示審計(jì)規(guī)則 |
-s | 查看審計(jì)狀態(tài) |
-v | 查看命令幫助 |
-h | 獲取命令幫助 |
-a | 添加一條系統(tǒng)調(diào)用規(guī)則 |
-d | 刪除一條系統(tǒng)調(diào)用規(guī)則 |
-r | 設(shè)置每秒生成信息的速率 |
-S | 表示系統(tǒng)調(diào)用號(hào)或名字 |
-F | 表示規(guī)則域 |
3、命令選項(xiàng)說明
項(xiàng)目 | 可選參數(shù) | 說明 |
---|---|---|
filter | user,exit,task,exclude filter | 詳細(xì)說明哪個(gè)內(nèi)核規(guī)則匹配過濾器應(yīng)用在事件中。以下是其中之一的與規(guī)則匹配的過濾器: task、exit、user 以及 exclude |
action | always, never | 是否審核事件(always 表示是)(never 表示否) |
syscall | all, 2, open 等 | 所有的系統(tǒng)調(diào)用都可以在/usr/include/asm/unistd_64.h 文件中找到。許多系統(tǒng)調(diào)用都能形成一個(gè)規(guī)則 |
condition | euid=0, arch=b64 | 詳細(xì)說明其他選項(xiàng),進(jìn)一步修改規(guī)則來與以特定架構(gòu)、組 ID、進(jìn)程 ID 和其他內(nèi)容為基礎(chǔ)的事件相匹配 |
label | 任意文字 | 標(biāo)記審核事件并檢索日志 |
4、命令使用示例
- 添加一條指定路徑規(guī)則
[root@s166 audit]# auditctl -w /mnt/testfile -p wa -k config-change
[root@s166 audit]# auditctl -l
-w /etc/hosts -p wa -k hosts_change
-w /mnt/testfile -p wa -k config-change
- 刪除一條指定路徑規(guī)則
[root@s166 audit]# auditctl -W /mnt/testfile -p wa -k config-change
[root@s166 audit]# auditctl -l
-w /etc/hosts -p wa -k hosts_change
- 刪除所有規(guī)則
[root@s166 audit]# auditctl -D
No rules
[root@s166 audit]# auditctl -l
No rules
- 查看規(guī)則
[root@s166 audit]# auditctl -l
No rules
七、ausearch命令簡(jiǎn)介
??使用 ausearch ,您可以過濾和搜索事件類型。 它還可以通過將數(shù)值轉(zhuǎn)換為更加直觀的值(如系統(tǒng)調(diào)用或用戶名)來解釋事件。以根用戶身份執(zhí)行 ausearch 命令,當(dāng)顯示結(jié)果時(shí),每個(gè)記錄用 4 條虛線組成的一行隔開,每個(gè)記錄前均顯示時(shí)間標(biāo)記。
1、常用參數(shù)說明
參數(shù) | 參數(shù)說明 |
---|---|
-f,–file <文件名> | 根據(jù)文件名搜索 |
-c,–comm | 根據(jù)命令行名稱搜索 |
-ui,–uid | <用戶id> 根據(jù)用戶id搜索 |
-p,–pid | <進(jìn)程id> 根據(jù)進(jìn)程id搜索 |
-k,–key | 根據(jù)key字段搜索 |
-te,–end | [結(jié)束日期] [結(jié)束時(shí)間] 搜索的結(jié)束日期和時(shí)間 |
-ts,–start | [開始日期] [開始時(shí)間] 開始數(shù)據(jù)和搜索時(shí)間 |
-m | 指定消息類型 |
2、命令使用示例
- 查詢所有事件
[root@s166 audit]# ausearch -m all
- 查詢指定時(shí)間段的日志
[root@s166 audit]# ausearch --start today --end “now”
- 查詢指定用戶日志
[root@s166 audit]# ausearch -ua kingbase
- 根據(jù)文件路徑查找日志
[root@s166 audit]# ausearch -f /etc/hosts
- 根據(jù)系統(tǒng)調(diào)用查詢?nèi)罩?/li>
[root@s166 audit]# ausearch -sc open
- 根據(jù)過濾關(guān)鍵字查詢?nèi)罩?/li>
[root@s166 audit]# ausearch -k “hosts_change”
- 搜索系統(tǒng)登錄失敗日志
[root@s166 audit]# ausearch --message USER_LOGIN --success no --interpret
- 搜索所有的賬戶,群組,角色變更
[root@s166 audit]# ausearch -m ADD_USER -m DEL_USER -m ADD_GROUP -m USER_CHAUTHTOK -m DEL_GROUP -m CHGRP_ID -m ROLE_ASSIGN -m ROLE_REMOVE -i
- 搜尋從制定時(shí)間段的失敗的系統(tǒng)調(diào)用
[root@s166 audit]# ausearch --start “2023年10月22日” --end “now” -m SYSCALL -sv no -i
八、aureport命令簡(jiǎn)介
??要生成審計(jì)消息的報(bào)表,可使用 aureport 命令。如果執(zhí)行 aureport 時(shí)沒有使用任何選項(xiàng),則會(huì)顯示如匯總報(bào)表。
1、常用參數(shù)說明
參數(shù) | 參數(shù)說明 |
---|---|
-a、 --avc | avc報(bào)告 |
-au,–auth | 身份驗(yàn)證報(bào)告 |
–comm | 命令運(yùn)行報(bào)告 |
-c、 --config | 配置更改報(bào)告 |
-cr,–crypto | 加密報(bào)告 |
-e、 --event | 事件報(bào)告 |
-f、 --file | 文件名報(bào)告 |
–failed | 報(bào)表中只有失敗的事件 |
-h、 --主機(jī) | 遠(yuǎn)程主機(jī)名報(bào)告 |
–help | 幫助 |
-i、 --interpret | 解釋模式 |
-if,–input<input File name> | 使用此文件作為輸入 |
–input logs | 即使stdin是管道,也要使用日志 |
–integrity | 完整性事件報(bào)告 |
-l、 --login | 登錄報(bào)告 |
-k、 --key | 密鑰報(bào)告 |
-m、 --mods | 修改帳戶報(bào)告 |
-ma,–mac | 強(qiáng)制訪問控制(mac)報(bào)告 |
-n、 --異常 | anomaly報(bào)告 |
-nc,–no config | 不包括配置事件 |
–node<node name> | 僅來自特定節(jié)點(diǎn)的事件 |
-p、 --pid | pid報(bào)告 |
-r、 --響應(yīng) | 對(duì)異常報(bào)告的響應(yīng) |
-s、 --syscall | 系統(tǒng)調(diào)用報(bào)告 |
–success | 報(bào)表中只有成功事件 |
–summary | 報(bào)表中主對(duì)象的排序匯總 |
-t、 --log | 日志時(shí)間范圍報(bào)告 |
-te,–end[結(jié)束日期][結(jié)束時(shí)間] | 報(bào)表的結(jié)束日期和時(shí)間 |
-tm,–terminal | terminal名稱報(bào)告 |
-ts,–開始[開始日期][開始 | 時(shí)間]開始數(shù)據(jù)和報(bào)告時(shí)間 |
–tty | 關(guān)于tty擊鍵的報(bào)告 |
-u、 --user | 用戶名報(bào)告 |
-v、 --版本 | 版本 |
–virt | 虛擬化報(bào)告 |
-x、 --可執(zhí)行文件 | 可執(zhí)行名稱報(bào)告 |
2、命令使用示例
- 生成所有報(bào)告
[root@s166 audit]# aureport
- 生成文件相關(guān)的報(bào)告
[root@s166 audit]# aureport -f
- 生成用戶相關(guān)的報(bào)告
[root@s166 audit]# aureport -u
- 生成配置變更報(bào)告
[root@s166 audit]# aureport -c
- 生成登錄記錄報(bào)告
[root@s166 audit]# aureport -l
- 生成指定時(shí)間段的報(bào)告
[root@s166 audit]# aureport -ts “8:00:00” -te “now” -l -i
Login Report
============================================
# date time auid host term exe success event
============================================
\1. 2023年10月25日 11:01:08 root 192.168.0.186 ssh /usr/sbin/sshd no 1413
- 生成所有用戶失敗事件的總結(jié)報(bào)告
[root@s166 audit]# aureport -u --failed --summary -i
Failed User Summary Report
===========================
total auid
===========================
34 root
20 unset文章來源:http://www.zghlxwxcb.cn/news/detail-762901.html
- 生成系統(tǒng)調(diào)用事件報(bào)告
[root@s166 audit]# aureport -s -i --summary
Syscall Summary Report
==========================
total syscall
==========================
161 setsockopt
57 execve
30 init_module
27 unshare
5 ioctl
4 open
2 write
2 rename
2 chmod
2 setxattr
1 fchmodat
1 unlinkat文章來源地址http://www.zghlxwxcb.cn/news/detail-762901.html
到了這里,關(guān)于Linux安全之a(chǎn)uditd審計(jì)工具使用說明的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!