Liên hệ
Ủng hộ, đăng ký theo dõi kênh

Cấu hình để bảo mật Apache Web Server

Hướng dẫn một số cấu hình cơ bản giúp tăng tính bảo mật của Apache trước khi sử dụng nó.

Trước tiên thiết lập, bạn nắm một số điều cơ bản về Apache như sau. Apache nó thường được cài với mặc định như sau:

  • Document root Directory: /var/www/html or /var/www
  • File cấu hình tại: /etc/httpd/conf/httpd.conf (RHEL/CentOS/Fedora) và /etc/apache/apache2.conf (Debian/Ubuntu).
  • Cổng HTTP mặc định: 80 TCP
  • Cổng HTTPS mặc định: 443 TCP
  • Kiểm tra file cấu hình bằng lệnh: httpd -t
  • Log truy cập tại: /var/log/httpd/access_log
  • Log ghi lại lỗi tại: /var/log/httpd/error_log
  • Lệnh khởi động lại Apache:  #service httpd restart
  • Sửa nội dung file httpd.conf bạn dùng lệnh sửa text nào có trong hệ thống của bạn như vi, vim ...

1) Ẩn thông tin phiên bản Apache và hê điều hành khi truy cập trang không có

Khi truy cập với một URL lỗi, nó có thể hiện thị thông tin về Apache và OS mà bạn muốn giấu như:

Lỗi apache

Để tắt thông tin này bạn sủa file config của Apache (httpd.conf)

ServerSignature Off
ServerTokens Prod

Rồi khởi động lại Apache, nó sẽ không còn xuất hiện Version Apache nữa.

2) Hủy liệt kê danh sách file

Mặc định Apache sẽ liệt kê danh sách file trong Directory theo dạng:

 index apache Để tắt nó bạn cần thêm directive Options như sau:

<Directory /var/www/html>
    Options -Indexes
</Directory>

Khởi động lại Apache sẽ không còn liệt kê nữa

3) Cập nhật Apache thường xuyên

Mỗi phiên bản Apache thường xuyên được cập nhật để vá lỗi. Để kiểm tra phiên bản Apache dùng lệnh httpd -v

# httpd -v
Server version: Apache/2.2.15 (Unix)
Server built:   Aug 13 2013 17:29:28

Để cập nhật dùng lệnh

# yum update httpd
# apt-get install apache2

4) Hủy load các Module không dùng đến

Để kiểm tra Module nào được tải bởi Apache dùng lệnh:

# grep LoadModule /etc/httpd/conf/httpd.conf

Để hủy module nào thêm # trước dòng LoadModule đó rồi khởi động lại Apache.

5) Sử dụng Allow, Deny để hạn chế truy cập các thư mục

Thường thêm vào nội dung:

<Directory />
   Options None
   Order deny,allow
   Deny from all
</Directory>

 

  • Options “None” –  Không cho phép User bật lại thiết lập (Ví dụ cố tình bật thông qua file htaccess)
  • Order deny, allow – Thứ tự đọc các thiết lập deny trước, allow sau
  • Deny from all – Không ai được truy cập thư mục gốc

6) Giới hạn kích thước Request gửi đến

Mặc định thì Apache không hạn chế, có nghĩa là Request có thể gửi đến 1 vài GB dữ liệu trong một lần request.

Để chỉnh thì bạn làm như sau, ví dụ bạn chỉ cho phép upload file kích thước từ 500K trở xuống.

<Directory "/var/www/myweb1/user_uploads">
   LimitRequestBody 512000
</Directory>

Vui lòng đăng ký ủng hộ kênh