AWS IoT Core의 "1-Click 인증서 제작"과 "CSR 제작"두 가지 방법으로 구성

8703 단어 IoTCoreAWS

입문


IoT의 핵심을 설정하는 방법에서 나는 다음과 같은 두 가지를 시도했기 때문에 그 비망록이다.
  • 1-Click 인증서 작성
  • CSR을 통한 제작
  • 한편, 이번에 설정된 장치는 Jetson nano의 Developers kit입니다.
    작업은 Windows에서 진행되며, Jetson nano에 대한 작업은 주로 TeraTerm 연결로 진행된다.
    ※ 파일 교환은 FileZilla에서 실시
    운영 체제가 미리 설치되어 있습니다. 다음 글을 참조하십시오.
    참조: 처음 봐요!엔비디아 제트슨 나노는 지식과 최초의 시작!

    사전 준비


    AWS IoT의 CA 라우팅 가져오기


    이 페이지 에서 AWS IoT의 CA 노선을 가져옵니다.
    RSA2048 비트 키: 아마존 루트 CA1을 마우스 오른쪽 버튼으로 클릭하고 다른 이름으로 저장하여 링크를 가져옵니다.

    mosquitto 설치


    mosquitto를 설치하여 설정된 소통 테스트를 진행합니다.
    참조: Ubuntu에 Mosquitto를 설치하여 MQTT 에이전트 구축
    #パッケージにmosquittoのレポジトリを追加
    sudo add-apt-repository ppa:mosquitto-dev/mosquitto-ppa
    
    #パッケージリストの更新
    sudo apt-get update
    
    #クライアントのインストール
    sudo apt-get install mosquitto-clients
    
    #ブローカーのインストール
    sudo apt-get install mosquitto
    

    1. 인증서 1-Click 만들기 에서 설정


    이번에는 증명서 작성→물품 제작 순으로 실시해 이렇게 기재했다.
    ※ 아이템 제작 시 "1-Click 증명서 작성"수속 감소

    1-1 인증서 만들기


    1. 관리 콘솔에서 사물인터넷 핵심으로 전환
    2. 왼쪽 메뉴에서 보안 > 인증서 > 인증서 만들기 를 클릭합니다.
    3. 다음 화면에서 인증서 만들기(추천) 1-Click 인증서 만들기를 클릭합니다.

    4. 인증서가 생성되었으니 모두 다운로드하여 사용 을 클릭합니다.

    5. 정책 부착 을 클릭합니다.
    6. 새 정책 만들기 를 클릭합니다.
    7. 이번에는 검증용이기 때문에 특별히 권한을 한정하지 않고 동작과 자원을 지정하고'만들기'를 클릭
  • 이름: 모든 정책 이름
  • 액션: iot:*
  • 리소스 ARN:*
  • 라이센스 검사

  • 1-2 아이템 만들기


    1. 왼쪽 메뉴에서 관리 > 아이템 > 아이템 등록 순서 클릭
    2. "단일적인 것 만들기"를 클릭
    3. "이름"에 임의의 이름을 입력하고 다른 것은 이렇게 "다음"을 클릭합니다

    4. 이번에는 증명서를 먼저 작성했으므로'증명서 없이 물품 제작'을 클릭

    1-3 인증서 부착


    상기 단계에서 생성된 물품은 인증서와 연결됩니다.
    1. 왼쪽 메뉴에서 보안 > 인증서를 선택하고 클릭
    ※ 일람표에는 방금 작성한 증명서가 나와 있습니다.
    2. 생성된 인증서 확인 및 동작 > 아이템 부착
    3. 제작된 물건을 확인하고'부착'을 클릭

    1-4 소통 확인


    획득한 물품의 인증서, 개인 키, AWS IoT의 CA 경로를 사용하여 IoT Core에 MQTT 메시지를 보냅니다.
    1. 인증서 등을 저장하는 디렉터리 만들기
    mkdir .certs
    
    2. 생성된 디렉토리에 다음 파일 업로드
  • 개인 키: xxxxx-private.pem.key
  • 인증서: xxxxx-certificate.pem.crt
  • IoT Core의 CA: Amazon RootCA1.pem
  • 3. 관리 콘솔의 왼쪽 메뉴에서 테스트 클릭
    4. 왼쪽 메뉴의 설정을 클릭하여 끝점을 제어합니다.

    5. 테마 필터에test/mqtt를 입력하고 구독을 누르십시오
    ※ 테스트/mqtt에 게시된 메시지를 구독할 수 있는지 테스트

    6.Jetson nano는 mosquitto를 통해 test/mqtt에 메시지를 보냅니다.
    #証明書等を格納したディレクトリに移動
    cd .certs
    
    #MQTTメッセージをパブリッシュ
    mosquitto_pub --cafile [IoT CoreのCA] --cert [モノの証明書] --key [秘密鍵] \
     -i [デバイス名] --tls-version tlsv1.2 -h [エンドポイント] -p 8883 -q 1 \
     -t test/mqtt -m "{\"message\":\"Hello world\"}" -d
    
    7. 관리 콘솔에 설정된 가입이 메시지를 받았는지 확인
    8. Jetson nano 이번 구독 진행
    mosquitto_sub --cafile [IoT CoreのCA] --cert [モノの証明書] --key [秘密鍵] \
     -i [デバイス名] --tls-version tlsv1.2 -h [エンドポイント] -p 8883 -q 1 -t test/mqtt -d
    
    9. 관리 콘솔에서 테스트 > 주제 게시 를 클릭합니다.
    10. 테마 이름은 "test/mqtt"이고 "제출"을 누르십시오

    11. Jetson nano의 구독 성공 확인
    ※ Ctrl+C 구독 종료

    1-5 메모


    인증서를 저장하는 디렉터리 이외에mosquitto 명령을 실행할 때 "Error: Problem setting TLS options."에서 설명한 대로 해당 매개변수의 값을 수정합니다.
    아래의 보도를 참고하여 위에서 말한 바와 같이 디렉터리를 이동하면 제거됩니다.
    참조: [Raspberry Pi] AWS IoT와 Raspberry Pi로 IoT를 해보도록 하겠습니다.

    2CSR 작성


    위 작업 후 동일한 Jetson nano 작업 시 다음 내용이 삭제됩니다.
    관리 콘솔에서
  • 아이템
  • 인증서
  • Jetson nano에서
  • 물품증서
  • 개인 키
  • 2-1 개인 키 및 CSR 만들기


    이번에는'CSR 제작'에서 물품에 대한 증명서를 작성하기 위해 아래 기사를 참고하여 비밀 키와 CSR을 제작하였습니다.
    참조: Apache+OpenSSL CSR 생성 단계(신규)
    1. Jetson nano 개인 키 및 CSR 생성
    #opensslが使えることを確認
    openssl version
    OpenSSL 1.1.1  11 Sep 2018
    
    #作業ディレクトリに移動
    cd .certs
    
    #秘密鍵の生成
    openssl genrsa -des3 -out private.key 2048
    
    #CSRの生成
    openssl req -new -key private.key -out things.csr
    
    2. 생성된 CSR 가져오기

    2-2 아이템 만들기


    1. 왼쪽 메뉴에서 관리 > 아이템 > 아이템 등록 순서 클릭
    2. "단일적인 것 만들기"를 클릭
    3. "이름"에 임의의 이름을 입력하고 다른 것은 이렇게 "다음"을 클릭합니다
    4. 이번에는'CSR'을 클릭하여 제작

    5. 파일 선택 화면이 열리므로 방금 작성, 획득한 CSR 파일 선택
    6. 파일 업로드 단추 클릭

    7. 제작된 물건에 대한 증명서를 다운로드하고 "유효화"를 클릭

    8. 정책 추가 를 클릭합니다.
    9.'1-1 증명서 작성'에서 작성한 전략을 남겼기 때문에 이번에는 이것을 선택하고'아이템 로그인'을 클릭

    2-3 소통 확인


    다음 단계는 1-4에서 수행한 단계와 같습니다.
    1. 취득한 물건의 증명서는 Jetson nano의 것입니다.certs 디렉토리에 업로드
    2. 관리 콘솔의 왼쪽 메뉴에서 테스트 클릭
    3. 테마 필터에 "test/mqtt"를 입력하고 "예약"을 누르십시오
    ※ 테스트/mqtt에 게시된 메시지를 구독할 수 있는지 테스트
    4. Jetson nano에서 mosquitto로 test/mqtt에 메시지 보내기
    #証明書等を格納したディレクトリに移動
    cd .certs
    
    #MQTTメッセージをパブリッシュ
    mosquitto_pub --cafile [IoT CoreのCA] --cert [モノの証明書] --key [秘密鍵] \
     -i [デバイス名] --tls-version tlsv1.2 -h [エンドポイント] -p 8883 -q 1 \
     -t test/mqtt -m "{\"message\":\"Hello world\"}" -d
    
    5. 관리 콘솔에 설정된 가입이 메시지를 받았는지 확인
    6. Jetson nano가 이번에 구독을 합니다.
    mosquitto_sub --cafile [IoT CoreのCA] --cert [モノの証明書] --key [秘密鍵] \
     -i [デバイス名] --tls-version tlsv1.2 -h [エンドポイント] -p 8883 -q 1 -t test/mqtt -d
    
    7. 관리 콘솔에서 테스트 > 주제 게시 를 클릭합니다.
    8. 테마 이름은 "test/mqtt"이고 "제출"을 누르십시오
    9. Jetson nano의 구독 성공 확인

    2-4 메모


    "2-2 개 만들기"6단계에서'파일 업로드'를 눌렀을 때 다음 동작이 몇 번 발생했습니다.
  • 만든 인증서 화면을 건너뛰고 추가 정책 화면으로 이동
  • 정책을 선택하고 "등록 아이템"을 클릭한 후 미등록 아이템
  • 생성된 인증서 화면이 튀어나올 때 파일 업로드를 되돌려 받았습니다.
    등록 물품이 없으면 등록 물품 → 증명서 첨부 순으로 대응했다.

    3 끝


    이번에 상기 두 가지 방법으로 장치를 설정하여 MQTT 메시지를 발표/구독할 수 있는 곳을 확인하였다.
    확인을 위해 제작된 아래의 것들은 작업 후 삭제되었습니다.
    ※ AWS IoT Core의 CA는 향후에도 검증에 사용될 예정
  • 정책
  • 물품증서
  • 아이템
  • 개인 키 및 CSR 파일
  • 4 참고 문헌(문장에 나타나지 않은)

  • AWS IOT CORE 기본 Hanson
  • AWS IOT DEVICE MANAGEMENT WORKSHOP
  • [AWS IoT]CSR을 사용하여 인증서 만들기
  • 좋은 웹페이지 즐겨찾기