Vì Apache là máy chủ web được sử dụng rộng rãi nhất trên thế giới trên Internet (tính đến tháng 7 năm 2015, Apache là 38%, IIS là 26% và Nginx là 15%), bạn càng biết nhiều về nó và hiểu về nó, bạn càng thành công có khả năng đã hack nó.

Trong hướng dẫn này, chúng tôi sẽ kiểm tra các kiến ​​thức cơ bản về cách máy chủ Apache được cấu hình. Giống như gần như mọi ứng dụng trong Linux hoặc Unix, cấu hình được thực hiện với tệp cấu hình văn bản thuần túy. Apache cũng không ngoại lệ. Do đó, chúng tôi sẽ tập trung vào tệp apache2.conf trong thư mục / etc / apache2 .

Bước 1 Bắt đầu Apache2

Hãy bắt đầu bằng cách bắt đầu Apache2. Chúng tôi có thể thực hiện điều đó thông qua GUI bằng cách truy cập Ứng dụng -> Kali Linux -> Dịch vụ hệ thống -> HTTP -> apache2 bắt đầu, như hiển thị bên dưới.

linux config apache

Hoặc bắt đầu nó bằng dòng lệnh, như dưới đây.

kali> service apache2 start

Điều này khởi động trình nền Apache2 và máy chủ web hiện sẽ phục vụ nội dung của chúng tôi với Internet.

Bước 2 Duyệt đến máy chủ

Để kiểm tra xem máy chủ Apache của chúng tôi có hoạt động hay không, hãy duyệt qua localhost hoặc 127.0.0.1. Nếu bạn thấy trang sau, bây giờ bạn biết rằng máy chủ đang hoạt động đúng!

cài đặt apache hdh linux

Bước 3 Mở tệp cấu hình

Để cấu hình Apache, chúng ta cần vào thư mục / etc / apache2 .

kali> cd / etc / apache2

Sau đó, làm một danh sách dài trên thư mục này.

kali> ls -l

cài đặt apache hdh linux

Như bạn có thể thấy, có một số tệp và thư mục trong thư mục này. Đối với mục đích của chúng tôi bây giờ, quan trọng nhất là apache2.conf , nhưng cũng lưu ý rằng chúng tôi có tệp port.conf và thư mục sites_av Available , chúng tôi sẽ sử dụng sau trong hướng dẫn này và một số tệp và thư mục cấu hình khác.

Chúng tôi có thể mở apache2.conf trong bất kỳ trình soạn thảo văn bản nào, nhưng ở đây tôi sẽ sử dụng Leafpad. Nó có thể được mở bằng cách gõ đơn giản:

kali> leafpad /etc/apache2/apache2.conf

cài đặt apache hdh linux

Như bạn có thể thấy, điều này sẽ mở một tệp văn bản đơn giản với tất cả thông tin cấu hình cho máy chủ web Apache của chúng tôi. Tôi sẽ cố gắng hướng dẫn bạn qua các yếu tố chính của tệp này để định cấu hình máy chủ của chúng tôi.

Bước 4 ServerRoot

Hãy cuộn qua tất cả các ý kiến ​​và đến dòng # 70 nơi phần cấu hình toàn cầu bắt đầu. Ở đây chúng ta có thể thấy rằng ServerRoot được cấu hình ở đây. Đây là đỉnh của cây thư mục nơi máy chủ Apache lưu giữ tất cả các tệp liên quan đến máy chủ của nó. Dòng # 84 định nghĩa ServerRoot. Chúng tôi chỉ đơn giản có thể bỏ qua nó nếu chúng tôi muốn đặt / etc / apache2 làm ServerRoot của chúng tôi. Tôi khuyên bạn nên làm điều đó.

cài đặt apache hdh linux

Bước 5 Timeout (Hết giờ)

Trong phần tiếp theo, chúng ta có các biến xác định Timeout, KeepAlive, MaxKeepAliveRequests và KeepAliveTimeout.

cài đặt apache hdh linux
  • Hết giờ : Đây là thời gian máy chủ phải thực hiện từng yêu cầu. Cài đặt mặc định là 300, có nghĩa là máy chủ có 300 giây hoặc 5 phút để thực hiện mỗi yêu cầu. Điều này có thể quá dài và có thể được đặt thành khoảng 30 giây
  • KeepAlive : Điều này có nghĩa là máy chủ được giữ nguyên cho nhiều yêu cầu từ cùng một máy khách. Nó được đặt thành “Bật” theo mặc định, điều đó có nghĩa là khách hàng không phải tạo kết nối mới với mọi yêu cầu, tiết kiệm nhiều chi phí trên máy chủ.
  • MaxKeepAliveRequests : Đây là số giây tối đa giữa các yêu cầu từ một kết nối được thiết lập. Nếu chúng ta đặt giá trị này thành 0, thì lượng thời gian là không giới hạn.
  • KeepAliveTimeout : Đây là khoảng thời gian giữa các yêu cầu mà kết nối được giữ nguyên.

Tôi đề nghị bạn nên để mặc định tất cả, ngoại trừ “Hết giờ”. Mỗi tình huống là khác nhau và bạn có thể cần phải thay đổi các giá trị mặc định này thành hiệu suất phù hợp với môi trường cụ thể của mình.

Bước 6 Người dùng & Nhóm Apache2

Hãy bỏ qua một vài dòng trong tệp apache2.conf cho đến khi chúng tôi nhận được dòng # 177. Ở đây chúng ta có thể đặt người dùng và nhóm Apache2. Lưu ý trong nhận xét về Dòng # 177 rằng chúng ta có thể đặt các biến này trong tệp envvars ( biến môi trường ). Chúng tôi sẽ để điều này cho một hướng dẫn trong tương lai, nhưng lưu ý rằng cả Người dùng và Nhóm là các biến xuất phát từ tệp / etc / apache2 / envvars .

Tiếp theo, chúng ta có thể định nghĩa AccessFileName trong Dòng # 187. Điều này xác định nơi chúng ta có thể đi trong mỗi thư mục để tìm các chỉ thị cấu hình.

cài đặt apache hdh linux

Phần cuối cùng này bắt đầu trên Dòng # 193 ở đây rất quan trọng đối với bảo mật của Apache. Những dòng này đảm bảo rằng các máy khách web không thể truy cập các tệp .htaccess hoặc .htpasswd .

Bước 7 Đăng nhập

Phần tiếp theo này định nghĩa cách Apache quản lý việc ghi nhật ký.

Trong khổ thơ đầu tiên, chúng tôi giải quyết HostNameLookups. Lệnh này cho Apache2 biết có nên thực hiện tra cứu DNS khi ghi nhật ký kết nối hay không. Bằng cách giữ “tắt” như mặc định, Apache2 hoạt động tốt hơn nhiều.

cài đặt apache hdh linux

Bước 8 Trang web có sẵn

Tiếp theo, hãy xem thư mục site_av Available và quan trọng nhất là tệp mặc định ở đó. Điều này thường được gọi là tệp Máy chủ ảo mặc định. Mở tệp này bằng cách gõ:

kali> leafpad / etc / apache2 / site_av Available / default

cài đặt apache hdh linux

Như bạn có thể thấy, có ba khu vực quan trọng của tập tin này. Dòng đầu tiên xác định cổng mà máy chủ web đang nghe. Ở đây, nó được định nghĩa là nghe trên bất kỳ giao diện nào trên cổng 80 (*: 80). Dòng thứ hai xác định nơi gửi email khi có sự cố máy chủ. Theo mặc định, nó được đặt thành quản trị trang web @ localhost. Nếu bạn là systemadmin, bạn có thể muốn đặt địa chỉ này thành địa chỉ email của mình (hoặc đơn giản là bí danh địa chỉ này thành địa chỉ của bạn). Mục thứ ba có thể là quan trọng nhất, DocumentRoot. Nó xác định vị trí của nội dung cho máy chủ ảo này, trong trường hợp này là / var / www . Đề nghị bạn để nó như được định nghĩa ở đây.

Bước 9 Cổng

Cuối cùng, đối với hướng dẫn này, chúng ta có thể điều hướng xuống dòng # 248 của tệp apache2.conf và lưu ý rằng có một dòng “bao gồm port.conf”. Lệnh này chỉ đơn giản là bảo Apache đi đến tệp port.conf để tìm các cổng mà nó nên nghe.

cài đặt apache hdh linux

Nếu chúng ta mở tệp đó, port.conf , chúng ta có thể thấy rằng nó được cấu hình để nghe trên cổng 80 (dòng # 9). Phần tiếp theo, bắt đầu trên dòng # 11, kiểm tra xem liệu mô-đun mod_ssl.c có được bao gồm hay không, và nếu có, sẽ mở cổng 443 (dòng 17).

cài đặt apache hdh linux

Nếu chúng tôi muốn thay đổi các cổng cho HTTP hoặc HTTPS, chúng tôi có thể làm điều đó ở đây bằng cách thay thế số cổng trong tệp này.

Bước 10 Khởi động lại máy chủ Apache

Bây giờ chúng tôi có bất kỳ thay đổi nào đối với cấu hình Apache2 của chúng tôi, chúng tôi cần khởi động lại máy chủ để chúng diễn ra.

kali > service apache2 restart

Để lại một bình luận