"Bí mật của sự dẫn đầu là bắt đầu ngay. Bí quyết bắt đầu là chia những nhiệm vụ phức tạp, thành những nhiệm vụ nhỏ hơn có thể quản lý được, rồi bắt đầu từ nhiệm vụ đầu tiên." - Mark Twain
Tôi luôn thích chia các câu hỏi, các vấn đề lớn thành nhiều phần nhỏ hơn, điều này giúp tôi tập trung và sau đó giải quyết từng câu hỏi một. Chỉ là vấn đề thời gian, chúng ta có thể kết hợp các giải pháp khác nhau này lại với nhau và đạt được mục tiêu cuối cùng của mình.
Vì vậy, trong bài viết này, tôi sẽ ví dụ một ứng dụng IOT mà không có Internet. Về cơ bản, đầu tiên là cần cấu hình 1 server cục bộ, trong trường hợp này sẽ là một MQTT Broker ở mạng Local. Trong các bài viết tiếp theo của mình, tôi sẽ đề cập đến cách chúng ta có thể thiết lập các bảo mật liên quang đến Local MQTT Broker, và sẽ chứng minh khía cạnh bảo mật IoT là một yếu tố thiết kế được cân nhắc chính khi chúng ta xây dựng một ứng dụng IoT, dù là ứng dụng trên On-Promise hoặc Cloud.
Chúng ta sẽ cài đặt MQTT Broker trên Raspberry Pi . Một máy tính xách tay sẽ đóng vai trò là Client, và cách nhanh nhất để bắt đầu nhanh với MQTT là dùng phần mềm MQTT.Fx , vì nó miễn phí và cung cấp hỗ trợ đa nền tảng. Nhìn chung, những gì chúng ta đang cố gắng đạt được được mô tả trong hình ảnh dưới đây.
Let us begin…!
Login vào Raspberry Pi và cài đặt MQTT Broker và Client, Nếu bạn chưa được cài đặt thì có thể cài bằng các lệnh dưới đây. Thao tác này sẽ cài đặt MQTT broker Mosquitto trên Raspberry Pi. Sau khi cài đặt, Mosquitto sẽ tự động khởi động dưới dạng dịch vụ nền. Và sẽ tự khởi chạy sau khi khởi động lại Raspberry Pi.
sudo apt-get install -y mosquitto mosquitto-clients
Cài đặt MQTT.Fx trên máy tính xách tay của bạn và mở ứng dụng lên. Đây sẽ là ứng dụng MQTT Client của chúng ta và sẽ kết nối với Raspberry Pi của chúng a và sau đó chúng ta có thể gửi và nhận tin nhắn cục bộ mà không cần kết nối với Internet.
Tạo một profile cấu hình kết nối từ các tùy chọn menu. Nó sẽ trông giống như thế này.
Sử dụng địa chỉ IP của Raspberry Pi của bạn đó chính là địa chỉ của MQTT Broker. Các tham số còn lại để mặc định. Nhấp Ok.
Chọn Profile đã tạo và nhấp vào kết nối.
Nếu mọi thứ đều ổn, bạn sẽ thấy trạng thái kết nối là Màu xanh lá cây ở góc trên cùng bên phải, màu đỏ trước đó . Trong trường hợp bị lỗi, nó sẽ vẫn là Red.
Đi tới tab "Subscribe" và subscribe Topic, ví dụ: /IoTSensor/ID/01
Sau khi bạn subscribe Topic, hãy chuyển đến tab "Publish", và đặt Topic là /IoTSensor /ID/01, nhập tin nhắn vào vùng văn bản bên dưới và Publish.
Nếu mọi thứ suôn sẻ, bạn sẽ thấy thông báo đã Publish của mình trong tab Subscriber mà bạn đã Subcribe Topic trước đó.
Như vậy là chúng ta đã thiết lập thành công một Local MQTT Broler, khả năng là vô tận. Bạn có thể thử tất cả các tính năng MQTT nhưretention, last-will and testament, QOS, v.v. và xem chúng có thể được sử dụng như thế nào trong ứng dụng IoT. Tôi thấy rất thú vị khi tôi làm điều này. Những gì tôi sẽ đề cập trong hướng dẫn tiếp theo của mình là, làm thế nào chúng ta có thể thiết lập các bảo mật MQTT Broker của mình bằng cách sử dụng các phương pháp khác nhau như xác thực và bằng chứng chỉ TLS. Nó sẽ là một hướng dẫn nâng cao. Cá nhân tôi thích nó vì nó mang lại cho người ta một cái nhìn sâu sắc không chỉ khi làm việc với các nền tảng đám mây IoT như AWS hoặc Microsoft Azure mà còn khi bạn phát triển ứng dụng điện toán ở biên hoặc Fog.