Vậy làm thế nào để bạn loại bỏ người dùng [lành tính] khỏi hộp Linux của bạn?
Cuối cùng, việc xác định và kết thúc các quá trình được sở hữu, liên kết hoặc sinh ra từ id người dùng. Bất cứ lệnh nào bạn sử dụng để đạt được mục tiêu cuối cùng đó không nhất thiết phải miễn là bạn đạt được điều đó.
Về cơ bản hai câu trả lời ...
Tùy chọn A: gây ra đăng xuất của người dùng đã nói, trong đó bao giờ và tuy nhiên nhiều thông tin đăng nhập họ có. Vì vậy, điều này có nghĩa là xác định các quy trình thuộc sở hữu của người dùng, có thể theo dõi bởi uid và được phân loại là một phần của quy trình đăng nhập cho bản phân phối linux đã cho mà bạn đang chạy. Nhận ra có các quy trình cha mẹ như SSH hoặc VNC trước khi "đăng nhập" và các quy trình con như GDM sau khi "đăng nhập" Thông thường việc giết một quy trình cha mẹ sẽ giết chết quy trình con, nhưng không phải lúc nào cũng vậy. Vì vậy, bạn sẽ muốn giết các quá trình khác mà rõ ràng là không còn cần thiết sau khi đăng xuất. Khi thực hiện tất cả điều này, điều này sẽ giữ cho các công việc nền chạy ... bởi vì đó là một người dùng lành tính và có lẽ bạn chỉ muốn đăng xuất chúng. Theo như tôi biết, /usr/bin/w
và /usr/bin/who
sẽ báo cáo những người đã thông qua quá trình đăng nhập.
tùy chọn B: kết thúc hoàn toàn tất cả các quy trình thuộc sở hữu của một uid cụ thể, điều đó đơn giản có nghĩa là giết bất kỳ và tất cả các quy trình thuộc sở hữu của người dùng đã nói, điều này cũng sẽ đăng xuất chúng nếu chúng được đăng nhập. Điều này sẽ thỏa mãn việc loại bỏ chúng khỏi hệ thống . Điều đó chỉ cần đơn giản ps -ef | grep <uid>
và sau đó kết thúc tất cả các quy trình theo bất kỳ cách nào được chấp nhận.
fwiw trong SLES 11 nó báo cáo
kỹ năng của con người ... Những công cụ này có lẽ đã lỗi thời và không thể truy cập được. Cú pháp lệnh được xác định kém. Thay vào đó, hãy xem xét sử dụng các lệnh killall, pkill và pgrep.
kill -9
FTW!
who(1)
hoặcw(1)
. Cách duy nhất để loại bỏ mọi rootkit tiềm năng có thể được cài đặt là xóa sạch và cài đặt lại hệ thống.