Thông tin về quyền linux


1

Tôi đã tạo một người dùng và một nhóm có cùng tên (lighttpd: lighttpd)

Bây giờ tôi phải khởi động máy chủ lighy với những người dùng này: nhóm ... ok

Bây giờ, tôi đã thêm một trang web (vhost) để chạy với lighy, nó hoạt động tốt, nhưng tôi có một câu hỏi về quyền. Đối với vhost tôi đã tạo một người dùng khác và sau đó tôi đã thêm nó vào nhóm lighttpd.

mywebsite: lighttpd

Bây giờ, nếu tôi tạo các vhost khác, tôi sẽ tạo người dùng mới, nhưng nếu họ có cùng một nhóm, mỗi tên miền có thể xem các tệp bên trong các vhost khác, vậy tôi có thể làm gì để chặn điều này?

Bởi vì nếu tôi thay đổi quyền trên mỗi vhost để chỉ cho phép chủ sở hữu (600) xem các tệp ... Tôi nghĩ rằng tôi sẽ gặp vấn đề với lighttpd (nó không thể đọc trang).

Nếu tôi sử dụng 640, chủ sở hữu vshots khác có thể xem tất cả các tệp vì chúng có cùng nhóm.

Bạn có thể cho tôi biết cách tốt nhất để thiết lập quyền?

Câu trả lời:


0

Điều này dường như làm việc:

  • tạo người dùng / nhóm riêng biệt cho từng trang web của bạn, ví dụ: site1: site1
  • chown từng trang web cho chính người dùng và nhóm này
  • đặt quyền thư mục thành rwxr-x --- và rw-r ----- cho các tệp
  • chạy lighttpd trong ví dụ www-data: www / data user / group
  • thêm các nhóm trang web của bạn dưới dạng các nhóm bổ sung của người dùng dữ liệu www

Bước cuối cùng cho phép người dùng dữ liệu www (và do đó là quá trình lighttpd) truy cập các tệp thuộc về trang web của bạn. Mặt khác, người dùng, ví dụ: site1 không thể truy cập các trang web khác - đó là những gì bạn muốn, phải không?

Hãy nhớ rằng, người dùng vẫn có thể truy cập các tệp thuộc các trang web khác bằng cách sử dụng tập lệnh php - vì lighttpd có thể truy cập bất kỳ tệp vhost nào, do đó, tập lệnh php FastCGI có thể được sinh ra bởi lighttpd.


ok, chỉ có hai câu hỏi: 1. làm thế nào để "thêm các nhóm trang web của bạn dưới dạng các nhóm bổ sung của người dùng dữ liệu www"? bạn có thể cho tôi và ví dụ không? ... tôi sẽ biết nếu tôi hiểu bạn 2. làm thế nào tôi có thể chặn các tập lệnh php để đọc các tập tin vhost khác? CẢM ƠN

Bạn có thể sử dụng adduser <login> <group>để thêm người dùng vào một nhóm (hay nói cách khác là thêm nhóm vào danh sách các nhóm bổ sung của người dùng). Ngoài ra, bạn có thể chỉnh sửa /etc/group/tệp theo cách thủ công (xem man 5 group), nhưng tôi thực sự khuyên bạn nên sử dụng adduser. Vấn đề thứ hai khó khăn hơn nhiều - trình thông dịch php chạy với cùng một bộ quyền như máy chủ web.

. Để khắc phục điều này, bạn cần quản lý thủ công quy trình FastCGI riêng cho từng trang, nhưng tôi chưa bao giờ tự mình thử thiết lập như vậy với lighttpd.
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.