튜토리얼 1편에서 EC2를 만들었을 때 MQTT broker를 설치해서 사용해봤는데요, 1편에서 만든 MQTT broker는 TLS가 적용되지 않은, 즉 HTTP에 해당하는 일반 웹소켓을 사용하므로 AWS Amplify로 호스팅된 HTTPS 사이트와 함께 사용할 때 Mixed Content 오류가 발생합니다.
AWS IoT
AWS IoT는 MQTT에 보안 및 AWS 서비스를 엮어 만든 서비스입니다. 당연히 HTTPS를 제공하기 위한 인증서 기반의 암호화 기능이 포함돼 있겠죠. 개념 및 원리는 아래 공식 홈페이지를 한 번 읽어보고
아직 이해가 덜 됐다면 AWS IoT 빠른 연결 시도도 한 번 따라해 봅니다.
이제 본격적으로 우리 앱/서버를 위한 AWS IoT를 설정해 봅시다. 먼저 아래 튜토리얼을 따라 웹 콘솔에서 리소스를 설정하고 인증서를 받습니다.
튜토리얼에서는 인증서를 바탕으로 IoT 디바이스를 구성하는 총 3가지 방법을 소개하고 있어요.
우리는 동일한 리눅스 PC에서 Node.js 앱과 Python 앱으로 통신해 보도록 합시다.
연습 - Sample Apps
먼저 아래 소스로 Node.js 앱을 깔고 cert/ 폴더를 만들어 인증서를 저장하고 samples/pub_sub_js 앱을 실행합니다.
다음은아래 Python 앱을 깔고 cert/ 폴더를 만들어 인증서를 저장하고 samples/pubsub.py 앱을 실행합니다.
두 앱간 통신이 되는 것을 확인합니다.
여기까지 됐다면, command line argument로 받지 않고 직접 코드 안에 하드코딩하여 실행해 봅니다.
'IT > Network & OS' 카테고리의 다른 글
[AWS] S3 SDK (0) | 2022.04.09 |
---|---|
[AWS] IoT + React App + Amplify (0) | 2022.02.23 |
[AWS] HTTPS & WSS (0) | 2022.02.09 |
[AWS] Amplify (0) | 2022.02.09 |
[AWS] RDS MySQL Prisma (0) | 2022.02.06 |