우분투(Ubuntu)에서 ngrok 설치 및 사용 방법

우분투(Ubuntu)에서 ngrok 설치 및 사용 방법

DevOps
우분투(Ubuntu)에서 ngrok 설치 및 사용 방법
Author

gabriel yang

Published

March 20, 2025

우분투(Ubuntu)에서 ngrok 설치 및 사용 방법

1. ngrok이란?

ngrok은 로컬 서버를 인터넷에서 접근할 수 있도록 터널링해주는 도구입니다. 웹 개발 중 외부에서 테스트하거나, 로컬에서 실행 중인 API를 공유할 때 유용하게 사용할 수 있습니다.

2. 우분투에서 ngrok 설치하기

2.1. ngrok 다운로드

먼저 ngrok을 설치하려면 공식 웹사이트에서 최신 버전을 다운로드해야 합니다.

curl -sSL https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
    | sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null \
    && echo "deb https://ngrok-agent.s3.amazonaws.com buster main" \
    | sudo tee /etc/apt/sources.list.d/ngrok.list \
    && sudo apt update \
    && sudo apt install ngrok

위 명령어를 실행하면 ngrok 실행 파일이 /usr/local/bin/ 디렉터리에 저장되어 전역에서 실행할 수 있습니다.

3. ngrok 인증 설정

ngrok을 사용하려면 먼저 인증이 필요합니다. ngrok 공식 웹사이트(https://ngrok.com)에서 회원가입 후 Authtoken을 발급받을 수 있습니다.

웹사이트에서 발급받은 토큰을 다음 명령어로 설정하세요.

ngrok config add-authtoken <토큰정보>

이제 ngrok을 사용할 준비가 완료되었습니다.

4. ngrok 사용 방법

4.1. HTTP 서버 노출하기

로컬에서 실행 중인 웹 서버(예: 8000 포트)를 외부에 공개하려면 다음 명령어를 실행하세요.

ngrok http 8000

실행하면 다음과 같은 출력이 나타납니다.

Forwarding    https://random-subdomain.ngrok.io -> localhost:8000

표시된 https://random-subdomain.ngrok.io 주소를 통해 외부에서 로컬 서버에 접근할 수 있습니다. ngrok을 실행할 때마다 다른 링크가 생성되니 해당 링크로 접속이 가능합니다. 가입한 ngrok 사이드로 접속하면 Endpoints에서 정보를 찾을 수 있으니 외부에서도 쉽게 접속이 가능합니다.

Note

무료 계정의 경우에는 1 개의 agent session만 가능하니 참고 하세요. ERROR: authentication failed: Your account is limited to 1 simultaneous ngrok agent sessions.

4.2. TCP 포트 노출하기

SSH나 기타 TCP 서비스도 노출할 수 있습니다.

ngrok tcp 22

이제 외부에서도 ngrok이 제공하는 주소를 통해 SSH에 접속할 수 있습니다.

5. ngrok 종료 및 확인

ngrok이 실행 중인 터미널에서 Ctrl + C를 누르면 종료됩니다. 실행 중인 터널을 확인하려면 다음 명령어를 사용할 수도 있습니다.

pgrep -a ngrok

6. 마무리

이제 ngrok을 활용하여 로컬 서버를 외부에서 테스트할 수 있습니다. 더 많은 기능은 공식 문서(https://ngrok.com/docs)를 참고하세요!

카테고리 다른 글

Date Title Author
Jan 1, 3000 전체 카테고리 gabriel yang
Feb 4, 2025 Windows 11에서 WSL 설치 및 Docker 연결하기 gabriel yang
Oct 7, 2024 Docker Compose로 Jenkins 설치 및 사용하기 gabriel yang
Aug 23, 2024 우분투(Ubuntu)에서 특정 폴더를 아파치 서버로 설정하기 gabriel yang
Jul 24, 2024 GitHub Actions 시작하기 gabriel yang
Dec 31, 2023 우분투와 윈도우 파일 공유하기 (samba) gabriel yang
Dec 5, 2023 crontab을 이용해서 Let’s Encrypt SSL 인증서 자동갱신 gabriel yang
Nov 27, 2023 우분투 docker, docker-compse 설치 gabriel yang
Nov 26, 2023 AWS 호스팅 EC2 와 Lightsail의 차이 gabriel yang
Nov 20, 2023 wsl 이미지 저장 위치 변경 및 백업 gabriel yang
Nov 20, 2023 airflow postgresoperator 사용하기 gabriel yang
Nov 18, 2023 docker-compose로 airflow 설치하기 gabriel yang
Nov 15, 2023 wsl2에 docker 설치하기 gabriel yang
Nov 15, 2023 mkfifo를 이용한 IPC gabriel yang
Oct 9, 2023 Github Pull Request 템플릿 적용하기 gabriel yang
No matching items
Back to BLOG LIST