Kết nối Home Assistant từ xa qua Cloudflare Tunnel

Để truy cập Home Assistant từ xa có rất nhiều cách như dùng Duckdns, dùng DDNS rồi mở port trên router, dùng VPN… Hôm nay mình hướng dẫn các bạn dùng Cloudflare tunnel để truy cập HA từ xa một cách dễ dàng nhé.

Yêu cầu cần có

  • Mua một tên miền giá rẻ tại tenten với giá chỉ từ 25k/ tháng tại đây. Các tên miền đuôi dạng: *.id.vn chẳng hạn có giá rất là rẻ.
  • Tạo tài khoản Cloudflare miễn phí tại đây.
  • Một hệ thống Home Assistant đã hoạt động ổn định.

Thiết lập Cloudflare làm DNS trung gian

Cloudflare sẽ quản lý tên miền của bạn và tạo một đường hầm (tunnel) an toàn tới Home Assistant.

  1. Đăng ký một tài khoản miễn phí tại Cloudflare.com.
  2. Sau khi đăng nhập, chọn “Add a Site” và nhập tên miền bạn vừa đăng ký ở Bước 1.
  3. Chọn gói Free (miễn phí) và tiếp tục. Cloudflare sẽ quét các bản ghi DNS hiện có (nếu có). Cứ bấm Continue.
  4. Cloudflare sẽ cung cấp cho bạn 2 địa chỉ Nameservers. Hãy sao chép lại 2 địa chỉ này.

Thiết lập tên miền vừa mới mua trỏ NS về NS của Cloudflare

Quá trình cập nhật Nameservers có thể mất từ vài phút đến vài giờ. Bạn có thể bấm “Check nameservers” trên Cloudflare để kiểm tra.

Cài đặt và cấu hình Add-on Cloudflare trong Home Assistant

Add-on này sẽ tự động cập nhật địa chỉ IP nhà bạn (vốn thường thay đổi) cho Cloudflare biết, đảm bảo tên miền luôn trỏ đúng về Home Assistant.

  • Trong Home Assistant, đi tới Settings > Add-ons > Add-on Store.
  • Bấm vào menu 3 chấm ở góc trên bên phải, chọn Repositories.
  • Thêm kho lưu trữ sau và bấm Add: https://github.com/brenner-tobias/ha-addons
  • Tìm add-on có tên Cloudflared, bấm vào và chọn Install.
  • Sau khi cài đặt xong, vào tab Configuration của add-on.
  • Trong mục external_hostname, hãy điền tên miền của bạn (ví dụ: ngoinhacuatoi.id.vn).
  • Lưu lại cấu hình.

Sau khi thêm xong bạn chuyển qua Tab Log (Nhật ký) để theo dõi nó sẽ hiển thị giống màn hình dưới. Bạn truy cập vào link nó đang hiển thị dạng: https://dash......8%3D copy mở trong trình duyệt mới, nó hỏi gì thì cấp quyền cho nó tạo Tunnels nữa là xong.

  • Vào tab Info, bật tùy chọn Watchdog (để add-on tự khởi động lại nếu có lỗi) và Start on boot (tự khởi động cùng Home Assistant).
  • Bấm Start để khởi động add-on. Kiểm tra log để chắc chắn không có lỗi.

Chỉnh sửa file cấu hình configuration.yaml

Đây là bước cuối cùng để cho phép Home Assistant chấp nhận các kết nối đến từ proxy của Cloudflare.

  1. Mở Add-on File Editor.
  2. Tìm và mở file configuration.yaml.
  3. Thêm đoạn mã sau vào cuối file. Hãy chú ý canh lề chính xác (sử dụng 2 dấu cách cho mỗi cấp).
YAML
http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 172.30.33.0/24

Giải thích:

  • use_x_forwarded_for: true: Cho phép Home Assistant nhận diện đúng địa chỉ IP gốc của người truy cập thay vì IP của proxy Cloudflare.
  • trusted_proxies: Khai báo dải IP của mạng nội bộ Docker mà Add-on Cloudflared sử dụng là một proxy đáng tin cậy.
  1. Lưu file lại.
  2. Vào Developer Tools > YAML, bấm Check Configuration. Nếu không có lỗi, hãy khởi động lại Home Assistant.

Kết luận

Xin chúc mừng! Bạn đã thiết lập thành công hệ thống truy cập Home Assistant từ xa một cách an toàn, hiệu quả và hoàn toàn miễn phí. Giờ đây, bạn có thể mở trình duyệt trên bất kỳ thiết bị nào, ở bất kỳ đâu, nhập tên miền của mình (ví dụ: https://ngoinhacuatoi.tk) và toàn quyền kiểm soát ngôi nhà thông minh của mình.

Giải pháp này không chỉ giải quyết được vấn đề truy cập mà còn xây dựng một nền tảng kỹ thuật vững chắc, bảo mật và có thể sử dụng lâu dài.

Nếu bạn gặp bất kỳ khó khăn nào trong quá trình thực hiện, đừng ngần ngại để lại bình luận bên dưới. Chúc bạn thành công!

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
0 Góp ý
Được bỏ phiếu nhiều nhất
Mới nhất Cũ nhất
Phản hồi nội tuyến
Xem tất cả bình luận
0
Rất thích suy nghĩ của bạn, hãy bình luận.x