Image default
Máy Tính

Hướng dẫn cấu hình Reverse Proxy trên Synology NAS: Tối ưu truy cập và bảo mật ứng dụng tự host

Nếu bạn đang đi sâu vào hành trình xây dựng “home lab” của mình với nhiều ứng dụng tự host, bạn chắc chắn sẽ nhận ra rằng việc ghi nhớ tất cả các URL để truy cập trang quản lý của từng dịch vụ nhanh chóng trở thành một cơn ác mộng. Hơn nữa, nếu có bất kỳ thay đổi nào trong cấu hình mạng gia đình, bạn sẽ phải tự mình vào và thay đổi mọi thứ thủ công. Thay vào đó, bạn có thể thiết lập một reverse proxy để điều hướng lưu lượng truy cập đến các ứng dụng tự host của mình, giúp tất cả chúng có thể truy cập được từ cùng một URL bên ngoài duy nhất.

Về cơ bản, reverse proxy là một máy chủ khác trên mạng nội bộ của bạn, nằm giữa internet nói chung và các ứng dụng, máy chủ tự host của bạn. Điều này tạo thêm một lớp bảo mật, vì các yêu cầu từ máy khách đến chỉ biết về máy chủ mà reverse proxy được cài đặt. Nó cũng giúp việc quản trị dễ dàng hơn, bởi vì một khi bạn đã thiết lập các quy tắc mạng nội bộ, nơi duy nhất bạn cần thay đổi chúng là trên máy chủ DNS tùy chỉnh của bạn.

Bạn có thể nghĩ rằng việc thiết lập reverse proxy rất phức tạp, nhưng các dịch vụ hiện đại đã thực hiện hầu hết công việc cho bạn. Trong bài viết này, chúng tôi sẽ thảo luận về một phương pháp sử dụng Synology NAS và giải thích cách quá trình này hoạt động một cách tổng quát hơn nếu bạn muốn sử dụng một máy chủ reverse proxy khác.

Reverse Proxy là gì và tại sao cần thiết cho Home Lab của bạn?

Reverse proxy đóng vai trò như một cổng vào duy nhất cho tất cả các dịch vụ nội bộ của bạn. Thay vì mỗi ứng dụng tự host (ví dụ: Home Assistant, Plex, Nextcloud) phải được truy cập qua một địa chỉ IP và số cổng riêng biệt, reverse proxy sẽ lắng nghe các yêu cầu đến từ internet trên một cổng duy nhất (thường là 443 cho HTTPS) và chuyển tiếp chúng đến đúng ứng dụng nội bộ dựa trên tên miền phụ (subdomain) trong yêu cầu.

Lợi ích của việc sử dụng reverse proxy trong môi trường home lab là rất rõ ràng:

  • Đơn giản hóa truy cập: Bạn chỉ cần nhớ một tên miền chính và các tên miền phụ dễ đọc (ví dụ: hass.mydomain.com, plex.mydomain.com) thay vì một chuỗi dài địa chỉ IP và số cổng phức tạp.
  • Tăng cường bảo mật: Bằng cách chỉ mở một cổng duy nhất trên router cho internet bên ngoài, bạn giảm thiểu bề mặt tấn công của mạng nội bộ. Tất cả các yêu cầu đến đều đi qua reverse proxy, giúp che giấu cấu trúc mạng bên trong và các địa chỉ IP của từng ứng dụng. Điều này đặc biệt hữu ích khi bạn muốn truy cập các dịch vụ từ bên ngoài mạng gia đình.
  • Quản lý chứng chỉ SSL dễ dàng: Reverse proxy có thể xử lý việc mã hóa SSL cho tất cả các dịch vụ của bạn, cho phép bạn sử dụng HTTPS cho mọi ứng dụng mà không cần phải cấu hình SSL riêng lẻ cho từng dịch vụ. Với chứng chỉ wildcard SSL, bạn có thể bảo mật nhiều tên miền phụ chỉ với một chứng chỉ duy nhất.
  • Cải thiện hiệu suất: Một số reverse proxy có khả năng nén HTTP và HTTP/2, giúp tăng tốc độ tải trang và cải thiện trải nghiệm người dùng.

Chuẩn bị những gì để thiết lập Reverse Proxy trên Synology NAS?

Để triển khai một reverse proxy hiệu quả trên thiết bị Synology NAS của bạn cho các ứng dụng tự host, bạn không cần quá nhiều thứ. Điều quan trọng là bạn cần có danh sách các dịch vụ sẽ đặt phía sau reverse proxy và một Synology NAS đang chạy phiên bản DSM mới nhất.

Ngoài ra, bạn sẽ cần chuẩn bị các yếu tố sau:

  • Chứng chỉ SSL: Điều này rất cần thiết cho mục đích bảo mật, đảm bảo giao tiếp được mã hóa. Bạn có thể dễ dàng nhận chứng chỉ SSL miễn phí trực tiếp từ Let’s Encrypt ngay trong DSM của Synology.
  • Tên miền (ví dụ: tenmiencuaban.com): Việc sở hữu một tên miền riêng cho phép bạn tạo các tên miền phụ (subdomain) cho mỗi ứng dụng web mà bạn muốn sử dụng với reverse proxy. Ví dụ: ungdung1.tenmiencuaban.com, ungdung2.tenmiencuaban.com.
  • Cổng 443 được chuyển tiếp (Port Forward) từ router đến địa chỉ IP cục bộ của NAS: Cổng 443 là cổng tiêu chuẩn cho giao thức HTTPS, và việc chuyển tiếp nó sẽ cho phép lưu lượng truy cập mã hóa từ bên ngoài đi vào NAS của bạn.
  • Địa chỉ IP nội bộ và số cổng của từng ứng dụng tự host: Bạn cần biết chính xác địa chỉ IP và số cổng mà mỗi ứng dụng đang chạy trên mạng nội bộ để reverse proxy có thể chuyển tiếp yêu cầu đến đúng nơi.

Hướng dẫn chi tiết thiết lập Reverse Proxy trên Synology NAS

Để bắt đầu cấu hình reverse proxy, chúng ta sẽ làm việc trực tiếp trên giao diện quản lý DSM của Synology NAS.

Thiết lập DDNS và chứng chỉ SSL Wildcard

Hiện tại, dịch vụ tự host duy nhất tôi đang chạy trên Synology là Home Assistant. Mặc dù Home Assistant là một hệ thống tuyệt vời để kiểm soát nhà thông minh từ một bảng điều khiển duy nhất, nhưng việc kết nối với nó bằng địa chỉ IP cục bộ và số cổng rất bất tiện. Địa chỉ IP của Synology có thể thay đổi tùy thuộc vào cách tôi thiết lập home lab, và việc phải nhớ nhiều địa chỉ IP và số cổng là một cực hình. Hơn nữa, việc phơi bày quá nhiều cổng ra internet cũng không phải là ý hay.

Vì vậy, hãy bắt đầu bằng cách thiết lập DDNS để có một tên miền để trỏ đến và một chứng chỉ SSL wildcard để có thể sử dụng các tên miền phụ. Chúng ta cần chứng chỉ SSL wildcard không chỉ vì mục đích bảo mật mà còn vì nó sẽ bao gồm bất kỳ tên miền phụ nào chúng ta sử dụng. Các ứng dụng web của chúng ta sẽ được thiết lập dưới dạng yourwebappname1.domainname.com, yourwebappname2.domainname.com, v.v.

Đầu tiên, chúng ta sẽ thiết lập DDNS và chứng chỉ SSL của mình:

  1. Đăng nhập vào Synology NAS của bạn.
  2. Mở Control Panel, điều hướng đến External Access > DDNS, và chọn Add.
    Danh sách DDNS trong Synology DSM 7Danh sách DDNS trong Synology DSM 7
  3. Điền vào biểu mẫu như sau: Service Provider: Synology, Hostname: mydomainname (ví dụ: xda.synology.me), và nhấp vào Test Connection.
    Thêm cấu hình DDNS mới trong Synology DSM 7Thêm cấu hình DDNS mới trong Synology DSM 7
  4. Nếu kiểm tra thất bại, tên máy chủ đó đã được sử dụng, và bạn sẽ phải thử các phiên bản khác nhau cho đến khi tìm được một tên chưa có.
  5. Trước khi tiếp tục, hãy đánh dấu vào ô bên cạnh Get a certificate from Let’s Encrypt and set it as default (Lấy chứng chỉ từ Let’s Encrypt và đặt làm mặc định).
  6. Nhấp vào OK.
  7. Điều hướng đến Security > Certificate và chọn Add.
    Cài đặt chứng chỉ SSL trong Bảng điều khiển Synology DSMCài đặt chứng chỉ SSL trong Bảng điều khiển Synology DSM
  8. Chọn Replace an existing certificate (Thay thế một chứng chỉ hiện có) và chọn chứng chỉ mà chúng ta vừa tạo trước đó, sau đó nhấp vào Next.
  9. Chọn Get a certificate from Let’s Encrypt (Lấy chứng chỉ từ Let’s Encrypt) và đánh dấu vào ô bên cạnh Set as default certificate (Đặt làm chứng chỉ mặc định).
  10. Chọn Next.
  11. Điền vào Hostname: mydomainname.com, địa chỉ email của bạn: [email protected], và đừng quên đặt ký tự wildcard vào ô với *.mydomainname.synology.me.
    Hướng dẫn điền thông tin chứng chỉ SSL wildcard trên SynologyHướng dẫn điền thông tin chứng chỉ SSL wildcard trên Synology
  12. Chứng chỉ SSL wildcard cho phép chúng ta sử dụng các tên miền phụ từ cùng một chứng chỉ mà không cần tạo chứng chỉ mới. Điều này rất quan trọng, vì vậy hãy nhấp vào Next khi bạn hoàn tất để lưu chứng chỉ SSL.

Cấu hình Reverse Proxy cho ứng dụng tự host

Bây giờ là lúc để thiết lập reverse proxy cho ứng dụng tự host đầu tiên của chúng ta. Nếu bạn có nhiều hơn một ứng dụng, hãy lặp lại phần này của quy trình, thay đổi tên miền phụ mỗi lần để nó đại diện cho ứng dụng web bạn muốn trỏ đến.

  1. Chúng ta vẫn đang làm việc trên Control Panel của Synology.
  2. Đi đến Login Portal > Advanced.
  3. Nhấp vào Reverse Proxy.
  4. Nhấp vào Create.
  5. Đặt một Proxy name (tên proxy), thay đổi giao thức nguồn thành HTTPS, nhập tên miền phụ của bạn (ví dụ: hass.mydomainname.synology.me), đặt cổng nguồn là 443, Enable HSTS (kích hoạt HSTS), đặt tên máy chủ đích thành localhost hoặc địa chỉ IP của ứng dụng web của bạn và cổng đích là cổng mà ứng dụng web của bạn cần.
    Thiết lập cấu hình Reverse Proxy trên Synology NASThiết lập cấu hình Reverse Proxy trên Synology NAS
  6. Chọn tab Custom Header.
  7. Nhấp vào Create.
  8. Chọn WebSocket.
  9. Nhấp vào Save.
  10. Nhấp vào Close.

Tối ưu hiệu suất và bảo mật bổ sung

Để tối ưu hóa hiệu suất và tăng cường bảo mật cho reverse proxy của bạn, hãy thực hiện thêm các bước sau:

  1. Đi đến Network > ConnectivityEnable HTTP/2, sau đó nhấp vào Apply.
  2. Sau đó, đi đến Security > Advanced, kích hoạt HTTP Compression, và nhấp vào Apply.
  3. Cuối cùng, đi đến Security > Certificate, nhấp vào Settings, và chọn chứng chỉ SSL của bạn từ menu thả xuống bên cạnh mục hass.mydomainname.synology.me.
    Thiết lập chứng chỉ SSL cho Reverse Proxy trong cài đặt SynologyThiết lập chứng chỉ SSL cho Reverse Proxy trong cài đặt Synology

Giờ đây, reverse proxy của bạn đã được thiết lập để truy cập phiên bản Home Assistant của bạn từ bên trong và bên ngoài mạng gia đình bằng cách sử dụng hass.mydomainname.synology.me.

Kết luận

Việc thiết lập reverse proxy giúp bạn truy cập các dịch vụ tự host như Vaultwarden hoặc Home Assistant để kiểm soát nhà thông minh trở nên dễ dàng hơn bao giờ hết. Hơn nữa, nó còn tăng cường mức độ an toàn tổng thể cho mạng gia đình của bạn, vì bạn chỉ cần phơi bày một cổng duy nhất ra internet rộng lớn cho tất cả các ứng dụng tự host. Tuy nhiên, điều này không có nghĩa là bạn có thể lơ là bảo mật. Bạn vẫn cần cẩn thận để đảm bảo đã liên kết các chứng chỉ SSL của mình một cách chính xác và tuân thủ các nguyên tắc bảo mật cơ bản.

Hãy bắt đầu tối ưu hóa việc quản lý ứng dụng tự host và nâng cao bảo mật cho home lab của bạn ngay hôm nay bằng cách thiết lập reverse proxy!

Related posts

Đừng Bỏ Lỡ: SSD WD Black SN850X 8TB PCIe 4.0 Hiệu Năng Khủng Giảm Giá Sâu Nhất Từ Trước Đến Nay

Administrator

Notepad Windows 11 Chính Thức Hỗ Trợ Markdown Và Định Dạng Rich Text

Administrator

Cách Đồng Bộ Ghi Chú Obsidian Miễn Phí Trên Mọi Thiết Bị: Hướng Dẫn Chi Tiết

Administrator