본문 바로가기
🛠️ IT 실전 가이드 (SW 도구)

내 컴퓨터(localhost)를 전 세계에 공개하는 1초 마법! Ngrok 완벽 가이드

by 데브프리 2026. 7. 8.

안녕하세요, 여러분의 든든한 IT 길잡이 데브프리입니다.

 

백엔드 개발을 하다 보면 이런 난감한 상황이 반드시 찾아옵니다.

"프론트엔드 개발자님, 제가 만든 API 이제 테스트해보셔도 돼요!"

"오, 주소가 어떻게 되나요?"

"음... http://localhost:8080/api/... 입니다!"

"네? 로컬호스트요? 제 컴퓨터에서는 안 들어가 지는데요? 😅"

 

내 컴퓨터(로컬)에서만 돌아가는 서버를 다른 사람에게 보여주려면 어떻게 해야 할까요? AWS 같은 클라우드 서버에 배포(Deploy)를 해야 할까요? 복잡한 공유기 포트포워딩 설정을 건드려야 할까요?

 

단 1초 만에, 명령어 한 줄로 내 방구석 노트북을 전 세계 어디서든 접속 가능한 글로벌 서버로 만들어주는 마법의 터널 도구! 'Ngrok(엔그록)'을 소개합니다.

 

1. Ngrok, 도대체 어떤 도구인가요? (방구석 비밀 터널 비유)

Ngrok은 방화벽이나 공유기 설정(NAT) 같은 복잡한 네트워크 장애물을 뚫고, 외부 인터넷망에서 내 로컬 컴퓨터(localhost)로 직접 들어올 수 있게 연결해 주는 '보안 터널링(Tunneling) 프로그램'입니다.

Ngrok 엔그록 로컬호스트 터널링 비유
Ngrok은 외부의 손님이 복잡한 보안 검색대(방화벽/포트포워딩)를 거치지 않고, 내 컴퓨터로 다이렉트로 들어올 수 있는 안전한 비밀 터널을 뚫어줍니다.

집 건물(공유기)에는 기본적으로 외부인의 침입을 막는 튼튼한 보안 문이 잠겨 있습니다. 그래서 외부의 프론트엔드 개발자가 내 컴퓨터(127.0.0.1)로 찾아오려 해도 문 앞(방화벽)에서 튕겨 나갑니다.

 

이때 Ngrok을 실행하면, Ngrok 서버가 외부 세계와 내 컴퓨터 사이의 땅굴을 파서 https://랜덤주소.ngrok-free.app 이라는 아주 예쁜 가짜 주소(공용 URL)를 하나 만들어줍니다. 외부 손님이 이 주소로 찾아오면, 터널을 타고 슝 미끄러져 내 컴퓨터의 8080 포트로 곧바로 도착하게 되는 것이죠!

 

2. Ngrok 사용법: 터미널 명령어 딱 한 줄이면 끝!

Ngrok의 가장 큰 장점은 사용법이 어이없을 정도로 쉽다는 것입니다. AWS 가입, 리눅스 명령어, 도메인 구매? 전부 필요 없습니다.

  1. 공식 홈페이지(ngrok.com)에서 프로그램을 다운로드하고 회원가입 후 토큰(Token)을 등록합니다.
  2. 스프링 부트 서버(예: localhost:8080)를 실행해 둡니다.
  3. 터미널(CMD)을 열고 아래 명령어를 딱 한 줄 칩니다.
Bash
 
# 💡 내 컴퓨터의 8080 포트로 연결되는 인터넷 터널을 뚫어라!
ngrok http 8080

Ngrok 엔그록 실행 포워딩 URL 생성 화면
명령어를 입력하는 즉시 전 세계 어디서든 내 스프링 부트 서버로 접속할 수 있는 암호화된 https URL 주소가 발급됩니다.

엔터를 치는 순간, 콘솔 창에 Forwarding 이라는 글자와 함께 https://... 로 시작하는 주소가 나타납니다. 이제 이 주소를 복사해서 원격 근무 중인 프론트엔드 개발자에게 카카오톡으로 보내주기만 하면, 그 즉시 내 서버의 API를 함께 테스트할 수 있습니다.

 

3. 실무에서 Ngrok을 미친 듯이 쓰는 3가지 이유

단순히 동료에게 자랑(?)하는 용도를 넘어, Ngrok은 실무 백엔드 개발에서 절대 없어서는 안 될 핵심 도구입니다.

① 카카오페이, 토스 결제 등 웹훅(Webhook) 테스트

외부 결제사나 카카오/구글 로그인(OAuth) 연동을 개발할 때, 외부 서버는 결제 결과를 "우리 서버"로 알려주어야 합니다(Webhook). 이때 localhost 주소로는 외부 서버가 결과를 보내줄 수 없습니다. Ngrok으로 만든 https 주소를 결제사 관리자 페이지에 등록해 두면 로컬에서 편안하게 결제 승인 테스트를 할 수 있습니다.

② 모바일 환경(스마트폰)에서의 즉각적인 테스트

내가 만든 웹 페이지가 아이폰이나 갤럭시에서 어떻게 보이는지, 모바일 브라우저의 API 통신은 잘 되는지 확인하고 싶을 때가 있습니다. 컴퓨터와 스마트폰을 케이블로 연결할 필요 없이, 스마트폰 사파리 브라우저에 Ngrok 주소만 치면 내 컴퓨터의 서버 화면이 스마트폰에 그대로 뜹니다.

③ 귀찮은 배포(Deployment) 과정 생략

코드를 한두 줄 고치고 테스트할 때마다 AWS나 클라우드 서버에 빌드(Build)하고 배포하는 것은 엄청난 시간 낭비입니다. Ngrok을 쓰면 배포 과정 없이 로컬에서 코드를 수정하자마자 즉시 외부인과 변경된 화면을 보며 회의를 진행할 수 있습니다.

 

마무리

로컬 서버는 나만의 안전한 실험실이지만, 때로는 그 실험실의 문을 열고 외부와 소통해야만 하는 순간이 반드시 찾아옵니다.

 

그럴 때마다 복잡한 인프라 설정에 진땀 빼지 마세요. 터미널에 무심하게 툭 입력한 ngrok http 8080 명령어 한 줄이 여러분의 퇴근 시간을 몇 시간이나 앞당겨 줄 것입니다. 배포 없이 세상과 연결되는 마법을 직접 경험해 보세요!

 

오늘의 IT 실전 가이드가 도움이 되셨다면 공감과 댓글 부탁드립니다. 지금까지 데브프리였습니다. 감사합니다!