외부 접속 방식 선택
SetFN 스페이스빌더는 설치 직후 같은 네트워크에서 바로 사용할 수 있습니다. 사무실 밖이나 모바일 네트워크에서도 접속하려면 서버와 외부 인터넷 사이에 안전한 연결 경로를 만들어야 합니다.
처음 들으면 복잡해 보이지만, 목적은 단순합니다.
https://space.example.com
↓
외부 접속 연결 방식
↓
http://localhost:8510
Cloudflare Tunnel을 사용하면 이 연결을 비교적 간단하게 구성할 수 있습니다. 서버의 포트를 인터넷에 직접 노출하지 않아도 되고, HTTPS 인증서와 도메인 연결도 Cloudflare에서 처리합니다.
먼저 외부 접속이 필요한지 확인하세요
같은 사무실이나 Wi-Fi 안에서만 사용한다면 외부 접속 설정은 필요하지 않습니다. 스페이스 접속 주소 확인에서 내부 IP 주소로 접속하세요.
다음과 같은 경우에는 외부 접속 구성이 필요합니다.
- 집이나 출장지에서 스페이스에 접속
- 모바일 데이터로 접속
- 외부 협력사나 고객에게 공유 링크 전달
- 여러 사업장이나 네트워크에서 하나의 스페이스 사용
어떤 방식을 선택해야 하나요?
| 방식 | 추천 대상 | 장점 | 직접 관리할 항목 |
|---|---|---|---|
| Cloudflare Tunnel(권장) | 처음 외부 접속을 구성하는 사용자, 고정 공인 IP가 없는 환경 | 공유기 포트 개방 불필요, 원본 서버 IP 비공개, HTTPS와 도메인 연결이 쉬움 | Cloudflare 계정, 도메인, cloudflared 서비스 |
| Caddy 리버스 프록시 | 자체 서버를 운영하면서 설정을 단순하게 유지하려는 사용자 | 간단한 설정, HTTPS 인증서 자동 발급·갱신 | DNS, 공인 IP, 방화벽, 포트포워딩, Caddy |
| NGINX 리버스 프록시 | 기존 NGINX 인프라가 있거나 세밀한 제어가 필요한 조직 | 높은 설정 유연성, 기존 웹 인프라와 통합 용이 | DNS, 인증서, 방화벽, 포트포워딩, NGINX |
| 공유기 포트포워딩 | 테스트 환경 또는 네트워크를 직접 관리할 수 있는 사용자 | 별도 터널 서비스 없이 직접 연결 | 공인 IP, 공유기, 방화벽, HTTPS, 보안 업데이트 |
| VPN·사설망 | 구성원에게만 비공개로 접속을 허용하려는 조직 | 서비스를 공개 인터넷에 노출하지 않음 | VPN 서버와 사용자 단말 설정 |
터널링과 리버스 프록싱을 쉽게 이해하기
터널링
서버 안에서 실행되는 Connector가 외부 서비스에 먼저 안전한 연결을 만듭니다. 외부 요청은 이 연결을 거꾸로 따라 서버에 도착합니다.
Cloudflare Tunnel에서는 cloudflared가 서버에서 Cloudflare로 아웃바운드 연결을 생성합니다. 따라서 일반적인 환경에서는 공유기의 80·443·8510 포트를 외부에 열 필요가 없습니다.
사용자 → Cloudflare → 이미 연결된 Tunnel → SetFN :8510
리버스 프록싱
Caddy나 NGINX가 외부 요청을 먼저 받은 뒤 내부의 SetFN 서비스로 전달합니다. 사용자는 8510 포트를 알 필요 없이 https://space.example.com으로 접속합니다.
사용자 → Caddy 또는 NGINX :443 → SetFN :8510
리버스 프록시는 HTTPS 종료, 도메인 분기, 접속 로그, 요청 제한 같은 기능을 한곳에서 관리할 수 있다는 장점이 있습니다.
권장 방식: Cloudflare Tunnel
Cloudflare Tunnel은 내부 서비스를 공개 도메인에 연결하면서 원본 서버에 공개적으로 라우팅 가능한 IP 주소를 요구하지 않는 방식입니다. cloudflared가 Cloudflare 네트워크로 연결을 시작하므로 원본 서버로 직접 우회 접속되는 경로도 줄일 수 있습니다.
처음 구성할 때 기대할 수 있는 점은 다음과 같습니다.
- 공유기 관리자 화면에서 포트포워딩을 설정하지 않아도 됨
- 유동 공인 IP나 통신사 환경의 영향을 비교적 적게 받음
https://space.example.com형태의 주소 사용- 외부 인증서 발급과 갱신 부담 감소
- 필요하면 Cloudflare Access로 허용 사용자나 이메일 도메인 제한
- 한 Connector에서 여러 내부 웹 서비스를 서브도메인별로 연결 가능
Cloudflare Tunnel 구성 흐름
- 사용할 도메인을 Cloudflare에 연결합니다.
- Cloudflare 대시보드에서 Tunnel을 생성합니다.
- 스페이스빌더 서버에
cloudflared를 설치합니다. - 대시보드에 표시된 명령으로 Connector를 실행합니다.
- Published application에 도메인과 SetFN 주소를 연결합니다.
- 필요하면 Cloudflare Access 정책을 추가합니다.
- 외부 네트워크에서 접속을 확인합니다.
Published application의 Service URL에는 다음 값을 사용합니다.
| 항목 | 예시 |
|---|---|
| Public hostname | space.example.com |
| Service type | HTTP |
| Service URL | http://localhost:8510 |
SetFN 포트를 변경했다면 8510 대신 실제 서비스 포트를 입력하세요.
Cloudflare 공식 상세 가이드
Cloudflare 화면과 설치 명령은 변경될 수 있으므로 실제 구성 시 다음 공식 문서를 함께 확인하세요.
- Cloudflare Tunnel 개요
- 대시보드에서 Tunnel 생성하기
cloudflared운영체제별 설치- 로컬 서비스를 공개 도메인에 연결하기
- Cloudflare Access로 사용자 인증 추가하기
직접 리버스 프록시 운영
이미 공인 IP와 서버 인프라를 운영하고 있다면 Caddy 또는 NGINX로 직접 연결할 수 있습니다.
Caddy
Caddy는 도메인의 DNS가 서버를 가리키고 80·443 포트가 서버에 도달하면 HTTPS 인증서 발급과 갱신을 자동으로 처리할 수 있어 소규모 자체 운영 환경에 적합합니다.
space.example.com {
reverse_proxy 127.0.0.1:8510
}
자세한 설정은 Caddy 리버스 프록시 빠른 시작을 참고하세요.
NGINX
기존에 NGINX를 사용하고 있다면 HTTPS 요청을 SetFN의 로컬 포트로 전달할 수 있습니다.
server {
listen 443 ssl;
server_name space.example.com;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:8510;
}
}
위 예시는 프록시의 핵심 구조만 보여줍니다. 실제 운영에는 인증서와 WebSocket, 업로드 크기, 시간 제한, 접근 로그 설정을 함께 검토해야 합니다. 자세한 내용은 NGINX 공식 리버스 프록시 가이드를 참고하세요.
공유기 포트포워딩
공유기에서 외부 80·443 포트를 리버스 프록시 서버로 전달하는 방식입니다. SetFN의 8510 포트를 인터넷에 직접 노출하기보다는 Caddy나 NGINX가 443 포트에서 HTTPS 요청을 받은 뒤 내부의 8510으로 전달하도록 구성하세요.
필요한 조건은 다음과 같습니다.
- 인터넷 회선에 외부에서 접근 가능한 공인 IP가 있음
- 공유기 관리자 권한이 있음
- 서버의 내부 IP가 바뀌지 않도록 고정 IP 또는 DHCP 예약 설정
- DNS 레코드가 공인 IP를 가리킴
- 서버 방화벽에서 필요한 포트만 허용
- HTTPS 인증서 발급과 자동 갱신 구성
통신사가 CGNAT를 사용하는 회선에서는 공유기에 표시된 WAN IP와 실제 공인 IP가 달라 포트포워딩이 작동하지 않을 수 있습니다. 이 경우 Cloudflare Tunnel이나 VPN 방식을 사용하세요.
도메인 준비
회사 도메인이 있다면 space.example.com 같은 서브도메인을 사용하는 것이 좋습니다. 도메인이 없다면 도메인 등록 업체에서 구입할 수 있습니다.
Cloudflare Tunnel을 사용하려면 해당 도메인이 Cloudflare 계정의 활성 Zone으로 연결되어 있어야 합니다. 직접 리버스 프록시를 사용한다면 DNS의 A 또는 AAAA 레코드를 서버의 공인 IP로 연결합니다.
접속 확인
설정 후 다음 순서로 확인하세요.
- 서버에서
http://localhost:8510접속 - 같은 네트워크에서
http://<서버 IP>:8510접속 - 도메인으로 HTTPS 접속
- Wi-Fi를 끈 모바일 데이터 환경에서 접속
- 로그인, 파일 업로드, 실시간 알림 또는 채팅 동작 확인
내부 접속부터 실패하면 SetFN 서비스 상태를 먼저 확인하세요. 내부에서는 되지만 도메인 접속만 실패하면 Tunnel, DNS, 리버스 프록시, 방화벽 순서로 확인합니다.
운영 체크리스트
- 관리자와 사용자에게 길고 고유한 비밀번호 사용
- 필요 없는 계정과 공유 링크 비활성화
- Tunnel Connector 또는 리버스 프록시를 시스템 서비스로 등록
- Connector와 운영체제, 프록시를 정기적으로 업데이트
- HTTPS 인증서 만료와 DNS 상태 확인
- 외부 접속 및 관리자 활동 로그 점검
- 장애 시 내부 주소로 접속할 수 있도록 운영 절차 준비