Làm cách nào để ngăn Apache chạy bằng root?


8

Mới trong công việc, địa điểm nhỏ, và các công cụ an ninh vừa hạ cánh trên bàn của tôi. Tôi đã được thuê để trở thành một nhà phát triển front-end. Hạnh phúc khi học những điều mới, nhưng chưa bao giờ phải làm những thứ sysadmin trước đây.

Tôi bắt đầu đào và có vẻ như apache, trang web và mọi thứ đang chạy trên root. Không có nhóm hoặc người dùng khác. ACK!

Những bước tôi nên làm để thay đổi điều này? Tôi biết rằng đây là một không lớn ...

Điểm thưởng nếu bất cứ ai có thể vui lòng chỉ cho tôi một hướng dẫn 101 cơ bản tốt về bảo mật apache / php.

Câu trả lời:


12

Thật bất thường khi thấy Apache chạy như roottrong bất kỳ cấu hình chứng khoán nào. Làm thế nào bạn xác định rằng Apache đang chạy bằng root? Lưu ý rằng Apache phải khởi động với quyền root để liên kết với các cổng đặc quyền, nhưng thường sẽ loại bỏ các đặc quyền của nó sau này.

Bạn có thể xem cấu hình Apache của bạn (thường trong /etc/httpdhoặc /etc/apache2, tùy thuộc vào phân phối của bạn) để biết các chỉ thị UserGrouptài liệu (được ghi lại ở đây ). Hai chỉ thị này kiểm soát theo những gì người dùng id Apache chạy.

Nó cũng là bất thường để tìm một hệ thống "không có nhóm hoặc người dùng khác". Làm gì getent passwdgetent groupthể hiện điều gì? Có thực sự không có người dùng hoặc nhóm khác ngoài root? Hầu hết các bản phân phối đều có một apachehoặc một www-datangười dùng hoặc somesuch và một cấu hình phù hợp sẽ chạy Apache với tư cách là người dùng đó.

Có rất nhiều hướng dẫn giới thiệu về cấu hình và bảo mật của Apache. Một tìm kiếm đơn giản của Google mang lại nhiều kết quả có khả năng tìm kiếm. Hướng dẫn triển khai RedHat / CentOS là một nơi tốt để bắt đầu (nếu bạn đang sử dụng hệ thống RedHat / CentOS).


Cảm ơn, vâng, nó không chạy root, nhưng có vẻ như mọi thứ khác đã được thực hiện bằng root. tất cả các thư mục, tập tin, v.v. Tôi sẽ cần tìm ra cách thay đổi điều đó.
r00tAcc3ss

Chà ... không nhất thiết. Bạn không muốn các tệp được sở hữu bởi cùng một người dùng với quy trình Apache đang chạy. Lý tưởng nhất là sự thỏa hiệp trong máy chủ web sẽ không dẫn đến việc kẻ tấn công có thể sửa đổi cấu hình hoặc nội dung web Apache của bạn.
larsks

0

Bạn có thể chạy Apache với tư cách là bất kỳ người dùng nào có số cổng lớn hơn số cổng đặc quyền 1024+. Sau đó sử dụng chuyển tiếp cổng để chuyển tiếp lưu lượng truy cập từ cổng 80 và 443 đến các cổng cụ thể của bạn.

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.