기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
aws.greengrass.SecureTunneling
구성 요소를 사용하면 제한된 방화벽 뒤에 있는 Greengrass 코어 디바이스와 안전한 양방향 통신을 설정할 수 있습니다.
예를 들어 방화벽 뒤에 들어오는 모든 연결을 금지하는 Greengrass 코어 디바이스가 있다고 가정해 보겠습니다. 보안 터널링은 MQTT를 사용하여 액세스 토큰을 디바이스로 전송한 다음 WebSockets 를 사용하여 방화벽을 통해 디바이스에 SSH 연결합니다. 이 AWS IoT 관리형 터널을 사용하면 디바이스에 필요한 SSH 연결을 열 수 있습니다. AWS IoT 보안 터널링을 사용하여 원격 디바이스에 연결하는 방법에 대한 자세한 내용은 AWS IoT 개발자 안내서의 AWS IoT 보안 터널링을 참조하세요.
이 구성 요소는 $aws/things/
주제에 대한 메시지 AWS IoT Core MQTT브로커를 구독하여 보안 터널링 알림을 수신합니다.greengrass-core-device
/tunnels/notify
버전
이 구성 요소에는 다음과 같은 버전이 있습니다.
-
1.0.x
유형
이 구성 요소는 일반 구성 요소(aws.greengrass.generic
)입니다. Greengrass nucleus는 구성 요소의 수명 주기 스크립트를 실행합니다.
자세한 내용은 구성 요소 유형 단원을 참조하십시오.
운영 체제
이 구성 요소는 Linux 코어 디바이스에만 설치할 수 있습니다.
아키텍처:
-
Armv71
-
Armv8(AArch64)
-
x86_64
요구 사항
이 구성 요소에는 다음과 같은 요구 사항이 있습니다.
-
보안 터널링 구성 요소에 사용할 수 있는 최소 디스크 공간은 32MB입니다. 이 요구 사항에는 동일한 디바이스에서 실행되는 Greengrass 코어 소프트웨어 또는 기타 구성 요소가 포함되지 않습니다.
-
보안 터널링 구성 요소에 사용할 RAM 수 있는 최소 16MB입니다. 이 요구 사항에는 동일한 디바이스에서 실행되는 Greengrass 코어 소프트웨어 또는 기타 구성 요소가 포함되지 않습니다. 자세한 내용은 JVM 옵션으로 메모리 할당 제어 단원을 참조하십시오.
-
GNU 보안 터널링 구성 요소 버전 1.0.12 이상에는 Linux 커널이 3.2 이상인 C 라이브러리(glibc) 버전 2.25 이상이 필요합니다. 장기 지원 종료 날짜가 지난 운영 체제 및 라이브러리 버전은 지원되지 않습니다. 장기 지원과 함께 운영 체제 및 라이브러리를 사용해야 합니다.
-
운영 체제와 Java 런타임은 모두 64비트로 설치되어 있어야 합니다.
-
Python
3.5 이상은 Greengrass 코어 디바이스에 설치되어 PATH 환경 변수에 추가되었습니다. -
libcrypto.so.1.1
Greengrass 코어 디바이스에 설치되고 PATH 환경 변수에 추가되었습니다. -
Greengrass 코어 디바이스의 포트 443에서 아웃바운드 트래픽을 엽니다.
-
Greengrass 코어 디바이스와 통신하는 데 사용할 통신 서비스에 대한 지원을 켭니다. 예를 들어 디바이스에 대한 SSH 연결을 열려면 해당 디바이스를 SSH 켜야 합니다.
엔드포인트 및 포트
이 구성 요소는 기본 작업에 필요한 엔드포인트 및 포트 외에 다음 엔드포인트 및 포트에 대한 아웃바운드 요청도 수행할 수 있어야 합니다. 자세한 내용은 프록시 또는 방화벽을 통해 디바이스 트래픽 허용 단원을 참조하십시오.
엔드포인트 | 포트 | 필수 | 설명 |
---|---|---|---|
|
443 | 예 |
보안 터널을 설정합니다. |
종속성
구성 요소를 배포할 때는 호환되는 버전의 종속성 AWS IoT Greengrass 도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 단원에는 이 구성 요소의 릴리스된 버전에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. AWS IoT Greengrass 콘솔
다음 표에는 이 구성 요소의 버전 1.1.0에 대한 종속성이 나열되어 있습니다.
종속성 | 호환 버전 | 종속성 유형 |
---|---|---|
Greengrass nucleus | >=2.0.0 <3.0.0 | 소프트 |
구성 요소 종속성에 대한 자세한 내용은 구성 요소 레시피 참조를 참조하세요.
구성
이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.
OS_DIST_INFO
-
(선택 사항) 코어 디바이스의 운영 체제. 기본적으로 구성 요소는 코어 디바이스에서 실행 중인 운영 체제를 자동으로 식별하려고 시도합니다. 구성 요소가 기본값으로 시작되지 않는 경우 이 값을 사용하여 운영 체제를 지정합니다. 이 구성 요소에 대해 지원되는 운영 체제의 목록은 장치 요구 사항 섹션을 참조하세요.
이 값은
auto
,ubuntu
,amzn2
,raspberrypi
중 하나일 수 있습니다.기본값:
auto
accessControl
-
(선택 사항) 구성 요소가 기본 알림 주제에 메시지를 게시할 수 있도록 허용하는 권한 부여 정책이 있는 객체입니다.
참고
배포가 사물 그룹을 대상으로 하는 경우 이 구성 파라미터를 수정하지 마세요. 배포가 개별 코어 디바이스를 대상으로 하고 해당 디바이스의 주제에 대한 구독을 제한하려는 경우 코어 디바이스의 사물 이름을 지정합니다. 디바이스의 권한 부여 정책의
resources
값에서 MQTT 주제 와일드카드를 디바이스의 사물 이름으로 바꿉니다.{ "aws.greengrass.ipc.mqttproxy": { "aws.iot.SecureTunneling:mqttproxy:1": { "policyDescription": "Access to tunnel notification pubsub topic", "operations": [ "aws.greengrass#SubscribeToIoTCore" ], "resources": [ "$aws/things/+/tunnels/notify" ] } } }
예: 구성 병합 업데이트
다음 예제 구성은 이 구성 요소가 Ubuntu를 실행하는 MyGreengrassCore
라는 코어 디바이스에서 보안 터널을 열 수 있도록 지정합니다.
{
"OS_DIST_INFO": "ubuntu",
"accessControl": {
"aws.greengrass.ipc.mqttproxy": {
"aws.iot.SecureTunneling:mqttproxy:1": {
"policyDescription": "Access to tunnel notification pubsub topic",
"operations": [
"aws.greengrass#SubscribeToIoTCore"
],
"resources": [
"$aws/things/MyGreengrassCore/tunnels/notify"
]
}
}
}
}
로컬 로그 파일
이 구성 요소는 다음 로그 파일을 사용합니다.
/logs/aws.greengrass.SecureTunneling.log
/greengrass/v2
이 구성 요소의 로그를 보려면
-
코어 디바이스에서 다음 명령을 실행하여 실시간으로 이 구성 요소의 로그 파일을 봅니다. 를 AWS IoT Greengrass 루트 폴더의 경로
로 바꿉니다./greengrass/v2
sudo tail -f
/logs/aws.greengrass.SecureTunneling.log/greengrass/v2
라이선스
이 구성 요소에는 다음 타사 소프트웨어/라이선스가 포함되어 있습니다.
-
AWS IoT 디바이스 클라이언트
/Apache 라이선스 2.0 -
AWS IoT Device SDK for Java
/Apache 라이선스 2.0 -
gson
/Apache 라이선스 2.0 -
log4j
/Apache 라이선스 2.0 -
slf4j
/Apache 라이선스 2.0
사용법
디바이스에서 보안 터널링 구성 요소를 사용하려면 다음을 수행합니다.
-
디바이스에 보안 터널링 구성 요소를 배포합니다.
-
AWS IoT 콘솔
을 엽니다. 왼쪽 메뉴에서 원격 작업을 선택한 다음 보안 터널을 선택합니다. -
Greengrass 디바이스에 대한 터널을 생성합니다.
-
소스 액세스 토큰을 다운로드합니다.
-
소스 액세스 토큰과 함께 로컬 프록시를 사용하여 대상에 연결합니다. 자세한 내용을 알아보려면 AWS IoT 개발자 안내서의 How to use the local proxy를 참조하세요.
다음 사항도 참조하세요.
-
AWS IoT 개발자 안내서의 AWS IoT 보안 터널링
-
AWS IoT 개발자 안내서의 How to use the local proxy
Changelog
다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.
버전 |
변경 사항 |
---|---|
1.1.0 |
|
1.0.19 |
주의보안 터널링 로컬 프록시를 터널 소스 클라이언트로 사용하는 경우 로컬 프록시를 버전 3.1.1 이상으로 업그레이드할 때까지 이 버전으로 구성 요소를 업데이트하지 마세요. |
1.0.18 |
Greengrass nucleus 버전 2.12.0 릴리스용으로 업데이트된 버전입니다. |
1.0.17 |
|
1.0.16 |
Greengrass nucleus 버전 2.11.0 릴리스용으로 업데이트된 버전입니다. |
1.0.15 |
|
1.0.14 |
Greengrass nucleus 버전 2.10.0 릴리스용으로 업데이트된 버전입니다. |
1.0.13 |
|
1.0.12 |
|
1.0.11 |
Greengrass nucleus 버전 2.9.0 릴리스용으로 업데이트된 버전입니다. |
1.0.10 |
Greengrass nucleus 버전 2.8.0 릴리스용으로 업데이트된 버전입니다. |
1.0.9 |
Greengrass nucleus 버전 2.7.0 릴리스용으로 업데이트된 버전입니다. |
1.0.8 |
Greengrass nucleus 버전 2.6.0 릴리스용으로 업데이트된 버전입니다. |
1.0.7 |
|
1.0.6 |
이 버전에는 버그 수정이 포함되어 있습니다. |
1.0.5 |
Greengrass nucleus 버전 2.5.0 릴리스용으로 업데이트된 버전입니다. |
1.0.4 |
Greengrass nucleus 버전 2.4.0 릴리스용으로 업데이트된 버전입니다. |
1.0.3 |
Greengrass nucleus 버전 2.3.0 릴리스용으로 업데이트된 버전입니다. |
1.0.2 |
Greengrass nucleus 버전 2.2.0 릴리스용으로 업데이트된 버전입니다. |
1.0.1 |
Greengrass nucleus 버전 2.1.0 릴리스용으로 업데이트된 버전입니다. |
1.0.0 |
초기 버전입니다. |