Gately v0.6.5 출시
2026년 11월 6일
백엔드 시간 제한, 방문자 시간 제한과 자동 재시도
- 리버스 프록시 사이트의 「트래픽」 탭에 「백엔드 시간 제한」이 추가되었습니다. 연결, TLS 핸드셰이크, 응답 헤더 대기 세 항목이며 기본값은 각각 10초, 10초, 제한 없음입니다. 응답 헤더 대기 시간 초과는 504를 반환하며, 이후의 다운로드와 WebSocket, SSE 같은 장기 연결에는 영향을 주지 않습니다.
- 백엔드에 연결할 수 없으면(연결 거부, 도달 불가, 연결 시간 초과) 같은 요청을 즉시 다음 백엔드로 보내며, 요청 하나당 최대 3개의 백엔드를 시도합니다. 이 시점에는 요청이 아직 전송되지 않았으므로 POST 등의 요청도 안전합니다.
- 「방문자 시간 제한」은 요청 본문을 읽고 응답을 쓰는 동안의 유휴 시간을 제한하며(기본 60초), 극도로 느리게 보내거나 읽는 방문자의 연결을 끊습니다. 요청 본문 읽기 시간 초과는 408을 반환합니다.
- nginx 설정을 가져올 때
proxy_connect_timeout과proxy_read_timeout은 사이트의 연결 시간 제한과 응답 헤더 대기 시간 제한으로 변환됩니다.
자세한 내용은 백엔드 시간 제한과 방문자 시간 제한을 참고하세요.
백엔드로 신원 정보 전달
기존의 「사용자 이름 전달」과 「이메일 전달」 설정이 하나의 「신원 정보 전달」 목록으로 합쳐졌습니다. 각 행은 로그인 사용자의 항목 하나(사용자 이름, 이메일, 표시 이름 또는 그룹)를 요청 헤더 하나에 씁니다. Firefly III처럼 이메일을 계정으로 쓰는 앱은 Remote-Email을 바로 읽을 수 있습니다. 방문자가 보낸 같은 이름의 헤더(하이픈 대신 밑줄을 쓴 변형 포함)는 인증 전에 삭제되어 위조할 수 없고, 방문자가 Connection 헤더로 이 헤더들을 제거시킬 수도 없습니다. 기존 설정은 업그레이드 시 자동으로 변환됩니다. 자세한 내용은 신원 정보 전달을 참고하세요.
방화벽 자동 허용
Web 서비스 리스너와 포트 포워딩, 프로토콜 라우팅 규칙에 「방화벽 자동 허용」 스위치가 추가되었습니다. 실제로 수신 대기하는 포트만 로컬 방화벽(nftables, iptables 또는 ip6tables)에서 허용하며, IPv6와 포트 범위를 지원하고 연속된 포트는 규칙 하나로 합칩니다. HTTP/3를 켠 리스너는 같은 번호의 UDP 포트도 허용하고, 루프백 주소만 수신 대기하는 리스너는 허용이 필요 없습니다. 리스너가 중지되거나 삭제되면 규칙이 제거됩니다. 자세한 내용은 방화벽 자동 허용을 참고하세요.
실행 로그
- Web 서비스 접근 로그가 날짜별로 나뉘어 압축 보관되며, 보관 일수와 전체 크기 상한을 설정할 수 있어 지난 접근 기록도 계속 검색할 수 있습니다. 「이전 로그 불러오기」는 보관 파일도 찾습니다.
- 로그 도구 모음에 「내보내기」가 추가되어, 현재 필터 조건에 맞는 모든 로그(로그 파일과 보관 파일의 기록 포함)를 CSV(Excel용 BOM 포함 UTF-8, 수식 삽입 방지 처리) 또는 JSON Lines로 내려받을 수 있습니다. 읽기 전용 계정이 내보낸 내용도 화면과 마찬가지로 주소 안의 비밀번호와 토큰을 가립니다.
- 「설정 → 네트워크 및 실행」에 「로그 디렉터리」가 추가되어 실행 로그를 외장 디스크 등 다른 디렉터리에 둘 수 있습니다.
- 「소스」 필터가 모든 소스를 나열합니다. 이름이 같은 IPv4와 IPv6 리스너의 로그가 더 이상 섞이지 않고, 사이트의 「로그」 창에는 해당 리스너의 방문자만 표시됩니다.
- 기록 대기 중인 로그가 256 KB에 이르면 바로 디스크에 쓰므로, 접속이 많은 사이트에서도 접근 로그가 유실되지 않습니다. 휴대폰에서 로그를 열면 다시 최신 항목에 위치합니다.
자세한 내용은 실행 로그를 참고하세요.
침입 방지: IPv6 엄격 모드
포트 스캔 감지에 「IPv6 엄격 모드」가 추가되었습니다. IPv6 출발지는 열린 포트(수신 대기 중인 포트와 추가로 연 포트)에만 연결할 수 있으며, 다른 포트에 처음 연결하는 즉시 /64 단위로 차단됩니다. IPv4는 계속 임계값으로 감지합니다. 잠시 수신 대기를 멈춘 포트도 30초 동안은 열린 것으로 간주하고, FTP 서비스의 패시브 포트 범위는 자동으로 열린 포트에 포함됩니다. 자세한 내용은 침입 방지를 참고하세요.
관리 프로세스 리소스
개요 페이지에 「관리 프로세스」 카드가 추가되었고, 성능 모니터링 페이지에 Gately가 관리하는 외부 프로그램(frpc / frps, tailscaled, NetBird, cloudflared, File Browser)별 CPU와 메모리가 표시됩니다. 프로세스가 다시 시작되어도 그래프가 이어집니다. 자세한 내용은 성능 모니터링을 참고하세요.
기타 개선과 수정
- 사이트 링크: 리스너가 프로토콜 라우팅이나 포트 포워딩을 거쳐서만 접근 가능한 경우, 사이트 링크는 규칙의 입구 포트를 사용합니다. 예를 들어 4433의 SNI 규칙이 4435 리스너로 전달하면 링크는 4433을 씁니다. 직접 입력한 접근 포트가 여전히 우선합니다.
- 네트워크 토폴로지에 「활성만 보기」가 추가되어, 최근 60초 동안 요청이나 활성 IP가 있는 사이트와 백엔드만 표시합니다. 활성 노드는 더 이상 「그 외 N개」로 접히지 않습니다.
- 네트워크 자가 점검: 로컬 DNS가 가끔 시간 초과되어도 올바르게 해석되는 DDNS 레코드를 미해석으로 보고하지 않으며, 공용 DNS로 다시 확인합니다.
- DDNS: 작업이 중지되거나 다시 시작되어 취소된 동기화는 더 이상 오류를 기록하거나 레코드를 실패로 표시하지 않습니다.
- 스캐너로 인한 TLS 핸드셰이크 실패는 디버그 수준으로 기록되어 실행 로그를 뒤덮지 않습니다. 대상에
{host}등의 변수를 쓰는 리디렉션 사이트는 Host 헤더가 없는 요청에 400을 반환합니다. - 침입 방지의 차단 목록은 간결한 형식으로 기록되며, 만료되기만 한 차단은 다시 쓰기를 일으키지 않습니다.
- 가져온 리버스 프록시 설정은 리스너의 HTTP/3 설정을 유지합니다.
- 로그인 페이지에 기본 계정과 비밀번호 재설정 안내가 더 이상 표시되지 않습니다.
- Web 터미널: 파일 관리자의 편집기를 X 또는 Esc로 닫은 뒤에도 다시 열 수 있습니다. 휴대폰의 선택 모드에서 선택 영역을 화면 위쪽 너머까지 끌어올린 뒤에도 복사가 됩니다.
- UI: 태블릿과 소형 노트북에서 사이트 행의 도메인이 좁은 열로 밀려나지 않습니다. IPv6 리스너 주소는
http://[::1]:18951형식으로 표시됩니다.