Tôi vừa thêm một "người dùng máy tính để bàn" mới, kém chất lượng và tôi đã ngạc nhiên khi phát hiện ra rằng nó có thể nhìn thấy các tệp trong thư mục nhà của tôi.
Lý do để thiết lập các quyền lỏng lẻo như vậy là gì?
Tôi vừa thêm một "người dùng máy tính để bàn" mới, kém chất lượng và tôi đã ngạc nhiên khi phát hiện ra rằng nó có thể nhìn thấy các tệp trong thư mục nhà của tôi.
Lý do để thiết lập các quyền lỏng lẻo như vậy là gì?
Câu trả lời:
Một Public
thư mục tồn tại trong thư mục Home của bạn ( /home/user
) để chia sẻ tệp với người dùng khác. Nếu một người dùng khác muốn có quyền truy cập vào Public
thư mục này , bit thực thi cho thế giới nên được đặt trên thư mục Home.
Nếu bạn không cần cho phép người khác truy cập vào thư mục nhà của mình (người khác hoặc người dùng như www-data
máy chủ web), bạn sẽ ổn với chmod o-rwx "$HOME"
(xóa đọc / ghi / thực thi khỏi "khác", tương đương với chmod 750 "$HOME"
quyền mặc định là 750 ). Mặt khác, bạn cũng nên thay đổi umask
cài đặt để ngăn các tệp mới tạo nhận được quyền đọc cho thế giới theo mặc định.
Đối với cấu hình toàn hệ thống, hãy chỉnh sửa /etc/profile
; cài đặt cho mỗi người dùng có thể được cấu hình trong ~/.profile
. Tôi thích chính sách tương tự cho tất cả người dùng, vì vậy tôi sẽ chỉnh sửa /etc/profile
tệp và nối thêm dòng:
umask 027
Bạn cần đăng nhập lại để áp dụng những thay đổi này, trừ khi bạn ở trong vỏ. Trong trường hợp đó, bạn có thể chạy umask 027
trong shell.
Bây giờ để sửa các quyền hiện có, bạn cần xóa các quyền đọc / ghi / thực thi khỏi các quyền khác:
chmod -R o-rwx ~
Bây giờ nếu bạn quyết định chia sẻ ~/Public
thư mục cho mọi người, hãy chạy các lệnh tiếp theo:
chmod o+x ~
- cho phép mọi người hạ xuống trong thư mục ( x
), nhưng không nhận được danh sách thư mục ( r
không nên thêm vào)find ~/Public -type f -exec chmod o+r {} \;
- cho phép mọi người đọc các tập tin trong ~/Public
find ~/Public -type d -exec chmod o+rx {} \;
- cho phép mọi người xuống thư mục và liệt kê nội dung của họNếu bạn đang sử dụng lõi GNU (ví dụ trên Ubuntu, không phải trên hệ thống nhúng busybox
), thì hai lệnh trước đó sử dụng find
và chmod
có thể được thay thế bằng lệnh đơn này làm cho đệ quy các thư mục và tệp có thể đọc được (và thêm vào đó là thực thi (giảm dần) bit cho thư mục duy nhất ):
chmod -R o+rX ~/Public
Theo một nhân viên của Ubuntuforms.org , đó là để giúp chia sẻ tệp giữa những người dùng mới dễ dàng hơn.
Bạn có thể thay đổi quyền thành 700 hoặc 750 nếu bạn không muốn các tệp khác có thể đọc và thực thi được.
Lệnh là:
chmod 750 $HOME
Lưu ý: Mặc định của Ubuntu là 755
"Phần lớn người dùng hệ thống Ubuntu đều sử dụng máy độc quyền (máy tính xách tay cá nhân) hoặc đang chia sẻ với bạn bè và người thân. Chúng tôi cho rằng những người chia sẻ máy đều đáng tin cậy hoặc ở vị trí để hack máy (khởi động từ USB!) tầm thường. Kết quả là, có rất ít hoặc không có lợi ích "
... khỏi việc xóa các quyền đó.
Bạn có thể đọc phần Quản lý người dùng của Hướng dẫn máy chủ Ubuntu bao gồm các chi tiết cần thiết. Các Hồ sơ người dùng An ninh đoạn có thể sẽ giải đáp thắc mắc của bạn - chính thức.
Tôi nghĩ rằng câu trả lời của Lekensteyn có thể được cải thiện bằng cách thay thế hai lệnh find cuối cùng bằng chmod bằng tùy chọn -X (lưu ý viết hoa X). Hai lệnh find có thể được thay thế bằng
chmod -R o+rX ~/Public
Điều này phân biệt thích hợp giữa các tệp và thư mục, nhưng có tác dụng bổ sung là cho phép người khác chạy các tệp thực thi.
Vì đó là quyền riêng tư mà bạn quan tâm (đánh giá từ các thẻ đã được áp dụng), rất có thể việc thiết lập quyền là không đủ (xem câu trả lời của ignis ). Câu trả lời có thể là một cái gì đó dọc theo dòng của một thư mục nhà được mã hóa . Giải pháp này được thiết kế đặc biệt để chống lại cuộc tấn công của một người dùng máy tính khác. Tất nhiên, nó sẽ không thể ngăn người dùng khác làm hỏng các tệp của bạn (bằng cách xóa ~/.Private
thư mục, do đó xóa tất cả các tệp của bạn), nhưng họ sẽ không thể gắn thư mục và xem các tệp mà không có mật khẩu của bạn.
Cách dễ nhất để đạt được điều đó là trong quá trình cài đặt, có một hộp kiểm, ghi "Mã hóa thư mục nhà của bạn" và bạn cần chọn nó.
Vì không chắc là bạn sẽ muốn cài đặt lại chỉ vì điều đó (và vì nó vẫn mang tất cả các rủi ro có liên quan đến việc thực hiện mà không cần cài đặt lại), bạn có thể thực hiện như sau:
sudo apt-get install encryptfs-utils
encryptfs-migrate-home
Nếu bạn thực sự cần một mức độ bảo mật cao: vui lòng cài đặt lại và đảm bảo chọn tùy chọn để mã hóa toàn bộ đĩa của bạn. Điều này sẽ yêu cầu một cụm mật khẩu để thậm chí khởi động máy. Tất nhiên bạn cũng có thể mã hóa thư mục nhà của bạn một lần nữa trên đầu trang này, với một số suy giảm hiệu suất; mặc dù không đáng chú ý để sử dụng bình thường.
Xin lưu ý rằng việc mã hóa thư mục nhà của bạn sẽ vô hiệu hóa các ứng dụng như Dropbox. Dropbox không phải là lưu trữ an toàn tôn trọng quyền riêng tư, vì vậy đó có thể là một điểm khá. Tuy nhiên, nếu bạn cần lưu trữ an toàn và riêng tư trên đám mây, cá nhân tôi sẽ khuyên dùng MEGAsync vì chỉ bạn mới có khóa để truy cập dữ liệu.