집/연구실 리눅스 서버를 외부에 상시 노출하지 않고, 필요할 때만 Cloudflare 터널로 열어 브라우저에서 쓰고 자동으로 닫는 단일 프로세스 도구입니다. 포트포워딩·고정IP·VPN 없이 동작합니다.
VPN 켜고 포트 여는 게 매번 번거로워서, "안 쓰면 알아서 닫히는 게이트"가 필요해 직접 만들었습니다.
주요 기능
- 브라우저 웹 터미널(xterm.js 로컬 벤더링, 다중 탭, 모바일 수정키 지원)
- Cloudflare Quick Tunnel 포트별 개통/종료 — cloudflared 자동 다운로드(SHA256 검증)
- 유휴 자동 종료: 브라우저 사용은 HTTP/입력 활동으로, Jupyter·Nginx 같은 외부 서비스 터널은 cloudflared 메트릭 폴링으로 실 트래픽을 감지해 닫음
- TOTP 2FA(구글 OTP 호환). 브라우저용과 에이전트 API용 OTP 시크릿을 분리 보관
- Shell Runner: 쉘 스크립트·Python을 매크로로 등록해 웹 UI·Telegram에서 원클릭 비동기 실행. uv run 래핑, 실시간 로그, 타임아웃 자동 종료
- Telegram/Slack 봇으로 원격 제어(/open·/close·/exec·/run·/jobs·/log)와 완료 자동 알림
- CLI 에이전트(cerberus_ctl)로 스크립트·AI 에이전트에서 터미널/터널 제어
- 파일 브라우저(경로 탈출 차단), 시스템 메트릭, 키보드 매크로, 세션 로그, 한/영 i18n
보안
- 서버는 127.0.0.1만 바인딩, 외부 접근은 Cloudflare 암호화 터널 전용
- 에이전트 API/WS는 토큰+OTP 2FA 필수(토큰만으로는 거부)
- 서버가 유휴로 자동 종료될 때 자동 종료 대상 터널도 함께 차단해 무감시 노출 방지
기술 스택: Python 3.10+, Tornado, terminado(PTY), pyotp, uv(Shell Runner 래퍼), cloudflared. xterm.js는 로컬 벤더링(CDN 의존 없음), cloudflared는 런타임 다운로드.
환경: Linux(x86-64) 전용, MIT 라이선스.

6 days ago
12

![[월드컵] 미 복수 비자 발급받은 이란 토라비…'가시밭길' 대표팀 숨통](https://img5.yna.co.kr/photo/reuters/2026/06/16/PRU20260616240001009_P4.jpg)


![[G-브리핑] 컴투스, 임직원 참여형 ESG 플로깅 활동](https://pimg.mk.co.kr/news/cms/202606/11/news-p.v1.20260611.0f1bb9233318459cb7ad7f04a40a2d5c_R.jpg)


English (US) ·