Đăng nhập tất cả hoạt động root với tên người dùng ban đầu đã su'd / sudoed vào root


11

Phương pháp ưa thích để theo dõi ai đang đóng vai trò là root trong nhật ký khi đăng nhập root bị vô hiệu hóa (SSH) nhưng người dùng có thể chạy sudo -ihoặc su -trở thành root? Tôi cũng muốn làm theo mọi lệnh với tên người dùng ban đầu. RHEL 6 hoặc bất kỳ rsyslog Linux, v.v.

Câu trả lời:


7

Các phương thức mạnh mẽ nhất dường như được kiểm toán:

http://blog.ptsecurity.com/2010/11/requirement-10-track-and-monitor-all.html

Auditd về cơ bản chặn tất cả các cuộc gọi hệ thống và kiểm tra chúng theo bộ quy tắc của bạn. Vì vậy, trong /etc/audit/audit.rulestập tin của bạn, bạn sẽ có một cái gì đó như sau:

# This file contains the auditctl rules that are loaded
# whenever the audit daemon is started via the initscripts.
# The rules are simply the parameters that would be passed
# to auditctl.

# First rule - delete all
-D

# Increase the buffers to survive stress events.
# Make this bigger for busy systems
-b 320

# Feel free to add below this line. See auditctl man page
-a always,exit -F euid=0 -F perm=wxa -k ROOT_ACTION

Quy tắc cuối cùng là quy tắc duy nhất không mặc định.

Hạn chế chính của cách tiếp cận này (và lý do tôi tìm thấy câu hỏi này trong khi tìm kiếm giải pháp thay thế) là các tệp nhật ký thô khá khó hiểu và chỉ hữu ích sau khi chạy chương trình truy vấn trên tệp nhật ký thô: ausearch

Một truy vấn mẫu cho quy tắc đó sẽ là:

ausearch -ts today -k ROOT_ACTION -f audit_me | aureport -i -f

Một giải pháp thông thường có lẽ là tạo ra một cron sẽ truy vấn nhật ký kiểm toán thô của bạn và sau đó chuyển chúng đến giải pháp ghi nhật ký của bạn.


Nếu bạn đang tìm kiếm thứ gì đó thay thế audd và thực hiện mối tương quan của các sự kiện thô cho bạn, hãy xem: github.com/slackhq/go-audit
freb

3

Trên các bản phân phối Red Hat, bạn thường sử dụng /var/log/securenhật ký để xác định ai đã đăng nhập hoặc sử dụng sudotrên hệ thống Fedora / CentOS / RHEL.

Ví dụ

ví dụ sudo
$ sudo -Es

đăng nhập kết quả:

Ngày 1 tháng 9 19:32:51 greeneggie sudo: saml: TTY = pts / 2; NKT = / nhà / saml; NGƯỜI DÙNG = root; LỆNH = / bin / bash

ví dụ su
$ su -

đăng nhập kết quả:

Ngày 1 tháng 9 19:34:49 greeneggie su: pam_unix (su-l: session): phiên được mở cho người dùng root bằng saml (uid = 1000)


3

Nếu bạn có người dùng hợp tác, bạn có thể thiết lập rootsh để ghi nhật ký mọi thứ mà loại người dùng root vào syslog.

http://linux.die.net/man/1/rootsh

rootsh rpms có sẵn trong EPEL.

Phiên bản của sudo trên RHEL6 cũng có khả năng ghi lại thiết bị xuất chuẩn vào một tệp cho mỗi phiên sudo. Nhìn vào trang người đàn ông sudo_plugins.

Cả hai cách tiếp cận này đều hoàn toàn chống đạn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.