Teleport Application Service를 사용하여 OpenClaw에 접근하기
OpenClaw는 자신의 하드웨어나 클라우드 서버에 배포할 수 있는 개인 AI 어시스턴트입니다. 이 가이드는 Teleport를 사용하여 OpenClaw Control UI에 대한 접근을 보호하는 방법을 보여줍니다. OpenClaw는 에이전트와 통신하기 위해 포트 18789에 로컬 웹 인터페이스를 노출합니다.
OpenClaw는 자신의 하드웨어나 클라우드 서버에 배포할 수 있는 개인 AI 어시스턴트입니다.
이 가이드는 Teleport를 사용하여 OpenClaw Control UI에 대한 접근을 보호하는 방법을 보여줍니다.
작동 방식#
OpenClaw는 에이전트와 통신하기 위해 포트 18789에 로컬 웹 인터페이스를 노출합니다. 기본적으로 이 인터페이스는 localhost에 바인딩됩니다. 적절한 보안 제어 없이 공개적으로 노출하면 심각한 위험이 발생합니다.
Teleport는 보안 게이트웨이 역할을 하여 이 설정을 보호할 수 있습니다. Teleport가 제공하는 기능:
- 제로 트러스트 웹 접근: 공개 포트를 노출하지 않고 안전한 Teleport 프록시를 통해 웹 인터페이스에 접근합니다.
- 보안 SSH: Teleport의 아이덴티티 기반 SSH 접근을 사용하여 기반 서버를 관리합니다.
- 출처 검증: OpenClaw가 신뢰할 수 있는 Teleport 도메인의 요청만 수락하도록 구성할 수 있습니다.
전제 조건#
-
A running Teleport cluster. If you want to get started with Teleport, sign up for a free trial or set up a demo environment.
-
The
tctlandtshclients.Installing `tctl` and `tsh` clients
-
Determine the version of your Teleport cluster. The
tctlandtshclients must be at most one major version behind your Teleport cluster version. Send a GET request to the Proxy Service at/v1/webapi/findand use a JSON query tool to obtain your cluster version. Replace with the web address of your Teleport Proxy Service:$ TELEPORT_DOMAIN= $ TELEPORT_VERSION="$(curl -s https://$TELEPORT_DOMAIN/v1/webapi/find | jq -r '.server_version')" -
Follow the instructions for your platform to install
tctlandtshclients:
-
- OpenClaw를 호스팅할 서버(예: AWS EC2, Raspberry Pi, 또는 미니 PC).
- 에이전트 백엔드를 위한 AI 모델 공급자 계정.
1/4단계. OpenClaw 서버 설정#
OpenClaw를 Raspberry Pi나 Mac mini 같은 로컬 하드웨어에 호스팅할 수 있지만, 이 가이드는 AWS EC2 인스턴스를 예시로 사용합니다.
- AWS 콘솔에 로그인하여 새 Ubuntu 인스턴스를 시작합니다.
- 인스턴스 유형을 선택합니다(예: 성능과 프리 티어 균형을 위해
t3.small). - 초기 설치를 수행할 수 있도록 SSH 접근을 허용하는 보안 그룹을 설정합니다.
2/4단계. OpenClaw 설치 및 구성#
서버가 실행되면 SSH를 통해 연결하여 에이전트를 설치합니다.
-
공식 OpenClaw 원라이너 설치 스크립트를 실행합니다:
$ curl -fsSL https://openclaw.ai/install.sh | bash -
대화형 프롬프트를 따라 보안 경고를 수락하고, 선호하는 AI 모델을 선택하고, 인증합니다. 웹 인터페이스만 필요한 경우 채널 및 스킬 설정을 건너뜁니다.
-
설치 후
openclawCLI 명령을 사용하려면 셸을 새로 고쳐야 할 수 있습니다:$ source ~/.bashrc # or ~/.zshrc
3/4단계. Teleport에 서버와 애플리케이션 등록#
-
Node와 App 역할을 모두 허용하는 새 조인 토큰을 생성합니다.
Teleport 클러스터에 대한
tctl접근이 있는 머신에서(전제 조건 참조) 다음을 실행합니다:$ tctl tokens add --type=node,app --ttl=30m --format=text출력을 기록해 두세요. 아래의
teleport configure명령에서 서버와 애플리케이션이 Teleport 클러스터에 합류 요청이 정당한지 검증하기 위해 이 토큰을 사용합니다. -
OpenClaw 서버에서 클러스터 설치 스크립트를 사용하여 Teleport 에이전트를 설치합니다:
$ curl "https:///scripts/install.sh" | sudo bash -
SSH 서비스와 Application 서비스를 모두 활성화하는 Teleport 구성을 생성합니다:
$ sudo teleport configure \ --proxy="" \ --token="token generated above" \ --roles=node,app \ --app-name=openclaw \ --app-uri=http://127.0.0.1:18789 \ --output=file -
마지막으로 Teleport 에이전트를 활성화하고 시작합니다:
$ sudo systemctl enable teleport $ sudo systemctl start teleport이제 Teleport UI에서 OpenClaw 서버와 애플리케이션이 등록된 것을 확인할 수 있습니다.

4/4단계. OpenClaw와 Teleport 페어링#
OpenClaw는 localhost 외부에서 접근하는 모든 장치를 명시적으로 페어링하도록 요구합니다. 페어링은 게이트웨이 네트워크에 합류할 수 있는 장치를 결정하는 OpenClaw의 소유자 승인 단계입니다.
허용된 출처 구성#
~/.openclaw/openclaw.json을 편집하고 allowedOrigins 섹션에 Teleport URL을 추가합니다. 을 Teleport 프록시 주소로 교체합니다:
"gateway": {
...
"controlUi": {
"allowedOrigins": ["https://openclaw.your-teleport-proxy.com" />"]
}
...
}
허용된 출처를 추가한 후 OpenClaw를 재시작하고 Teleport를 통해 앱에 접근을 시도합니다. "unauthorized: gateway token missing." 오류가 표시됩니다.
페어링 프로세스 완료#
-
~/.openclaw/openclaw.json의gateway.auth.token아래에서 게이트웨이 토큰을 검색합니다.팁: 토큰이 평문으로 저장된 경우,
.env파일로 이동하여 구성 파일에서${OPENCLAW_GATEWAY_TOKEN}변수로 참조하는 것을 고려하세요. 또한 주기적으로 교체하세요. -
Teleport Web UI에서 OpenClaw 앱을 열고 URL에 토큰을 추가합니다:
$ https://openclaw.?token=<your-gateway-token>이렇게 하면 페어링 요청이 시작됩니다.
-
OpenClaw 서버에서 페어링 요청 ID를 검색합니다:
$ openclaw devices list -
요청 ID 를 사용하여 장치를 승인합니다:
$ openclaw devices approve -
OpenClaw 게이트웨이를 재시작합니다:
$ openclaw gateway restart
이제 어디서든 Teleport로 보호된 URL을 통해 AI 에이전트에 안전하게 접근할 수 있습니다.

팁: Teleport가 정상적으로 작동하는 것이 확인되면 AWS 보안 그룹에서 표준 SSH 접근을 제거하여 서버를 더욱 강화할 수 있습니다. Teleport는 계속해서 해당 머신에 안전한 접근을 제공합니다.
추가 읽기#
- Teleport Agentic Identity Framework에 대해 알아보세요.
