ระบบย่อย "ตรวจสอบ" เคอร์เนล Linux สามารถทำสิ่งที่คุณต้องการ
เช่นถ้าคุณใช้คำสั่งเหล่านี้:
auditctl -a exit,always -F arch=b64 -S execve
auditctl -a exit,always -F arch=b32 -S execve
จากนั้นเหตุการณ์การดำเนินการทุกถูกบันทึกไว้และจำนวนมากของข้อมูลที่ให้ไว้รอบว่า
เช่นนี่คือผลลัพธ์ของฉันที่ทำงานอยู่ tail /var/log/audit/audit.log
exit=0 a0=7f0e4a21e987 a1=7f0e4a21e6b0 a2=7f0e4a21e808 a3=8 items=2 ppid=906 pid=928 auid=500 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=1 comm="tail" exe="/usr/bin/tail" subj=kernel key=(null)
type=EXECVE msg=audit(1543671660.203:64): argc=2 a0="tail" a1="/var/log/audit/audit.log"
type=CWD msg=audit(1543671660.203:64): cwd="/home/sweh"
type=PATH msg=audit(1543671660.203:64): item=0 name="/usr/bin/tail" inode=266003 dev=fd:03 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=unlabeled objtype=NORMAL cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=PATH msg=audit(1543671660.203:64): item=1 name="/lib64/ld-linux-x86-64.so.2" inode=273793 dev=fd:03 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=unlabeled objtype=NORMAL cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=PROCTITLE msg=audit(1543671660.203:64): proctitle=7461696C002F7661722F6C6F672F61756469742F61756469742E6C6F67
มีคุณค่าที่น่าสนใจที่สามารถมองเห็นได้ เช่น "auid" คือ 500 ซึ่งเป็นชื่อเข้าสู่ระบบของฉันแม้ว่า "uid" จะเป็นศูนย์ ('เพราะฉันกำลังทำงานอยู่su
) ดังนั้นแม้ว่าผู้ใช้อาจเปลี่ยนบัญชีด้วยsu
หรือsudo
เรายังสามารถติดตามกลับไปที่ "ID การตรวจสอบ" ของพวกเขา
ตอนนี้auditctl
คำสั่งเหล่านั้นจะหายไปเมื่อรีบูต คุณสามารถใส่ลงในไฟล์กำหนดค่า (เช่นใน/etc/audit/rules.d/
ไดเรกทอรีบน CentOS 7) ตำแหน่งที่แน่นอนจะขึ้นอยู่กับเวอร์ชั่นของระบบปฏิบัติการของคุณ auditctl
หน้าคู่มือที่จะช่วยให้ที่นี่
แต่ระวัง ... สิ่งนี้จะทำให้มีการสร้างข้อความบันทึกจำนวนมาก ตรวจสอบให้แน่ใจว่าคุณมีพื้นที่เพียงพอในดิสก์!
หากจำเป็นกฎสามารถ จำกัด ผู้ใช้เฉพาะหรือคำสั่งเฉพาะ
และระวังด้วย; หากผู้ใช้ใส่รหัสผ่านในการดำเนินการคำสั่ง (เช่นmysql --user=username --password=passwd
) จากนั้นจะถูกบันทึกไว้
auditd
บันทึกบรรทัดคำสั่งรวมทั้งโปรแกรมทำงานหรือไม่ serverfault.com/questions/765179/…