우분투(Ubuntu)에서 ngrok 설치 및 사용 방법
우분투(Ubuntu)에서 ngrok 설치 및 사용 방법
우분투(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
에서 정보를 찾을 수 있으니 외부에서도 쉽게 접속이 가능합니다.
무료 계정의 경우에는 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 | 전체 카테고리 | |
Feb 4, 2025 | Windows 11에서 WSL 설치 및 Docker 연결하기 | |
Oct 7, 2024 | Docker Compose로 Jenkins 설치 및 사용하기 | |
Aug 23, 2024 | 우분투(Ubuntu)에서 특정 폴더를 아파치 서버로 설정하기 | |
Jul 24, 2024 | GitHub Actions 시작하기 | |
Dec 31, 2023 | 우분투와 윈도우 파일 공유하기 (samba) | |
Dec 5, 2023 | crontab을 이용해서 Let’s Encrypt SSL 인증서 자동갱신 | |
Nov 27, 2023 | 우분투 docker, docker-compse 설치 | |
Nov 26, 2023 | AWS 호스팅 EC2 와 Lightsail의 차이 | |
Nov 20, 2023 | wsl 이미지 저장 위치 변경 및 백업 | |
Nov 20, 2023 | airflow postgresoperator 사용하기 | |
Nov 18, 2023 | docker-compose로 airflow 설치하기 | |
Nov 15, 2023 | wsl2에 docker 설치하기 | |
Nov 15, 2023 | mkfifo를 이용한 IPC | |
Oct 9, 2023 | Github Pull Request 템플릿 적용하기 |