Hướng dẫn cài đặt Apache Traffic Server như một Reverse-Proxy trên Ubuntu 14.04

5 năm trước

Hướng dẫn cài đặt Apache Traffic Server như một Reverse-Proxy trên Ubuntu 14.04

Giới Thiệu

Apache Traffic Server là một máy chủ proxy lưu trữ có thể mở rộng có khả năng xử lý đồng thời một khối lượng lớn request trong lúc đang duy trì độ trễ rất thấp. Khi so sánh với các máy chủ proxy đang phổ biến khác như là Varnish hay Squid, Apache Traffic Server tiêu tốn ít dung lượng hơn và xử lí nhanh hơn. Nó cũng được thiết kế để tận dụng tối đa các bộ xử lí đa nhân hiện nay. Tuỳ thuộc vào yêu cầu của bạn, bạn có thể dùng nó như một reverse proxy hay như một forward proxy.

Bài hướng dẫn này sẽ bao gồm làm thế nào để cài đặt Apache Traffic Server trên Ubuntu 14.04 và cấu hình nó để nó hoạt động như một reverse proxy lưu trữ.

Điều kiện bắt buộc

Để làm theo bài hướng dẫn này thì bạn sẽ cần:

 

Bước 1 — Cài đặt Traffic Server

Bởi vì Traffic Server có sẵn trên kho mặc định của Ubuntu 14.04, bạn có thể cài đặt nó bằng cách dùng apt-get. Hãy chắc chắn rằng bạn đã cập nhật tệp chỉ dẫn của bạn trước khi cài đặt.

sudo apt-get update && sudo apt-get install trafficserver

Traffic Server truy cập trên cổng 8080 theo mặc định. Bạn có thể dùng trình duyệt  để truy cập vào địa chỉ http://your_server_ip:8080/ bây giờ. Tuy nhiên, bạn sẽ thấy lỗi vì bạn vẫn chưa tạo cấu hình cho nó.

 

Bước 2 — Cài đặt Web Server

Theo định nghĩa,proxy server hoạt động như một vật trung gian giữa người dùng bên ngoài và web server . Cho nên, trước khi tạo cấu hình cho Traffic Server, bạn nên cài đặt web server, ví dụ như máy chủ Apache HTTP trên thiết bị của bạn.

Cài đặt và khởi động Apache bằng cách sử dụng apt-get.

sudo apt-get install apache2

Bây giờ bạn hãy dùng một trình duyệt và truy cập vàohttp://your_server_ip/ để thấy trang bắt đầu của Apache

Bước 3 —Vô hiệu hoá quyền truy cập từ xa đến Web Server

Apache cho phép quyền kết nối tới tất cả giao diện mạng theo mặc định, Bằng cách tạo cấu hình cho nó để cho phép quyền kết nối chỉ trên giao diện loopback, bạn có thể chắc chắn rằng người dùng từ xa sẽ không thể truy cập nó được.

Mở ports.conf bằng cách dùng nano hoặc trình soạn thảo văn bản yêu thích của bạn.

sudo nano /etc/apache2/ports.conf

Tìm dòng chứa Listen 80 chỉ thị và đổi nó thành:

ports.conf
Listen 127.0.0.1:80

Lưu file và thoát.

Tiếp theo, mở apache2.conf.

sudo nano /etc/apache2/apache2.conf

Thêm dòng dưới đây vào cuối file:

apache2.conf
ServerName localhost

Lưu và đóng file.

Để áp dụng những thay đổi cấu hình đó, khởi động lại Apache bằng cách sử dụng command sau:

sudo service apache2 restart

 

Thử sử dụng một trình duyệt để truy cập lại vàohttp://your_server_ip/. Trình duyệt của bận nên hiện ra error, bởi vì bạn đã chặn quyền truy cập từ xa tới server đó.

Bước 4 — Tạo cấu hình cho Traffic Server như một Reverse Proxy

Ở trong bước này, bạn sẽ tạo cấu hình cho Traffic Server như một reverse proxy. Để làm như vậy, mở remap.config, mở cái mà là file mà bạn nên edit để xác định quy tắc lập bản đồ của Traffic Server.

sudo nano /etc/trafficserver/remap.config

Hãy tạo một quy tắc đơn gỉản thông báo cho tất cả những request tới địa chỉ IP của server trên cổng 8080 được sắp xếp tới địa chỉ cục bộ của web server và cổng. Bạn có thể làm như vậy bằng cách thêm dòng sau đây vào cuối file:

remap.config
map http://your_server_ip:8080/ http://127.0.0.1:80/

Lưu file và thoát.

Để kích hoạt quy tắc tạo bản đồ mới, sử dụng reread_config command của traffic_line:

sudo traffic_line --reread_config

Mở trình duyệt và truy cập vào http://your_server_ip:8080/. Nếu bạn có thể thấy trang bắt đầu của Apache bây giờ tức là bạn đã tạo cấu hình thành công cho Traffic Server như một reverse proxy.

Bước 5— Tạo cấu hình cho Traffic Server để lưu trữ mọi thức

Theo mặc định, Traffic Server sẽ lưu trữ phản hồi của HTTP chỉ khi nó chứa Cache-Control hoặc Expirestiêu đề rõ ràng chỉ rõ item đó nên được lưu trong bao lâu trong cache. Tuy nhiên, bởi vì web server của chúng ta chỉ xử lí các tệp tin tĩnh cho nên việc lưu trữ toàn bộ phản hồi của HTTP là an toàn.

Để tạo cấu hình cho Traffic Server sao cho nó lưu trữ tất cả phản hồi HTTP, bạn nên thay đổi giá trị của biến cấu hình được gọi là proxy.config.http.cache.required_headers về 0. Bạn có thể dử dụng set_var command của traffic_line.

sudo traffic_line --set_var proxy.config.http.cache.required_headers --value 0

Áp dụng thay đổi bằng cách sử dụng flag reread_config.

sudo traffic_line --reread_config

Mở trình duyệt và truy cập lại vào  http://your_server_ip:8080/. Nó sẽ lưu trữ trang bắt đầu của Apache trong cache của Traffic Server.

Bước 6 — Kiểm tra Cache

Để xem nội dung cache của Traffic Server, bạn có thể sử dụng một công cụ gọi là Cache Inspector có giao diện web.

Để kích hoạt công cụ này, đặt giá trị của biến cấu hình proxy.config.http_ui_enabled về 1.

sudo traffic_line --set_var proxy.config.http_ui_enabled --value 1

 

Tiếp theo, tạo quy luật tạo bản đồ xác định đường dẫn mà bạn muốn sử dụng để truy cập. Mở lại remap.config bằng cách sử dụng nano.

sudo nano /etc/trafficserver/remap.config

Hãy là cho Cache Inspector khả dụng trên /inspect. Để làm như vậy, thêm dòng dưới đây vào đầu file:

remap.config
map http://your_server_ip:8080/inspect http://{cache}

Lưu file và thoát ra.

Để áp dụng những thay đổi, khởi động lại Traffic Server

sudo service trafficserver restart

Hiện tại Cache Inspector đã có thể sử dụng. Mở trình duyệt và truy cập vào

http://your_server_ip:8080/inspect/.Bạn sẽ thấy một trang trông như thế này

Cache Inspector's home page

Tiếp theo, click vào đường link Lookup url.

Bây giờ bạn có thể gõ một URL trong một trường văn bản và click vào nút Lookup để kiểm tra xem liệu rằng nó đã được lưu trong cache chưa.

Ví dụ, bạn có thể gõ để kiểm tra xem liệu rằng trang chủ của web server của bạn đã được phục vụ từ cache chưa. Nếu có, bạn sẽ thấy một trang nhìn trông như thế này 

Ví dụ, bạn có thể gõ http://your_server_ip:8080/ để kiểm tra xem liệu rằng trang chủ của web server của bạn đã được phục vụ từ cache chưa. Nếu có, bạn sẽ thấy một trang nhìn trông như thế này:

Cached document details

 

Kết luận

Bây giờ bạn đã biết làm thế nào để cài đặt Apache Traffic Server trên Ubuntu 14.04 và tạo cấu hình cho nó như một reverse-proxy. Cho dùng chúng ta đã sử dụng Apache với tư cách là một web server trong bài hướng dẫn này, bạn có thể dễ dàng sử dụng bất cứ web server nào khác.