Làm cách nào để ngăn người dùng root xóa một tập tin?


8

Tôi muốn biết nếu tôi có thể ngăn người dùng root xóa một tập tin. Có thể không?


2
Tắt máy tính. Không thể làm bất cứ điều gì để ngăn chặn điều này!
slm

2
Root là thứ trong thế giới Windows được gọi là "superadmin", đây là một tài khoản được sử dụng cụ thể nó có thể làm bất cứ điều gì nó muốn. Ngay cả khi bạn đã ngăn chặn root làm điều gì đó, thì sẽ không có cách nào để làm điều đó. Mọi người chỉ nên có quyền truy cập root nếu không có gì có thể được thực hiện với quyền / acls / setuid / ability / sudo hoặc nếu làm như vậy sẽ mất nhiều thời gian hơn giá trị của nó. Nếu bạn quan tâm đến nó, hãy viết một tập lệnh để thực hiện những gì họ cần root và cung cấp cho họ quyền sudo cho tập lệnh đó.
Bratchley

tại sao bạn muốn làm việc này?
Nils

Câu trả lời:


13

Không, điều này là không thể. Bạn có thể đặt thuộc tính bất biến với chattr +i, ít nhất sẽ làm cho nó khó chịu và không rõ ràng những gì phải làm để cho phép ghi vào tệp, nhưng họ chỉ có thể hủy đặt lại nó. Ngoài ra, hệ thống tập tin của bạn phải hỗ trợ điều này và kích hoạt chức năng.

SELinux cũng có thể thực hiện một số hạn chế, nhưng một lần nữa, nó có thể bị vô hiệu hóa.

Giải pháp tốt hơn là kiểm soát chính xác người dùng và chương trình bằng cách giới hạn quyền truy cập của họ và không cho phép họ chạy dưới quyền root trừ khi thực sự cần thiết.


1
Nhưng, tất nhiên, SELinux và những thứ tương tự có thể ngăn chặn root vô hiệu hóa nó. :-)
Hauke ​​Laging

@HaukeLaging Root có thể, thông qua các cấu hình khác nhau, sửa đổi bộ nhớ tùy ý, do đó, nó trở nên ngày càng khó khăn hơn với mỗi rào cản. Chơi mèo và chuột bằng root thực sự không có nhiều điểm (nhưng đúng vậy, về mặt lý thuyết có thể ngăn chặn root làm như vậy).
Chris Down

@ChrisDown, SELinux chắc chắn có thể giảm quyền root đối với "người dùng bình thường", có quyền. Nó là một phần của toàn bộ ý tưởng, trên thực tế.
vonbrand

1
@vonbrand Trong khi đó có thể là điều mà Selinux mong muốn làm, thì rất khó để thực hiện trong thực tế. Như tôi đã nói, về mặt lý thuyết là có thể, nhưng thực tế là không thể.
Chris Down

@ChrisDown, rất nhiều có thể, nhưng rất không Unixy, nên rất ít người làm điều đó. Các ngón tay đã quá quen với việc làm những điều nhất định ... bên cạnh đó, nó chỉ có ý nghĩa đối với các cấu hình hoang tưởng cuối cùng.
vonbrand

6

Như những người khác đã nói, nói chung, ý tưởng root là người dùng được phép làm cho máy làm bất cứ điều gì máy có thể làm. Vì vậy, không có một cờ dễ dàng nào có thể ngăn chặn root cố ý xóa một tập tin ( chattr +icó thể ngăn chặn việc vô tình xóa).

Nhưng, mặc dù vậy, có một vài giải pháp:

  1. Đặt tệp trên máy chủ tệp và định cấu hình máy chủ tệp không cho phép xóa. Điều này hoạt động vì root cục bộ không phải root trên máy chủ tập tin.
  2. Đặt tệp trên phương tiện WORM . Điều này hoạt động vì phần cứng sẽ không cho phép ghi đè, vì vậy dữ liệu được bảo vệ. (Ghi đè không phải là thứ mà máy có thể làm.) Tùy chọn giá rẻ là CD-R và DVD-R. Hãy chắc chắn rằng ổ đĩa của bạn thực sự không thể ghi đè (phá hủy) các phần đã được viết. Có thẻ SD WORM là tốt.

0

Không.

Bất kỳ người dùng nào có đặc quyền "sudo" hoặc người dùng root đều có thể xem và xóa mọi thứ.

Tuy nhiên, trong một hệ thống lý tưởng, bạn sẽ không phải lo lắng về điều đó bởi vì chỉ có một người dùng có siêu đặc quyền và anh ta sẽ chỉ sử dụng khi cần thiết và luôn đáp ứng.


0

Có thể trong những trường hợp rất cụ thể:

Bạn có thể rút ổ đĩa USB nơi xảy ra thay đổi hoặc ngắt kết nối cáp ethernet giữa máy tính và NAS. Nhưng rất có thể tập tin sẽ bị hỏng hoặc không thể truy cập được hoặc cả hai.

Khác với hành động dựa trên phần cứng, bạn có thể khôi phục tệp từ bản sao lưu trước đó.

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.