Quay lại

Hiểu về Proxy server, Fordward Proxy và Reverse Proxy Chuyên mục Bài Viết Hay    2023-04-14    1.2k Lượt xem    60 Lượt thích    comment-3 Created with Sketch Beta. 0 Bình luận

Hiểu về Proxy server, Fordward Proxy và Reverse Proxy

Proxy server là một khái niệm hot từ những năm gần đây, vì nếu server của bạn có những thông tin nhạy cảm như ngân hàng thì việc thiết lập một máy chủ proxy bên ngoài tường lứa là điều cần thiết nhất. Bởi vì khi một ai đó muốn truy cập vào Server này thì nhiệm vụ của nó phải qua mặt proxy server. 

Proxy server


Như đã nói ở trên nếu dữ liệu trong server của bạn có thông tin nhạy cảm phải được giữ an toàn, chẳng hạn như cơ sở dữ liệu số thẻ tín dụng, bạn có thể thiết lập máy chủ proxy bên ngoài tường lửa để hoạt động như một Server. Khi một Client bên ngoài cố gắng truy cập vào Server, nó sẽ được gửi đến máy chủ proxy. 

Cách hoạt động của nó rất đơn giản, ví dụ như là Client đưa ra yêu cầu đối với trang web, yêu cầu đó sẽ được chuyển đến máy chủ proxy thay vì server. Sau đó, máy chủ proxy sẽ gửi yêu cầu của khách hàng đến Server chứa dữ liệu (Máy chủ nội dung) thông qua một đường dẫn cụ thể trong tường lửa. Server chứa dữ liệu sau đó sẽ gửi kết quả trở lại máy chủ proxy thông qua kênh này. 

Máy chủ proxy gửi thông tin truy xuất đến máy khách như thể máy chủ proxy là một Server chứa dữ liệu thực tế. Nếu Server chứa dữ liệu trả về thông báo lỗi, máy chủ proxy sẽ chặn thông báo đó và thay đổi bất kỳ URL nào được liệt kê trong tiêu đề trước khi gửi thông báo đến máy khách. Điều này ngăn các máy khách bên ngoài lấy URL chuyển hướng của Server chứa dữ liệu. 

Và Proxy được chia ra làm 2 loại chính đó là Forward Proxy và Reverse Proxy. Nhiệm vụ hôm nay của tôi là giúp các bạn hiểu về hai mô hình phổ biến này, một khi học nginx thì bạn sẽ được tìm thấy 2 khái niệm này được nhắc đi nhắc lại nhiều lần. 

Reverse Proxy là gì?

Giả sử khi ta đang config Nginx là một máy chủ proxy và cấu hình Reverse Proxy. Thì ở đây chúng ta có ba đối tượng như sau Client, Proxy Server, Server. Giả sử 3 đối tượng trên tôi viết lại là: 

Client chính là A 

Proxy Server chính là B 

Server chính là C

Cách hoạt động như sau: A (khách hàng) muốn thuê nhà, B (đại lý) thuê nhà cho anh ta. Lúc này, C (máy chủ) mới thực sự là chủ nhà. B (đại lý) là người trung gian cho A (khách hàng) thuê lại căn nhà này. Trong quá trình này, A (khách hàng) không biết ai là chủ nhà của căn nhà này, có thể nghĩ rằng căn nhà này là của B (đại lý)

Đơn giản vậy thôi, bạn cũng đã hiểu rồi đúng không? Client không cần biết Server là thằng nào, bởi vì đã có proxy lo điều đó trước khi lấy dữ liêụ thì proxy đã biết lấy ở đâu rồi. 

Lợi ích của việc Reverse Proxy này có thể thấy rõ nhất là việc Load balancing, chính xác là vậy, bởi vì Proxy biết server nào đang quá tải, hay đang treo từ đó có thể phục vụ Client tốt hơn. Thứ hai đó là việc bảo vệ servers backend. Nó giúp cho chúng ta có thể ẩn đi địa chỉ và cấu trúc thực của server backend. Và nhiều thứ nữa nhưng hai yếu tố trên là quá tốt.

Thay vì dùng ở phía client như là Forward Proxy thì Reverse Proxy sẽ được dùng ở phía server.

Requests sẽ đi từ client tới proxy server và sau đó proxy server sẽ chuyển tiếp các requests này tới server backend

Mình xin tóm tắt lại tác dụng của Reverse Proxy bao gồm:

  • Load balancing: giúp điều phối requests tới các servers backend để cân bằng tải, ngoài ra nó còn giúp hệ thống đạt tính sẵn sàng cao khi lỡ không may có server bị ngỏm thì nó sẽ chuyển request tới một server còn sống để thực thi.
  • Increased Security: Reverse Proxy còn đóng vai trò là một lớp bảo vệ cho các servers backend. Nó giúp cho chúng ta có thể ẩn đi địa chỉ và cấu trúc thực của server backend.
  • Logging: Tất cả các requests tới các servers backend đều phải đi qua reverse proxy nên việc quản lý log của access tới từng server và endpoint sẽ dễ dàng hơn rất nhiều so với việc kiểm tra trên từng server một.
  • Encrypted Connection: Bằng việc mã hóa kết nối giữa client và reverse proxy với TLS, users sẽ được hưởng lợi từ việc mã hóa dữ liệu và bảo mật với HTTPS.

Fordward Proxy là gì?

Forward Proxy thường được gọi tắt luôn là proxy. Chúng là loại proxy server được dùng phía client, nó có thể được đặt ở trong mạng nội bộ hoặc trên internet.

Khi sử dụng forward proxy, các requests phía client sẽ tới proxy server và proxy server sẽ chuyển tiếp các requests này tới Internet. Tác dụng:

  • Ẩn địa chỉ IP của client khi truy cập tới các website trên internet do phía các website chỉ có thể biết được địa chỉ của forward proxy server.
  • Bypass firewall restriction để truy cập các website bị chặn bởi công ty, chính phủ, bla bla.
  • Dùng trong công ty, tổ chức để chặn các website không mong muốn, quản lý truy cập và chặn các content độc hại.
  • Sử dụng làm caching server để tăng tốc độ.

Bình luận (0)

Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough

Bài viết liên quan

Learning English Everyday