Quyền Debian cho máy chủ apache


2

Tôi đang cố gắng định cấu hình máy chủ apache của mình trên Debian 7. Tôi có cấu hình như sau: Mỗi người dùng linux có một thư mục trong thư mục / home. Trong thư mục người dùng của họ, họ có một dirctory www. Vì vậy, thư mục gốc apache của họ là / home / bob / www / Câu hỏi của tôi là: tôi nên đặt quyền gì cho thư mục www? Cho đến nay, tôi đã thêm người dùng dữ liệu www vào từng nhóm của mỗi người dùng (giả sử, nếu tôi có người dùng bob và pete, dữ liệu www là thành viên của cả hai nhóm bob và pete) và đặt quyền truy cập thư mục gốc của họ thành 774. Đây có phải là cách đúng đắn để làm việc này?

Cảm ơn trước

Câu trả lời:


0

Đầu tiên, có một sự cân nhắc chính ảnh hưởng đến các cách tiếp cận thiết lập cần thiết:

  1. Apache sẽ chỉ phục vụ nội dung tĩnh từ những nơi này (điều này có nghĩa là không có trang web "động" nào cho phép tải lên và không có trang web nào giống như CMS viết tệp nhật ký của riêng họ hoặc tệp tạm thời, v.v.).

    Trong trường hợp này, truy cập chỉ đọc cho Apache là OK.

  2. Người dùng muốn chạy các trang web động ( CGI và những thứ cao cấp hơn).

    Trong trường hợp này, bạn phải tạo một số vị trí trong hệ thống phân cấp có thể ghi được bằng Apache.

Bây giờ có những khả năng:

  • Chỉ cần làm cho các hệ thống phân cấp cần thiết có thể đọc được (và duyệt qua - cho các thư mục) cho mọi người.

    Rõ ràng, điều này chỉ hoạt động cho nội dung chỉ đọc (và do đó tĩnh).

    Trong trường hợp này chỉ cần đảm bảo các thư mục sẽ được phục vụ có a=rx quyền và tập tin trong đó có a=r quyền - nghĩa là, người dùng không phải là người dùng thuộc sở hữu và nhóm người dùng được phép truy cập các thư mục và đọc các tệp trong đó.

    Lưu ý rằng điều này sẽ làm cho các công cụ "xuất khẩu" có thể đọc được cho tất cả mọi người, không chỉ riêng Apache và điều này có thể gây ra vấn đề bảo mật.

  • Như Apache wiki gợi ý , tạo một nhóm riêng, làm cho Apache chạy với GID của nó và làm cho nhóm này có quyền truy cập phù hợp (R / O hoặc R / W nếu có) vào các tài nguyên.

    Thực tế, Debian đã có nhóm này, www-data, vì vậy bạn có thể chỉ cần thêm người dùng của mình vào nhóm đó. Một nhược điểm rõ ràng là họ sẽ tự động giành quyền truy cập vào các tài nguyên khác thuộc sở hữu của www-data nhóm.

  • Sử dụng phân tách đặc quyền bằng cách sử dụng mpm-itk hoặc một số cách tiếp cận khác. Điều này cho phép bạn phục vụ nội dung theo người dùng với các đặc quyền của mỗi người dùng (quy trình quản lý của apache chạy như root nhưng công nhân xử lý nó sinh ra chạy với thông tin xác thực của người dùng được chỉ định.

    Tôi không chắc điều này sẽ chơi tốt với mod_userdir Tuy nhiên.

  • Cân nhắc sử dụng ACIX POSIX để thực hiện kiểm soát truy cập chi tiết hơn vào các thư mục này.

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.