FreeBSD гарын авлага
Prev | Chapter 17 Аюулгүй байдлын үйл явцад аудит хийх нь | Next

# 17.4 Аудитийн тохиргоо

Аюулгүй байдлын аудитийн тохиргооны бүх файлуудыг `/etc/security` дотроос олж болно. Дараах файлууд аудит дэмон эхлэхээс өмнө байх ёстой:

- `audit_class` - Аудитийн ангиллуудын тодорхойлолтуудыг агуулна.

- `audit_control` - Анхдагч аудитийн ангиллууд, аудитийн хянан бүртгэлтийн эзлэхүүнд үлдээх хамгийн бага дискний зай, хамгийн их аудитийн мөрийн хэмжээ гэх зэрэг аудит дэд системийн шинж чанарыг хянана.

- `audit_event` - Системийн аудит үйл явцуудын тайлбарууд, нэрс болон үйл явц болгон аль ангилалд хамаарах жагсаалт.

- `audit_user` - Нэвтрэн орох үеийн глобал анхдагчуудаас бүрдсэн зөвхөн хэрэглэгчид хамааралтай аудитийн шаардлагууд

- `audit_warn` - Аудитийн бичлэгүүдийн зай хангалтгүй болох эсвэл аудитийн мөрийн файл дахин эргэсэн зэрэг зайлшгүй шаардлагатай тохиолдолд анхааруулах мэдээллүүдийг үүсгэдэг өөрчлөх боломж бүхий auditd-ийн ашигладаг бүрхүүлийн скрипт.

> Warning: Тохиргоон дахь алдаанууд үйл явцуудын буруу хянан бүртгэлд хүргэж болзошгүй тул аудитийн тохиргооны файлуудыг засварлах болон ажиллагааг хангахдаа заавал болгоомжтой байх шаардлагатай.

## 17.4.1 Үйл явц сонголтын илэрхийллүүд

Сонголтын илэрхийллүүд нь аль үйл явцуудыг аудит хийх ёстойг тодорхойлох аудитийн тохиргооны хэд хэдэн газар ашиглагддаг. Илэрхийллүүд нь тохирох үйл явцын ангиллуудын жагсаалтаас бүрдэх ба эдгээр тус бүр нь тохирох бичлэгүүдийг хүлээн авах ёстой юу эсвэл орхих ёстой юу гэдгийг харуулсан угтвартайгаас гадна оруулга нь амжилттай эсвэл амжилтгүй үйлдлүүдтэй тохирох ёстойг харуулах боломж бас байна. Сонголтын илэрхийллүүд нь зүүнээс баруун тийш биелэгддэг бөгөөд хоёр илэрхийллийг нэг дээр нь нөгөөг нь нэмж нийлүүлдэг.

Дараах жагсаалт нь `audit_class`-д байгаа анхдагч үйл явцын ангиллуудаас тогтоно:

- `all` - all - Бүх үйл явцын ангиллуудыг тааруулах(match).

- `ad` - administrative - Удирдлагын үйлдлүүд систем дээр бүхэлдээ гүйцэтгэгдэнэ.

- `ap` - application - Програмын тодорхойлсон үйлдэл.

- `cl` - file close - `close` системийн дуудлагыг аудит хийх.

- `ex` - exec - Програмын ажиллагааг аудит хийх. Тушаалын мөрийн нэмэлт өгөгдлүүд болон орчны хувьсагчуудыг `argv` ба `envv` параметрүүдийг ашиглан `policy` тохиргоонд тохиргоо хийн audit_control(5) -ийн тусламжтайгаар хянадаг.

- `fa` - file attribute access - stat(1), pathconf(2) болон бусад адил үйл явцуудын обьектийн шинж чанаруудад хандсан хандалтыг аудит хийх.

- `fc` - file create - Үр дүнд нь файл үүсдэг үйл явцуудыг аудит хийх.

- `fd` - file delete - Файлыг устгадаг үйл явцуудыг аудит хийх.

- `fm` - file attribute modify - chown(8), chflags(1), flock(2) зэрэг файлын шинж чанарын өөрчлөлт гарч байгаа үйл явцуудыг аудит хийх.

- `fr` - file read - Өгөгдөл уншигдаж байгаа, мөн файлуудыг уншихаар нээсэн зэрэг үйл явцуудыг аудит хийх.

- `fw` - file write - Өгөгдөл бичигдэж байгаа, мөн файлд бичсэн эсвэл файл өөрчлөгдсөн зэрэг үйл явцуудыг аудит хийх.

- `io` - ioctl - ioctl(2) системийн дуудлагын хэрэглээг аудит хийх.

- `ip` - ipc - POSIX хоолойнууд болон System V IPC үйлдлүүд зэрэг Процесс-Хоорондох Холбооны төрөл бүрийн хэлбэрүүдийг аудит хийх.

- `lo` - login_logout - Систем дээр болж байгаа login(1) ба logout(1) үйл явцуудыг аудит хийх.

- `na` - non attributable - Шинж чанаргүй үйл явцуудыг аудит хийх.

- `no` - invalid class - Аудит бус үйл явцуудыг тааруулах(match).

- `nt` - network - connect(2) ба accept(2) зэрэг сүлжээний үйлдлүүдтэй холбоотой үйл явцуудыг аудит хийх.

- `ot` - other - Бусад үйл явцуудыг аудит хийх.

- `pc` - process - exec(3) ба exit(3) зэрэг процессийн үйлдлүүдийг аудит хийх.

Эдгээр аудит үйл явцын ангиллуудыг `audit_class` болон `audit_event` тохиргооны файлуудыг өөрчилснөөр өөрчилж болно.

Жагсаалтад байгаа аудитийн ангилал бүр амжилттай/амжилтгүй үйлдлүүдийг таарсан эсэхийг болон ангилал ба төрлийн хувьд таарч байгааг нэмж байгаа эсвэл устгаж байгааг харуулсан угтвартай байна.

- (none) Үйл явцын амжилттай болон амжилтгүйг аудит хийх.

- `+` Энэ ангилал дахь амжилттай үйл явцуудыг аудит хийх.

- `-` Энэ ангилал дахь амжилтгүй үйл явцуудыг аудит хийх.

- `^` Энэ ангилал дахь амжилттай, амжилтгүй аль нь ч биш үйл явцуудыг аудит хийх.

- `^+` Энэ ангилал дахь амжилттай үйл явцуудыг аудит хийхгүй.

- `^-` Энэ ангилал дахь амжилтгүй үйл явцуудыг аудит хийхгүй.

Дараах сонголтын мөр амжилттай ба амжилтгүй нэвтрэлт/гаралтын үйл явцуудаас гадна зөвхөн амжилттай ажиллуулсныг сонгож байна:

    lo,+ex

## 17.4.2 Тохиргооны файлууд

Аудит системийг тохируулахдаа ихэнх тохиолдолд администраторууд зөвхөн хоёр файлыг өөрчлөх хэрэгтэй: `audit_control` болон `audit_user`. Эхнийх нь системийн дагуух аудит өмчүүд болон бодлогуудыг хянадаг; хоёр дахь нь хэрэглэгчийн аудитийг нарийн тохируулахад ашиглагддаг.

### 17.4.2.1 `audit_control` файл

`audit_control` файл нь аудит дэд системийн хувьд анхдагч утгуудын тоог тодорхойлно. Энэ файлын дотор бид дараах зүйлсийг харна:

    dir:/var/audit
    flags:lo
    minfree:20
    naflags:lo
    policy:cnt
    filesz:0

`dir` тохиргоо нь аудит бүртгэлүүдийг хадгалах нэг болон хэд хэдэн санг заахад хэрэглэгдэнэ. Хэрэв нэгээс их сан байгаа бол бичигдсэн дарааллаараа ашиглагдана. Файлын систем дүүрсэн тохиолдолд аудит дэд систем болон бусад дэд системүүд бие биедээ нөлөөлж болзошгүй учир аудит бүртгэлүүдийг тусгайлан зориулсан файлын систем дээр хадгалахаар аудит системийг ихэвчлэн тохируулдаг.

`flags` талбар нь системийн дагуух шинж чанар бүхий үйл явцуудад зориулсан анхдагч урьдчилан сонголтын багийг тодорхойлдог. Дээрх жишээн дээр бүх хэрэглэгчийн хувьд амжилттай болон амжилтгүй нэвтрэлт болон гаралтын үйл явцууд аудит хийгдэж байна.

`minfree` тохиргоо нь аудит мөр хадгалагдах файлын системийн хувьд хамгийн бага чөлөөт зайны хувийг тодорхойлдог. Энэ тогтоосон хэмжээнээс илүү гарахад анхааруулга үүсгэгддэг. Дээрх жишээ хамгийн бага чөлөөт зайг 20 хувиар тогтоожээ.

`naflags` тохиргоо нь нэвтрэн оролтын процесс болон системийн дэмонууд зэрэг шинж чанаргүй үйл явцуудыг аудит хийх аудитийн ангиллуудыг тодорхойлдог.

`policy` тохиргоо нь таслалаар тусгаарлагдсан, аудитийн зан авирын төрөл бүрийн шинж чанарыг хянах бодлогын тугуудын жагсаалтыг тодорхойлдог. Анхдагч `cnt` туг нь аудит амжилтгүй болсон ч гэсэн систем ажиллагаагаа үргэлжлүүлэхийг заадаг (энэ туг зайлшгүй шаардлагатай). Өөр нэг байнга ашиглагддаг туг бол `argv` бөгөөд энэ нь execve(2) системийн дуудлагад орж байгаа тушаалын мөрийн нэмэлт өгөгдлүүдийг тушаалын ажиллагааг аудит хийхийн хэсэг болох боломж олгодог.

`filesz` тохиргоо нь мөрийн файл автоматаар төгсөх болон эргэхээс өмнөх аудит мөрийн файлын хамгийн их хэмжээг байтаар тодорхойлдог. Анхдагч утга нь 0 байх ба автоматаар эргүүлэхийг хориглосон байна. Хэрэв хүссэн файлын хэмжээ тэгээс ялгаатай ба 512k -аас бага бол түүнийг орхиж бүртгэлийн мэдээлэл үүсгэнэ.

### 17.4.2.2 `audit_user` файл

`audit_user` файл нь зарим нэг хэрэглэгчдэд зориулсан аудитийн шаардлагуудыг администраторууд тодорхойлохыг зөвшөөрдөг. Мөр болгон хэрэглэгчид зориулсан аудитийг хийхийг хоёр талбараар тохируулдаг: нэг дэх нь хэрэглэгчийн хувьд үргэлж аудит хийх шаардлагатай нэг хэсэг үйл явцуудыг тодорхойлдог `alwaysaudit` талбар ба хоёр дахь нь `neveraudit` талбар бөгөөд хэрэглэгчийн хувьд хэзээ ч аудит хийх шаардлагагүй нэг хэсэг үйл явцуудыг тодорхойлдог.

Дараах жишээн дээр `audit_user` файл нь нэвтрэлт/гаралтын үйл явцууд, `root` хэрэглэгчийн амжилттай тушаалын ажиллагаа, файл үүсгэлт ба `www` хэрэглэгчийн амжилттай тушаалын ажиллагааг аудит хийж байна. Хэрэв дээрх жишээ `audit_control` файлтай цуг ашиглагдвал `root`-ийн `lo` оруулга нь давхардах бөгөөд `www` хэрэглэгчийн нэвтрэлт/гаралтын үйл явцууд бас аудит хийгдэнэ.

    root:lo,+ex:no
    www:fc,+ex:no

Prev | Home | Next
Аудит хийх дэмжлэг суулгах нь | Up | Аудит дэд системийг удирдах нь

Энэ болон бусад баримтуудыг ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ хаягаас татаж авч болно.

FreeBSD-ийн талаар <questions@FreeBSD.org> хаягтай холбоо барихаасаа өмнө баримтыг уншина уу.
Энэ бичиг баримттай холбоотой асуулт байвал <doc@FreeBSD.org> хаягаар цахим захидал явуулна уу.
Энэ бичиг баримтын орчуулгатай холбоотой асуулт байвал <admin@mnbsd.org> хаягаар цахим захидал явуулна уу.