본문 바로가기
개발자 전향 프로젝트

로컬에 띄운 내 웹페이지를 외부에서도 접속 가능하게 하는법 (Ngrok)

by 샘오리 2024. 7. 18.
728x90
반응형

 

원래 외부에서 외부망으로 내 로컬 PC에 호스팅하는 애플리케이션 (EX: 웹페이지)에  접속하려면, 내 public ip를 직접 노출하고 포트포워딩 설정 까지 해줘야한다.

 

그게 아니라면 클라우드 환경에 배포함으로써 이를 대신할 수 있지만

초기 구축하는 데 시간과 노력이 많이 들어가고 조금만 잘못해도 과금이 될 수 있다.

Ngrok은 이런 번거로움 없이 로컬 서버를 안전하게 https로 바꿔서 인터넷에 올려주는

터널링 툴이다.

 

사용법은 os나 실행/운영환경에 따라 다른데

https://ngrok.com/download

 

Download

$ ngrok config add-authtoken <token>

ngrok.com

나의 경우 테스트를 위해서 한 것으로

호스트 PC의 OS인 Windows에서 설치를 진행했다.

 

 

설치방법

 

패키지 설치 툴 Chocolatey를 이용한 설치법

일단 먼저 Chocolatey가 없을 경우 아래 방법으로 설치

https://chocolatey.org/install

 

Installing Chocolatey

Chocolatey is software management automation for Windows that wraps installers, executables, zips, and scripts into compiled packages. Chocolatey integrates w/SCCM, Puppet, Chef, etc. Chocolatey is trusted by businesses to manage software deployments.

chocolatey.org

 

위 명령어 복사해서 관리자 권한으로 실행한 Powershell에 붙여넣기 하고 설치 진행

 

 

패지키 설치 툴이 설치되었다면 아래 명령어 Powershell에 그대로 붙여서 ngrok 설치



ngrok 설치 완료 되었다면 설치는 끝

사용방법

토큰 없이도 사용이 가능하나 세션의 제한이 있음.

토큰은 가입만 하면 제공하고 세션 접속시간이 무제한이며 무료.

 

해서 웬만해서는 가입 후 토큰 입력해서 사용하는 방법을 권고하고 이 포스트에도 해당 방법으로 설명할 것이다.

 

 

1. 무제한 세션을 위해 
위 명령어 Powershell에 붙여넣기

 

2. Ephemeral Domain을 받아서 사용하기

휘발성 도메인이란 ngrok을 실행할 때 정해진 도메인이 없기 때문에 ngrok 측에서 알아서 무료 도메인을 매번 다르게 생성해주고 터널링해주는 것이다. 그러면 아래 명령어를 입력 후 생성된 도메인을 주소창에 복사해서 접속 할 수 있다.

ngrok http <IP:PORT>

 

OR

 

3. Static Domain을 받아서 사용하기 (권고)

정적 도메인이란 도메인이 계속 바뀌지 않고 유지된다는 뜻이고, 무료이기 때문에

도메인이 간결하거나 이쁘진 않지만 항상 같은 주소로 접속하면 된다는 장점이 있다.

 

엄청난 차이는 아니지만 더 좋다고 할 수 있다.

 

가입만 했으면 아래에서 받을 수 있다.

 

static domain을 받았다면

ngrok http <STATIC DOMAIN> <IP:PORT>

 

위 명령어처럼 사용할 수 있고 적은 정적 도메인으로 외부망 접속이 가능해진 것을 확인 할 수 있다.

 

이후 해당 도메인으로 접속하게 되면 위와 같은 화면을 보게 되는데

Visit Site를 통해 접속하면 된다.

 

무료 계정이기 때문에 서비스를 할 용도로는 당연히 부적합하고

테스트할 때 매우 유용할 것 같아서 소개해봤다.

 

한마디로 이제 내 호스트 PC가 서버 PC가 된 것

728x90
반응형