Môi giới MQTT có thể truy cập từ bên ngoài mà không cần mở cổng trong tường lửa?


9

Tôi muốn nhà môi giới MQTT của tôi có thể truy cập được từ bên ngoài mạng gia đình của tôi, nhưng tôi hơi miễn cưỡng khi mở một cổng trong tường lửa. Và tôi muốn tránh sử dụng IP nhà của tôi.

Thật tiện lợi khi có một nhà môi giới mở không được mã hóa tại nhà, nhưng điều đó không hiệu quả nếu tôi sẽ phơi bày nó. Tôi có những lựa chọn nào khác?


@Bence Kaulics có đề xuất nào về câu trả lời của tôi không?
hardillb

1
@hardillb Câu trả lời của bạn là một bản tóm tắt hay nhưng tôi nghĩ có thể hữu ích khi có thêm một số chi tiết về mỗi điểm. Ví dụ: Làm thế nào để thiết lập cầu nối như vậy giữa hai nhà môi giới. Ngoài ra tôi chỉ đơn giản là sẽ đưa ra những ý tưởng khác nếu có bất kỳ, mô tả tiền thưởng này là tốt nhất tôi có thể tìm thấy, câu trả lời của bạn cũng đứng trên chính nó. Có lẽ tôi nên chọn lý do "Không nhận được đủ sự quan tâm".
Bence Kaulics

Là một người không chuyên gia, tôi đồng ý rằng điểm 2 (dường như phần có giá trị nhất của câu trả lời) có thể được xây dựng thêm một chút. Có lẽ với một liên kết đến một cách làm, bây giờ chắc chắn.
Sean Houlihane

Thật không may, mỗi loại nhà môi giới khác nhau có một cách khác nhau để định cấu hình một cây cầu nên không thể đưa ra câu trả lời chung chung (Tương tự như vậy với thiết lập xác thực / TLS)
hardillb

Câu trả lời:


10

Về cơ bản, bạn có 3 tùy chọn nếu bạn không muốn chuyển tiếp một cổng.

  1. Sử dụng một nhà môi giới trong đám mây để khách hàng ở nhà luôn kết nối với nó. Sử dụng TLS và xác thực để người khác không thể nghe lén hoặc tiêm các tin nhắn không mong muốn
  2. Sử dụng một nhà môi giới đám mây và thiết lập một cầu nối giữa nhà môi giới nội bộ và nhà môi giới đám mây (bạn vẫn muốn mã hóa và đặt tên người dùng / mật khẩu trên nhà môi giới đám mây). Điều này có lợi thế là những thứ bên trong tiếp tục hoạt động nếu kết nối internet bị hỏng.
  3. VPN trên tất cả các thiết bị bên ngoài để cho phép truy cập vào mạng gia đình của bạn (nhưng thành thật mà nói, có lẽ bạn sẽ phải mở một cổng cho VPN hoặc có bộ định tuyến hỗ trợ là máy chủ VPN)

Nhưng việc chuyển tiếp một cổng tới một cấu hình đúng (gần giống như nhà môi giới đám mây) không thực sự là một rủi ro.


1
Tôi thích ý tưởng cầu nối nhà trên đám mây, có thêm phần thưởng rằng tất cả các dịch vụ báo cáo bên ngoài mạng gia đình của tôi sẽ vẫn hoạt động bình thường nếu nhà môi giới địa phương của tôi bỏ. Và nhà môi giới địa phương sẽ nhận được dữ liệu "bỏ lỡ" khi trở lại trực tuyến. Tuyệt quá! :)
Thomas Jensen

3

Vì nhà môi giới là một máy chủ, bạn PHẢI mở ít nhất một cổng để khách hàng kết nối.

Vì vậy, vấn đề của bạn trở thành một trường hợp đặc biệt khi phơi bày một dịch vụ trên Internet.

Điều này đã được thực hiện thông qua DMZ, thông qua proxy hoặc cách khác để thực thi xác thực chặt chẽ hơn dịch vụ mặc định. Nếu proxy của bạn sống trên đám mây, điều đó sẽ mở rộng DMZ của bạn sang đám mây.

Cách tiếp cận đơn giản nhất của bạn có lẽ là làm cứng nhà môi giới của bạn (vô hiệu hóa các máy khách ẩn danh) và hạn chế những người có thể kết nối với nó thông qua tường lửa (chỉ cho phép một số địa chỉ IP khách hàng nhất định, nếu bạn biết trước chúng).


3
Điều đó là không chính xác, tôi đã bắc cầu cho nhà môi giới địa phương của mình bằng một đám mây. Và vì kết nối cầu được bắt đầu từ bên trong mạng gia đình của tôi nên không cần mở cổng.
Thomas Jensen

3

@hardillb đã đưa ra một câu trả lời hay nhưng hãy để tôi thử thêm một vài chi tiết thêm một số liên lạc "thực tế":

  1. Chọn một số nhà môi giới MQTT có sẵn cho công chúng. HiveMQ có thể là một ví dụ điển hình và bạn có thể bắt đầu với trang dùng thử mô tả cách kết nối với nhà môi giới:

Kết nối với môi giới công cộng

Máy chủ: broker.hivemq.com

Cảng: 1883

Cổng Websocket: 8000

  1. Chọn khách hàng nào phù hợp nhất với bạn và sử dụng nó cho kết nối nhà môi giới nội bộ với nhà môi giới MQTT công cộng. Ví dụ, máy khách C của bạn có thể là Paho MQTT . Máy khách có hỗ trợ SSL / TLS để bảo mật của bạn vẫn ở mức cao.

  2. Paho MQTT được nhúng có thể là lựa chọn của bạn cho các thiết bị bên ngoài.

  3. HiveMQ có chính sách cấp phép trả tiền để bạn có thể cân nhắc cẩn thận. Dù sao, bạn có thể kiểm tra trang này để biết danh sách các nhà môi giới MQTT có sẵn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.