Skip to content
이 페이지는 AI로 번역되어 부정확한 내용이 있을 수 있습니다. GitHub에서 개선에 참여해 주세요.

프로젝트 소개 ​

Gately는 가정 네트워크, NAS, 클라우드 호스트 등 다양한 서버에서 사용할 수 있는 오픈소스 네트워크 게이트웨이 도구 모음으로, 소스 코드를 직접 감사할 수 있습니다. DDNS, STUN 통과, 포트 포워딩, 리버스 프록시, 인증서, WAF 등 자주 쓰는 기능을 약 32 MB 단일 파일에 담았으며 Lucky 설정을 원클릭으로 가져올 수 있습니다.

Gately를 만든 이유 ​

네트워크 경계에서 동작하며 DNS 키와 인증서 개인 키를 다루는 소프트웨어에는 투명성이 필요합니다. Gately는 완전한 오픈소스이므로 사용자와 커뮤니티가 소스 코드와 설정을 직접 검토하고 무엇을 하는지 확인할 수 있습니다. Gately의 약속은 다음과 같습니다.

  • 소스 코드를 Apache-2.0으로 공개하고 커뮤니티의 검토를 받습니다.
  • 기본적으로 프로젝트 서버에 연결하지 않고 기기 정보를 보고하지 않습니다. 서드파티 로그인은 직접 등록한 OAuth 앱을 사용하며 중계를 거치지 않습니다.
  • 모든 외부 주소(공인 IP 조회, STUN 서버 등)를 확인하고 수정하고 끌 수 있습니다.
  • 설정은 일반 JSON이므로 git에 넣어 감사하고 롤백할 수 있습니다.

설계 원칙 ​

  1. 투명성: 기본적으로 프로젝트 서버에 연결하지 않으며 모든 외부 주소를 확인하고 수정하고 끌 수 있습니다.
  2. 이식성: .lkcf 설정 가져오기를 제공합니다.
  3. 감사 가능한 설정: 설정은 일반 JSON(파일 권한 0600)이므로 git에 넣어 diff와 롤백에 쓸 수 있습니다.
  4. 단일 파일 배포: 프런트엔드를 내장한 정적 바이너리 하나로 구성되며 Docker, systemd, OpenWrt를 지원합니다.

기술 스택 ​

계층선택
백엔드Go, 정적 컴파일, arm / arm64 / mips / riscv 라우터와 NAS용으로 크로스 컴파일 가능
HTTP표준 라이브러리 net/http
저장소모듈마다 일반 JSON 파일 하나, 원자적 쓰기
인증bcrypt 비밀번호 + HMAC 서명 세션 토큰, 로그인 실패 제한, TOTP 2단계 인증
프런트엔드Vue 3 + TypeScript + Vite + Element Plus, go:embed로 바이너리에 포함

기능 한눈에 보기 ​

동적 DNS, STUN 통과, 포트 포워딩, SSL 인증서, 웹 서비스(리버스 프록시, 접근 제어, 헬스 체크, 캐시와 속도 제한, 접속 통계), WAF 방화벽, Tailscale, frp, Cloudflare 터널, Docker 관리, 웹 터미널, 네트워크 진단, Wake-on-LAN, WebDAV, FTP, 스토리지 마운트, 예약 작업, 알림 센터, 설정 백업, 그리고 2단계 인증, 보안 진입 경로, API 토큰, 명령줄과 MCP를 제공합니다. 자세한 내용은 모듈 개요를 참고하세요.

다음 단계 ​

Apache-2.0 라이선스로 공개되어 있습니다.