Làm cách nào tôi có thể bảo vệ một tập tin khỏi những thay đổi của người dùng?


15

Tôi đang sử dụng Ubuntu 12.04 và tôi muốn bảo vệ một số hình ảnh của một người dùng khác bằng lệnh su (tôi có quyền quản trị viên). Làm cách nào tôi có thể bảo vệ tệp bằng thiết bị đầu cuối trong khi vẫn cho phép những người dùng còn lại đọc nó?


Tôi muốn mọi người có thể xem nó bot không thể chỉnh sửa xóa nó
Jatttt

@ user222588 nghe có vẻ đủ rõ ràng, không phải lo lắng
Bruno Pereira

Phương pháp phụ thuộc vào các tập tin, chúng ở đâu? Một usb, ổ cứng chính của bạn?
Braiam

Câu trả lời:


25

Ubuntu sử dụng định dạng hệ thống tệp EXT4 theo mặc định (tôi giả sử rằng chúng ta không nói về bất cứ điều gì khác ở đây).

Nếu bạn không muốn sở hữu tệp mà không loại bỏ khả năng người dùng đọc tệp đó, bạn có thể bắt đầu bằng cách cho phép họ đọc, nhưng không ghi vào tệp đó bằng:

chmod a-w,ug+r foo_file

Mô tả: thay đổi quyền truy cập tệp, tất cả không thể ghi , người dùng + nhóm có thể đọc

Sau đó, có thể làm cho các tệp không thay đổi để ngay cả người dùng có quyền root cũng không thể thay đổi bằng cách sử dụng như sau:

sudo chattr +i foo_file

Để có thể xóa hoặc thậm chí sửa đổi tệp này, bạn cần sử dụng lệnh:

sudo chattr -i foo_file

và sau đó bạn sẽ có thể làm một cái gì đó với nó.

Điểm cộng của việc sử dụng này là hầu hết người dùng (và quản trị viên) chưa bao giờ gặp phải các tệp bất biến trong Linux.

Đó là người dùng sẽ thấy điều này khi cố gắng xóa (hoặc thay đổi) tệp:

~> sudo chmod a-w,ug+r asd
~> ll asd
-r--r--r-- 1 bruno bruno 156 feb 21 20:46 asd
~> sudo chattr +i asd
~> chmod +w asd
chmod: changing permissions of ‘asd’: Operation not permitted
~> rm asd
rm: remove write-protected regular file ‘asd’? y
rm: cannot remove ‘asd’: Operation not permitted
~> sudo rm asd
rm: cannot remove ‘asd’: Operation not permitted

trong khi vẫn có thể đọc nó:

~> cat asd
asd
...
Videos

Sau khi bạn phát hành chattr +itệp bị "khóa", không có thay đổi nào có thể được thực hiện cho đến khi người dùng có quyền root tắt nó đi chattr -i.


Chào bạn tôi. như một lời giải thích tốt đẹp
rdʒɑ

8

Chỉ cần sử dụng như dưới đây trong thiết bị đầu cuối của bạn ( CTRL+ ALT+ T)

chmod 700 -R /path/to/directory

Có chuyện gì với cái này vậy? bỏ phiếu tiêu cực với một lý do thích hợp nhiều đánh giá cao.
rdʒɑ

1

Hãy thử lệnh dưới đây trên thiết bị đầu cuối,

chmod u-rw /path/to/directory

Lệnh trên sẽ không cho phép người dùng hoặc nhóm khác đọc hoặc ghi thư mục đó nơi lưu trữ hình ảnh.

chmod u+rw /path/to/directory

Để hoàn nguyên các thay đổi chạy lệnh trên.


1
vui lòng cung cấp lý do cho downvote.
Avinash Raj

2
Tôi tưởng tượng downvote là vì bạn đang lấy quyền từ chủ sở hữu chứ không phải người dùng và nhóm khác.
Ben Voigt

0

Nếu bạn muốn mã hóa tập tin, bạn có thể sử dụng bcryptđể mã hóa và giải mã tập tin. Nó sử dụng mã hóa tập tin blowfish.

gõ: sudo apt-get install bcryptđể cài đặt nó.

Sau khi cài đặt loại sudo bcrypt file-nameđể mã hóa nó.


0

Tôi khuyên bạn nên sử dụng Truecrypt để tạo một "đĩa di động" được mã hóa thành 1 tệp. Nếu bạn tạo ví dụ phân vùng Truecrypt 1GB và bạn có thể bảo vệ tệp này bằng mật khẩu. (Tùy chọn chuyên gia: bạn có thể đặt 2 mật khẩu cho tệp đó: với mật khẩu đầu tiên bạn thấy một phần bình thường của tệp và với mật khẩu 2 bạn thấy phần ẩn) Bạn có thể gắn tệp này trong Linux, Mac hoặc trong Windows (gắn vào ổ đĩa e:) và bạn sẽ hiển thị tệp 1GB đó giống như ổ đĩa / ổ đĩa flash và bạn có thể ngắt kết nối khi bạn muốn.

Nếu bạn tạo tệp 1GB đó (hoặc bất kỳ kích thước nào, hoặc toàn bộ đĩa hoặc ổ đĩa), bạn có thể thêm bất kỳ tiện ích mở rộng nào cho tệp đó để ẩn. (Không bao giờ đặt tệp đó vào thư mục chính của bạn là secret.truecrypt.file.with.pwd lol)

Nếu bạn sử dụng bất kỳ tên tệp hệ thống nào trong thư mục hệ thống, có thể người dùng bình thường không bao giờ nhận thấy đó không phải là tệp hệ thống, đó là tệp được mã hóa riêng tư.

Ví dụ để ẩn tập tin này:

/usr/lib/libc8.2.so
/usr/lib/libxml24.so.9.1.3

Tên tập tin tạm thời khác:

Win386.swp
nsz17BE.tmp
mmc00C1B00C.xml
jusched.log
IMT211.xml
i4j8470767517827925011.tmp
FTP7F0.tmp
e4j3B.tmp
  • Chọn một lược đồ và thay đổi số cho một tên tệp.

  • và cũng đặt quyền ... và sau khi hoàn tất, hãy xóa các lệnh của bảng điều khiển lịch sử

  • Với giải pháp đó, người dùng bình thường sẽ không bao giờ tìm thấy tập tin bí mật của bạn.

  • Trong Pendrive, tạo một thư mục TEMP và sử dụng tên tệp tạm thời, như các ví dụ về tệp. và tạo một vài bản sao lưu với tên khác nhau ...

Bạn có thể cài đặt truecrypt nếu muốn, ví dụ:

sudo add-apt-repository ppa:michael-astrapi/ppa
sudo apt-get update
sudo apt-get install truecrypt

Thêm thông tin trong trang chủ Truecrypt


0

Nếu bằng cách bảo vệ, bạn có nghĩa là ngăn chặn mọi sửa đổi đối với các tệp này, hãy xem xét sử dụng tiện ích chattr . Nó có các tệp tùy chọn đánh dấu là bất biến (không thể thay đổi).

chattr +i /home/username/pictures/example1.png

Điều này sẽ ngăn tất cả người dùng và thậm chí người dùng root xóa hoặc sửa đổi bất kỳ tệp nào được đặt thành không thay đổi.

Bạn có thể đảo ngược hành động này bằng cách thay thế "+ i" bằng "-i".

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.