Mục lục:

Cách thiết lập Mosquitto MQTT trên AWS: 8 bước
Cách thiết lập Mosquitto MQTT trên AWS: 8 bước

Video: Cách thiết lập Mosquitto MQTT trên AWS: 8 bước

Video: Cách thiết lập Mosquitto MQTT trên AWS: 8 bước
Video: Bài 1 - Hướng Dẫn Cách Setup MQTT-Broker Mosquitto MQTT Trên Raspbery-Pi 2024, Tháng bảy
Anonim
Cách thiết lập Mosquitto MQTT trên AWS
Cách thiết lập Mosquitto MQTT trên AWS

Chào! Tôi sẽ thiết lập một nhà môi giới MQTT riêng với mật khẩu trên tài khoản AWS (dịch vụ web amazon) cho các dự án IOT của mình. Để làm điều này, tôi đã tạo một tài khoản miễn phí trên AWS, tài khoản này có hiệu lực trong 1 năm bằng cách truy cập vào đây:

Quân nhu

Phần mềm được sử dụng:

Bột trét

MQTT LENS

Bước 1: Tạo tài khoản AWS

Tạo tài khoản AWS
Tạo tài khoản AWS

Trước tiên, bạn sẽ cần một tài khoản AWS.. Tôi đã tạo một tài khoản miễn phí có thời hạn 1 năm và sử dụng nó để đăng nhập. Bạn có thể tạo tài khoản của mình bằng cách truy cập liên kết này, nhấp vào "Tạo Tài khoản miễn phí" và cung cấp thông tin:

aws.amazon.com/free/?all-free-tier.s

Bước 2: Tạo máy ảo

Tạo máy ảo
Tạo máy ảo

Ý tưởng:

Internet bao gồm hai loại máy: máy chủ hoặc máy khách. Máy chủ cung cấp dịch vụ cho bạn trong khi khách hàng yêu cầu dịch vụ. Khi bạn mở trang web này, máy của bạn sẽ yêu cầu một bản sao của trang web này đã được lưu trữ trong máy chủ. Khi nhận được yêu cầu của bạn, máy chủ sẽ gửi cho bạn một bản sao cho phép bạn xem nó. Để đảm bảo rằng nhà môi giới MQTT của chúng tôi (dịch vụ) có thể được truy cập bằng máy tính hoặc thiết bị điện tử khác bất cứ lúc nào, chúng tôi cần cài đặt nhà môi giới vào một máy chủ luôn được bật và kết nối với internet. Để làm điều này, chúng tôi thuê một máy ảo, còn được gọi là hình ảnh, trên AWS có chức năng giống như một máy tính.

Hướng dẫn:

Qua Bảng điều khiển quản lý

  1. Sau khi đăng nhập, bạn sẽ được chuyển đến Bảng điều khiển quản lý AWS.
  2. Bên dưới giải pháp xây dựng, nhấp vào "Khởi chạy máy ảo" như trong hình.

QUA bảng điều khiển AMAZON EC2

  1. Bạn cũng có thể khởi chạy một phiên bản bằng cách truy cập liên kết này
  2. Ở trên cùng bên phải của thanh điều hướng, hãy chọn khu vực hiện tại của bạn. Trong trường hợp của tôi, đó là Singapore.
  3. Bên dưới phiên bản Khởi chạy, nhấp vào nút "Khởi chạy phiên bản"

Bước 3: Chọn Hình ảnh Máy Amazon (AMI)

Chọn Hình ảnh Máy Amazon (AMI)
Chọn Hình ảnh Máy Amazon (AMI)

Trong bước này, bạn sẽ chọn loại hệ điều hành (linux, windows, redhat và nhiều hơn nữa) và bộ nhớ (64 bit / 86 hoặc arm) cho máy ảo của chúng tôi.

  • Chọn từ loại AMI "Bắt đầu nhanh" ở ngăn bên trái "Ubuntu Server 18.04 LTS (HVM), Loại ổ SSD - ami-0f7719e8b7ba25c61 (64-bit x86) / ami-02b6622eae4966dfd (64-bit Arm) với một tầng miễn phí trên logo của nó.
  • Đảm bảo rằng loại thiết bị gốc: ebs và loại ảo hóa là HVm vì nó kết nối nhanh hơn dựa trên điều này

Bước 4: Chọn và định cấu hình loại phiên bản

Chọn và định cấu hình loại phiên bản
Chọn và định cấu hình loại phiên bản
Chọn và định cấu hình loại phiên bản
Chọn và định cấu hình loại phiên bản

Trong bước cuối cùng, chúng tôi đã cấu hình máy tính. Ở đây, chúng tôi thiết lập nó như một máy chủ có bộ nhớ lưu trữ sau và được kết nối với các mạng nội bộ (hỗ trợ IPV6 nên nói có)

  1. Nhấp vào Bậc miễn phí đủ điều kiện của loại t2.micro.
  2. Bạn có thể nhấp vào "Xem lại và khởi chạy" ngay lập tức hoặc Tùy chọn, nhấp vào "Tiếp theo: Định cấu hình chi tiết phiên bản" ở góc dưới cùng bên phải
  3. Nhấp vào "Tiếp theo: Thêm thẻ"
  4. Nhấp vào "Đi tới Định cấu hình tab Bảo mật". Tại đây, Nhấp vào thêm quy tắc Cho đến khi bạn mở các cổng sau:
  • 1883: MQTT, không mã hóa
  • 8883: MQTT, được mã hóa
  • 8080: MQTT qua WebSockets, không được mã hóa
  • 8081: MQTT qua WebSockets, được mã hóa

5. Nhấp vào "Xem lại và khởi chạy" ở góc dưới cùng bên phải

Bước 5: Đánh giá khởi chạy phiên bản

Đánh giá phiên bản khởi chạy
Đánh giá phiên bản khởi chạy
Đánh giá phiên bản khởi chạy
Đánh giá phiên bản khởi chạy

Xem lại các chi tiết của máy ảo của bạn. Trong AWS, họ gọi nó là phiên bản.

Cảnh báo bảo mật có thể hiển thị ngay bên dưới lần khởi chạy phiên bản đánh giá

Để xóa nó, hãy chuyển đến "cấu hình nhóm bảo mật" và chọn các địa chỉ IP đã biết bằng cách sử dụng tùy chỉnh hoặc sử dụng địa chỉ IP của bạn cho loại "SSH". Việc thay đổi giá trị Nguồn này sẽ giới hạn các thiết bị có thể kết nối với máy ảo của bạn. Trong trường hợp này, chúng tôi sẽ sử dụng ở bất cứ đâu.

  1. Nhấp vào "khởi chạy" trên tab Xem lại.
  2. Bạn sẽ được yêu cầu chọn một cặp chìa khóa. Chọn "Tạo cặp khóa mới" trên menu thả xuống và tên của nó. Lưu tệp này vì bạn sẽ sử dụng để truy cập máy ảo của mình sau này.
  3. Nhấp vào "Khởi chạy phiên bản"

Bước 6: Nhận địa chỉ IP công cộng

Nhận địa chỉ IP công cộng
Nhận địa chỉ IP công cộng
Nhận địa chỉ IP công cộng
Nhận địa chỉ IP công cộng
Nhận địa chỉ IP công cộng
Nhận địa chỉ IP công cộng

Ý tưởng:

Như đã đề cập trước đó, có một máy chủ và một máy khách. Chúng ta có thể nghĩ về máy chủ như cơ sở thực phẩm, internet là dịch vụ giao đồ ăn và chúng ta là khách hàng. Đầu tiên, chúng tôi "yêu cầu" thực phẩm từ một cơ sở thực phẩm cụ thể bằng cách cho biết "địa chỉ" của nó. Dịch vụ giao đồ ăn đến "địa chỉ" đó. Cơ sở thực phẩm "phục vụ" thực phẩm cho dịch vụ giao thực phẩm sau đó sẽ được giao cho bạn. Tương tự, máy chủ của chúng tôi cần một Địa chỉ IP Công cộng để có thể truy cập được từ internet. Làm như vậy,

  1. Chuyển đến tab Mạng & Bảo mật nằm ở ngăn bên trái
  2. Nhấp vào IP đàn hồi
  3. Nhấp vào Phân bổ địa chỉ IP đàn hồi.
  4. Nhấn nút "Phân bổ" và đợi cho đến khi nó chuyển hướng bạn đến một trang có biểu ngữ "Đã phân bổ địa chỉ OP đàn hồi"

Bước 7: Kết nối với phiên bản của bạn

Kết nối với phiên bản của bạn
Kết nối với phiên bản của bạn
Kết nối với phiên bản của bạn
Kết nối với phiên bản của bạn
Kết nối với phiên bản của bạn
Kết nối với phiên bản của bạn

Trong tab phiên bản ở bên trái, nhấp vào "Phiên bản". Tôi đã quyết định đặt tên ví dụ của mình là "Nhà môi giới MQTT" bằng cách nhấp vào hộp tên kèm theo trên vùng tên. Để kết nối với phiên bản này:

  1. Nhấp chuột phải vào hàng cá thể đó và nhấp vào nhấp vào kết nối.
  2. Chọn một phương thức kết nối. Đối với ứng dụng SSH độc lập, hãy làm theo hướng dẫn chính thức của AWS về cách kết nối bằng PUTTY. Xem hình ảnh cho hình ảnh đính kèm trên cài đặt của tôi.
  3. Sau khi kết nối với phiên bản, gõ các lệnh sau:

    sudo apt update Cập nhật phiên bản linux trên máy của bạn

    • sudo apt cài đặt mosquitto mosquitto

      Cài đặt nhà môi giới mosquitto

    • sudo apt cài đặt mosquitto mosquitto-client

      Cài đặt ứng dụng khách mosquitto

    • mosquitto -v

      Kiểm tra phiên bản mosquitto để đảm bảo nó được cài đặt đúng cách. Sẽ có thông báo "Đang mở ổ cắm nghe ipv4 trên cổng 1883" nếu được cài đặt đúng cách. "Lỗi: Địa chỉ đã được sử dụng" có nghĩa là nhà môi giới đã chạy

    • mosquitto_sub -h -t "kiểm tra"

      Nghe tên chủ đề "thử nghiệm" trên nhà môi giới tại địa chỉ công cộng này (IP công cộng IPv4)

  4. Gửi Xuất bản bằng ứng dụng Windows như MQTT-LENS với đầu vào tương tự như hình ảnh đính kèm cuối cùng được đính kèm. Bạn sẽ có thể nhận được thông báo trên bảng điều khiển linux của mình

Bước 8: Bảo mật bằng mật khẩu

Bảo mật bằng mật khẩu
Bảo mật bằng mật khẩu

Trên bảng điều khiển linux, gõ như sau để tạo mật khẩu. Thay thế bằng tên người dùng mà bạn chọn.

sudo mosquitto_passwd -c / etc / mosquitto / passwd

Nó sẽ nhắc nhập mật khẩu hai lần. hãy cẩn thận vì nó sẽ không hiển thị các chữ cái đang được gõ ra. Sau đó, tạo một tệp cấu hình có tên "default.conf" nằm trên đường dẫn tệp "etc / mosquitto / conf.d /" bằng cách sử dụng trình soạn thảo văn bản máy chủ linux có tên "nano" với tư cách là người dùng quản trị / root bằng cách nhập "sudo"

sudo nano /etc/mosquitto/conf.d/default.conf

Sau khi mở tệp, hãy dán phần sau. Lưu và thoát bằng cách nhấn Ctrl + X

allow_anonymous false

password_file / etc / mosquitto / passwd

Để áp dụng những thay đổi này, hãy khởi động lại mosquitto bằng cách gõ "Ctrl + O", "Enter" và "Ctrl + X"

sudo systemctl khởi động lại mosquitto

Bây giờ bạn có thể thử lại bằng cách sử dụng ứng dụng khách windows mà bạn lựa chọn và nhập tên người dùng và mật khẩu tương ứng để kết nối.

Đề xuất: