Bảo vệ máy chủ Apache trên CentOS 6

Thật dễ dàng để thực hiện các phím tắt khi bảo vệ máy chủ, nhưng bạn sẽ có nguy cơ mất dữ liệu trong trường hợp kẻ tấn công có quyền truy cập root vào bất kỳ máy chủ nào của bạn. Ngay cả đối với các cài đặt đơn giản, bạn cần bảo mật máy chủ của mình trước. Bảo mật máy chủ là một chủ đề rộng và thay đổi tùy theo HĐH và các ứng dụng đang chạy trên chúng.

Hướng dẫn này tập trung vào việc bảo vệ Apache theo CentOS 6. Có một vài bước cài đặt bài đăng bạn có thể thực hiện để bảo vệ bản thân khỏi sự leo thang đặc quyền, cũng như các cuộc tấn công dưới đặc quyền.

Nếu không có thêm rắc rối, hãy bắt đầu.

Bước 1 - Cài đặt máy chủ web

Tất nhiên, nếu bạn chưa cài đặt Apache hoặc PHP, bạn nên làm điều đó ngay bây giờ. Thực thi lệnh này với tư cách là người dùng root hoặc sử dụng sudo:

yum install httpd php

Bước 2 - Bảo vệ thư mục nhà của bạn

Bây giờ Apache đã được cài đặt, hãy tiếp tục và bắt đầu bảo mật nó. Đầu tiên, chúng tôi muốn đảm bảo rằng các thư mục của người dùng khác sẽ không hiển thị bởi bất kỳ ai trừ chủ sở hữu. Chúng tôi sẽ chmod tất cả các thư mục nhà đến 700, để chỉ chủ sở hữu tương ứng của các thư mục nhà mới có thể xem các tệp của riêng họ. Chạy lệnh này với quyền root hoặc sử dụng sudo:

chmod 700 /home
chmod 700 /home/*
chmod 700 /home/*/*

Bằng cách sử dụng các ký tự đại diện, chúng tôi sẽ bao gồm tất cả các tệp hiện đang lưu trong thư mục chính.

Bước 3 - Áp dụng bản vá bảo mật cho Apache để phân tách đặc quyền người dùng

Trước khi vá Apache, trước tiên chúng ta cần cài đặt kho chứa gói có bản vá. Chạy các lệnh sau dưới dạng root (hoặc sudo).

yum install epel-release
yum install httpd-itk

Với "apache2-mpm-itk", chúng ta có thể biết người dùng PHP nên chạy gì dựa trên máy chủ ảo. Nó bổ sung một tùy chọn cấu hình mới AssignUserId virtualhost-user virtualhost-user-group, cho phép chúng tôi yêu cầu Apache / PHP thực thi mã người dùng trong một tài khoản người dùng cụ thể.

Nếu bạn đang chia sẻ máy chủ này, tôi cho rằng bạn đã tạo một máy chủ ảo cho Apache trước đây. Trong trường hợp đó, bạn có thể bỏ qua bước 4.

Bước 3 - Tạo máy chủ ảo đầu tiên của bạn

Bạn có thể làm theo mẫu bên dưới để tạo một máy chủ ảo trong Apache.

NameVirtualHost mytest.website

<VirtualHost mytest.website>

DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
</VirtualHost>

Mở trình soạn thảo văn bản yêu thích của bạn /etc/httpd/conf.d/example-virtualhost.confvà sau đó thêm nội dung ở trên vào đó. Đây là lệnh sử dụng nano:

nano /etc/httpd/conf.d/example-virtualhost.conf

Hãy để tôi giải thích cấu hình ở đây. Khi chúng tôi chỉ định "NameVirtualhost", chúng tôi thực sự nói với máy chủ web rằng chúng tôi đang lưu trữ nhiều tên miền trên một IP . Bây giờ, trong ví dụ này, tôi đã sử dụng mytest.websitenhư một miền ví dụ. Thay đổi nó thành của bạn, hoặc một miền bạn chọn. DocumentRootlà những gì cho Apache biết nơi nội dung được đặt. ServerNamelà một chỉ thị mà chúng tôi sử dụng để nói với Apache tên miền của trang web. Và một thẻ cuối cùng, thông báo </VirtualHost>cho Apache rằng đó là sự kết thúc của cấu hình máy chủ ảo.

Bước 4 - Cấu hình Apache để chạy như một người dùng khác

Như đã đề cập trước đó, một phần của việc bảo vệ máy chủ của bạn bao gồm chạy Apache / PHP như một người dùng riêng cho mỗi máy chủ ảo. Nói với Apache để làm điều này thật đơn giản sau khi chúng tôi áp dụng bản vá - tất cả những gì bạn cần làm là thêm:

AssignUserId vhost-user vhost-user-group

... để cấu hình của bạn. Dưới đây là ví dụ máy chủ ảo sẽ trông như thế nào sau khi chúng tôi thêm tùy chọn này:

NameVirtualHost mytest.website

<VirtualHost mytest.website>

DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
AssignUserId vhost-user vhost-user-group

</VirtualHost>

Phép thuật là trong dòng bắt đầu với AssignUserId. Với tùy chọn này, chúng tôi đang bảo Apache / PHP chạy như người dùng / nhóm sau.

Bước 5 - Ẩn phiên bản của Apache

Bước này khá đơn giản; chỉ cần mở tệp cấu hình của Apache bằng cách thực hiện lệnh sau với tư cách là người dùng root:

nano /etc/httpd/conf/httpd.conf

Tìm "ServerTokens" và thay đổi tùy chọn sau thành "ProductOnly". Điều này nói với Apache chỉ tiết lộ rằng đó là "Apache", thay vì "Apache / 2.2" hoặc một cái gì đó tương tự.

Bước 6 - Khởi động lại Apache để áp dụng các thay đổi

Bây giờ chúng tôi đã bảo mật máy chủ, chúng tôi phải khởi động lại máy chủ Apache. Thực hiện việc này bằng cách chạy lệnh sau dưới dạng root hoặc với sudo:

service httpd restart

Phần kết luận

Đây chỉ là một vài bước bạn có thể thực hiện để bảo mật máy chủ của mình. Một lần nữa, ngay cả khi đó là người mà bạn tin tưởng đang lưu trữ trang web trên máy chủ của mình, bạn nên lập kế hoạch để bảo vệ trang web đó. Trong các tình huống ở trên, ngay cả khi tài khoản người dùng bị xâm phạm, kẻ tấn công sẽ không có quyền truy cập vào toàn bộ máy chủ.



Leave a Comment

Cách cài đặt SuiteCRM trên Ubuntu 16.04

Cách cài đặt SuiteCRM trên Ubuntu 16.04

Hướng dẫn cài đặt SuiteCRM, một giải pháp CRM mã nguồn mở, trên Ubuntu 16.04 với các bước chi tiết và dễ hiểu.

ReactOS: Đây có phải là tương lai của Windows?

ReactOS: Đây có phải là tương lai của Windows?

ReactOS, một hệ điều hành mã nguồn mở và miễn phí đã có phiên bản mới nhất. Liệu nó có thể đáp ứng đủ nhu cầu của người dùng Windows hiện đại và hạ gục Microsoft? Hãy cùng tìm hiểu thêm về trải nghiệm hệ điều hành kiểu cũ nhưng mới hơn này.

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Các cuộc tấn công ransomware đang gia tăng, nhưng liệu AI có thể giúp đối phó với loại virus máy tính mới nhất? AI có phải là câu trả lời? Đọc ở đây biết là AI boone hay cấm

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Whatsapp cuối cùng đã ra mắt ứng dụng Máy tính để bàn cho người dùng Mac và Windows. Giờ đây, bạn có thể truy cập Whatsapp từ Windows hoặc Mac một cách dễ dàng. Có sẵn cho Windows 8+ và Mac OS 10.9+

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Hãy đọc phần này để biết Trí tuệ nhân tạo đang trở nên phổ biến như thế nào đối với các công ty quy mô nhỏ và làm thế nào nó đang tăng khả năng khiến họ phát triển và giúp đối thủ cạnh tranh của họ có thể cạnh tranh.

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Gần đây Apple đã phát hành macOS Catalina 10.15.4 một bản cập nhật bổ sung để khắc phục các sự cố nhưng có vẻ như bản cập nhật đang gây ra nhiều vấn đề hơn dẫn đến việc máy mac bị chai. Đọc bài viết này để tìm hiểu thêm

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Máy tính của chúng tôi lưu trữ tất cả dữ liệu một cách có tổ chức được gọi là hệ thống tệp Ghi nhật ký. Đây là một phương pháp hiệu quả cho phép máy tính tìm kiếm và hiển thị các tệp ngay khi bạn nhấn tìm kiếm. Https://wethegeek.com/? P = 94116 & preview = true

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Khi Khoa học phát triển với tốc độ nhanh chóng, chiếm rất nhiều nỗ lực của chúng ta, những rủi ro của việc phục tùng bản thân trước một Điểm kỳ dị không thể giải thích cũng tăng lên. Hãy đọc, điểm kỳ dị có thể có ý nghĩa gì đối với chúng ta.

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1