시스템 설정 및 유지 관리
시스템 설정에는 실행 모드, 터널 리소스, 인증서 도구, 게이트웨이, 세션, 기능 스위치 및 유지 관리 작업이 모여 있습니다. 탭은 실행 모드와 배포 환경의 기능에 따라 동적으로 표시됩니다. 특정 탭을 찾을 수 없다면 페이지를 반복해서 새로 고치지 말고 현재 플랫폼과 실행 모드를 먼저 확인합니다.
배포 환경별 기능 차이
| 기능 | fnOS 네이티브 FPK | Docker | OpenWrt | Linux 서비스 | macOS | Synology DSM 7 SPK | Windows x86_64 |
|---|---|---|---|---|---|---|---|
| 직접 연결 모드 및 호스트 방화벽 | 지원, 프로세스에 호스트 권한 필요 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 |
| Smart Connect | 지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 |
| 웹 터미널 | 원격 SSH + 선택적 로컬 PTY | 원격 SSH만 | 원격 SSH + 선택적 로컬 PTY | 원격 SSH + 선택적 로컬 PTY | 원격 SSH + 선택적 로컬 PTY | 원격 SSH만 | 원격 SSH만 |
| 내장 FRP / Cloudflared | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 | 미지원 |
| SSH 보안 | 지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 |
| 자동 HTTPS | 지원 | 미지원 | 미지원 | 지원, 사용 가능한 80번 포트 필요 | 지원, 방화벽과 인바운드 경로를 수동으로 연결해야 함 | 미지원 | 지원, Windows 인바운드 경로도 별도로 연결해야 함 |
| ACME DNS-01 | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 | 지원, 내장 클라이언트 사용 |
| 시스템 시간 동기화 | 지원 | 미지원 | 지원 | 미지원 | 미지원 | 미지원 | 미지원 |
| fnOS SSL 인증서 라이브러리 동기화 | 지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 | 미지원 |
| 업데이트 설치 | 웹 페이지에서 업데이트 | 새 이미지 가져오기 | 펌웨어에 맞는 IPK / APK 설치 | 설치 방식에 따라 수동 업데이트 | sudo knock update | DSM 패키지 센터에서 SPK 설치 | Windows 관리 프로그램 |
| 독립 관리 패널 비밀번호 | fnOS/CGI 진입점 사용 | 지원 | 지원 | 지원 | 지원, 로컬 127.0.0.1 관리 진입점 전용 | DSM 데스크톱 CGI 진입점 사용 | 지원, 로컬 127.0.0.1 관리 진입점 전용 |
위 표는 서버에서 전달한 런타임 기능을 기준으로 합니다. 일부 기능 메뉴는 사용할 수 없음으로 표시되면서 이유를 안내하고, 다른 메뉴는 바로 숨겨집니다. OpenWrt는 더 이상 직접 연결, 호스트 방화벽 관리 또는 Smart Connect를 제공하지 않습니다. Host 라우팅, 프로토콜 매핑, 내장 터널은 계속 사용할 수 있지만 포트 허용은 OpenWrt 방화벽에서 관리합니다. Windows는 직접 연결, 내장 FRP / Cloudflared, Smart Connect 또는 SSH 보안을 제공하지 않습니다. 게이트웨이 7999는 기본적으로 모든 인터페이스에서 수신 대기하지만 외부 접근 가능 여부는 여전히 방화벽 규칙, NAT 및 네트워크 정책에 달려 있습니다. Synology DSM 7 SPK도 직접 연결, 호스트 방화벽, Smart Connect 또는 SSH 보안을 제공하지 않습니다. 정식 표준 FPK, OpenWrt, Linux 서비스 및 macOS에서는 웹 터미널의 로컬 PTY를 활성화할 수 있지만 기본값은 비활성화입니다. Docker, Synology, Windows, Lite 및 개발 환경은 원격 SSH만 제공합니다.
fnOS 기기의 앱 이름이 Knock Lite라면 표의 완전한 FPK가 아니라 네이티브 비 root 경량 패키지입니다. Host 프록시, 인증, DDNS, 인증서, WAF, 내장 터널, 모니터링 및 원격 SSH 웹 터미널을 지원하지만 로컬 PTY, 직접 연결과 호스트 방화벽, 네트워크 최적화, fnOS 인증서 저장소 동기화 또는 앱 내 업데이트는 제공하지 않습니다. 완전한 호스트 통합이 필요하면 Lite 백업을 내보내고 Lite를 중지한 뒤 공식 웹사이트의 표준 FPK를 설치하고 가져옵니다. 두 인스턴스가 같은 포트를 동시에 사용하지 않도록 합니다.
설정 메뉴 안내
| 탭 또는 영역 | 표시 조건 및 관리 항목 | 자세한 설명 |
|---|---|---|
모드 | 항상 표시되며 직접 연결, 리버스 프록시 또는 서브도메인 모드와 라우팅 방식 선택 | 실행 모드 참고 자료 |
FRP, Cloudflared | 리버스 프록시 모드이고 플랫폼에 해당 기능이 있을 때 표시되며 터널 실행 파일 리소스 다운로드 및 설치 | NAT 통과 및 터널 |
ACME | 플랫폼에서 지원하고 Windows가 아닐 때 표시되며 acme.sh 리소스와 기본 CA 관리 | TLS 인증서 |
위치 | IP 식별 데이터베이스와 CIDR 주소 데이터베이스 설정 | IP 위치 |
fnOS | fnOS 공유 우회, 포트별 서비스 아이콘 연결, 지원되는 네트워크 최적화 및 표준 FPK의 FN Connect WAF 연결 관리 | fnOS 공유 우회, WAF |
차단 | 스캐너 방화벽, 집계 시간, 임계값 및 예외 설정 | 스캔 차단 |
기능 | 날짜/시간 표시, 홈 화면 진입점 상태, fnOS 콘솔 애플리케이션 바, 패스키 등록 안내, 자동 HTTPS, SSH 보안, 프로토콜 매핑, Wake-on-LAN, 사이드바 정렬 및 Smart Connect 메뉴 | Wake-on-LAN 및 각 기능 문서 |
게이트웨이 | 인증 캐시, 리버스 프록시 요청 제한, 크롤러 차단, 포털, 접근 범위 및 Host별 전달 옵션 | 아래 내용 |
WAF, 로그 | HTTP 규칙 보호 및 구조화된 요청 로그 | WAF, 요청 로그 |
터미널 | 모든 배포 패키지에 표시되며 원격 SSH 대상과 세션을 관리하고, 지원 플랫폼에서는 로컬 PTY를 활성화 | 웹 터미널 |
세션 | 일반 세션, 로그인 상태 유지, 로그인 후 IP 접근 허용 및 IP 변경 | 세션 및 IP 변경 이력 |
패널 | Docker, OpenWrt, Linux 및 Windows에서 표시되며 독립 관리 패널 비밀번호 변경 또는 초기화 | 아래 내용 |
보안 인증 | 로그인 전에 PoW 또는 Cloudflare Turnstile 사용 | 보안 인증 |
유지보수 | 자동 백업, 수동 내보내기, 가져오기 및 데이터 지우기 | 아래 내용 |
사이드바 메뉴 순서
시스템 설정 → 기능 → 사이드바 메뉴 정렬에서 메뉴 항목을 드래그하여 현재 인스턴스 왼쪽 탐색 메뉴의 표시 순서를 바꿀 수 있습니다. 드래그가 끝나면 자동으로 저장됩니다. 사용자 지정 순서를 모두 취소하려면 기본 순서 복원을 클릭합니다.
정렬 페이지에는 현재 실행 모드와 기능 스위치에서 보이는 항목만 표시됩니다. 일시적으로 숨겨진 항목도 전체 순서에서 상대 위치를 유지하므로 기능을 다시 켜거나 모드를 전환하면 임의 위치에 추가되지 않고 원래 자리로 돌아옵니다. 이 설정은 탐색 순서만 바꾸며 기능을 활성화하거나 비활성화하거나 권한을 변경하지 않습니다.
날짜 및 시간 표시 방식
시스템 설정 → 기능 → 날짜 및 시간 표시 방식은 관리 화면에서 공통 표시 컴포넌트를 사용하는 시간 필드를 제어합니다.
읽기 쉬운 형식이 기본값이며 “몇 분 전”, “어제” 같은 상대 시간을 표시합니다. 마우스를 올리거나 터치 장치에서 누르면 전체 날짜와 시간을 볼 수 있습니다.전체 시간은 현지화된 전체 날짜와 시간을 직접 표시하며, 마우스를 올리거나 누르면 상대 시간을 보충합니다.
선택은 인스턴스 설정에 저장되어 관리 화면 전체에 적용됩니다. 서버 시간대, 시스템 시계, 로그 원본 타임스탬프 또는 프로토콜 매핑 예약 규칙은 변경하지 않습니다. 예약 작업을 조사할 때는 서버 시간과 시간대를 기준으로 합니다.
fnOS 콘솔 애플리케이션 바
표준 fnOS FPK와 Knock Lite는 시스템 설정 → 기능에서 콘솔 상단에 애플리케이션 목록 표시를 켤 수 있습니다. 기본값은 꺼짐입니다. 켜면 관리 콘텐츠 상단에 가로로 스크롤할 수 있는 바로 가기 바가 표시되고 각 게이트웨이 애플리케이션을 새 탭에서 엽니다. Docker, OpenWrt, Linux, Synology 및 Windows에는 이 스위치가 표시되지 않습니다.
Host 라우팅에서는 활성화된 비인증 Host 매핑을 나열하고 포털의 애플리케이션 이름, 아이콘 표시 설정 및 그룹 순서를 따릅니다. 사용할 수 있는 Host 항목이 없으면 경로 모드에서 저장된 경로 매핑으로 진입점을 만듭니다. 링크는 현재 관리 페이지의 프로토콜과 설정된 공용 진입 포트를 기준으로 생성됩니다. 이는 바로 가기일 뿐 DNS, 포트 포워딩 또는 인증서 설정을 대신하지 않습니다.
이 스위치는 매핑을 활성화하거나 공개하거나 변경하지 않으며 로그인 또는 서비스 범위를 우회하지 않습니다. 바가 비어 있으면 현재 모드에 사용할 수 있는 매핑이 있는지 확인합니다. 링크는 열리지만 접근이 거부되면 해당 매핑의 인증과 진입 경로를 점검합니다.
실행 모드 전환 및 Smart Connect 폴백
실행 모드를 바꾸면 후보 설정을 저장한 뒤 Smart Connect, 게이트웨이 라우트 및 플랫폼 런타임 상태를 순서대로 동기화하며 각 동기화 단계가 서로 기다리지 않게 합니다. 전환 중에는 페이지를 닫지 말고 완료 후 결과 메시지에 따라 새 진입 경로를 검증합니다.
Smart Connect를 지원하는 표준 fnOS FPK에서 전환 중 로컬 IP 또는 dnsmasq 동기화가 실패하면 fn-knock는 모드 전환을 완료하되 Smart Connect를 자동으로 끄고 경고를 표시합니다. DNS 분할 동기화 실패가 전체 작업을 막지 않게 하기 위한 동작입니다. 로컬 IP, 루트 도메인 및 dnsmasq 쓰기 상태를 확인한 뒤 시스템 설정 → 기능에서 Smart Connect를 다시 켭니다. 게이트웨이 라우트나 방화벽 적용 자체가 실패하면 이전 설정으로 롤백을 시도합니다. LAN 또는 콘솔 진입점을 유지하고 오류를 확인하며 여러 모드를 연속으로 전환하지 않습니다.
표준 fnOS FPK의 추가 방화벽 포트
호스트 방화벽 기능이 있는 표준 fnOS FPK에서는 시스템 설정 → 모드 → 작업 → 추가 허용 포트에서 fn-knock 자동 관리 범위 밖의 포트를 유지할 수 있습니다. Docker, OpenWrt, Linux, Synology, Windows 및 fn-knock Lite에는 이 작업이 표시되지 않으며 각 호스트, 라우터 또는 클라우드 방화벽에서 포트를 관리해야 합니다.
대화상자는 현재 모드에서 자동으로 허용하는 게이트웨이, 프로토콜 매핑 또는 Smart Connect 포트와 사용자가 추가한 포트를 구분하여 표시합니다. 추가 목록에는 1–65535의 중복되지 않는 정수를 최대 128개 입력할 수 있습니다. 각 포트는 TCP와 UDP를 모두 허용하며 프로토콜별로 나눌 수 없습니다. 방화벽 외부에서 실제 접근해야 하는 서비스만 추가합니다.
저장 동작은 백엔드에 현재 저장된 실행 모드를 기준으로 합니다.
- 직접 연결 또는 서브도메인 모드는
FN-KNOCK-FW를 즉시 다시 구성하고 자동 포트와 추가 포트를 합칩니다. - 리버스 프록시 모드는
FN-KNOCK-FW를 만들지 않고 목록을 보관하며 직접 연결 또는 서브도메인 모드로 전환한 뒤 규칙에 포함합니다. 시스템 방화벽 자동 관리를 끄면 서브도메인 모드로 전환한 뒤작업에서 직접 다시 설정해야 합니다. 직접 연결 모드는 계속 방화벽을 처리합니다.- 페이지에서 아직 저장하지 않은 모드 선택은 이번 작업에 영향을 주지 않으며 대화상자의 ‘현재 저장된 모드’가 실제 기준입니다.
저장하면 fn-knock 관리 체인 전체를 다시 구성합니다. 라우터 포트 포워딩, 클라우드 보안 그룹 또는 업스트림 서비스 자체 인증을 대신하지 않습니다. 추가 포트를 삭제하기 전에 원격 관리 경로가 해당 포트에 의존하지 않는지 확인합니다.
게이트웨이 기본 설정
시스템 설정 → 게이트웨이 상단의 설정은 Go 게이트웨이로 바로 동기화됩니다. Host별 편집기는 Host 라우트를 사용하는 서브도메인 모드에서만 사용할 수 있으며 인증 서비스 Host는 편집 목록에 표시되지 않습니다.
| 설정 | 동작 및 주의 사항 |
|---|---|
인증 성공 캐시 시간 | 같은 클라이언트와 인증 대상의 성공 결과를 캐시하며 0이면 요청마다 실시간 검증 |
인증 실패 캐시 시간 | 인증을 통과하지 못한 결과를 캐시하며 0이면 거부 결과를 재사용하지 않음. 방금 바꾼 권한을 점검할 때는 이전 실패 결과가 아직 만료되지 않았을 수 있음 |
게이트웨이 리버스 프록시 요청 제한 | 클라이언트 IP별 초당 요청 수와 버스트 토큰으로 트래픽을 제어하며 한도를 넘으면 설정된 시간 동안 연결을 바로 종료 |
크롤러 요청 차단 | 게이트웨이가 식별한 크롤러 접근을 차단하며 WAF를 대신하거나 게이트웨이를 우회하는 요청을 막지는 않음 |
일치하지 않는 라우트 | 오류 페이지 표시는 안내 페이지를 반환하고 연결 재설정은 어떤 라우트에도 일치하지 않는 요청을 바로 종료 |
업스트림 오류 시 오류 정보 표시 | 기본값은 간단히 표시. 자세히 표시 또는 오류 페이지 없이 요청을 중단하는 연결 차단 선택 가능 |
포털 설정 | 로그인 후 서비스 전환 진입점을 제어 |
접근 범위 | 지역 또는 CIDR을 기준으로 게이트웨이에 접근할 수 있는 출발지를 제한 |
프록시 헤더 | 게이트웨이가 지정한 대상(타깃)에 X-Forwarded-*를 보낼지 제어 |
Host 응답 | 게이트웨이가 지정한 대상(타깃)에 방문자 요청의 Host를 유지할지 제어 |
경로 응답 | 서비스 Host에 경로 단위 리버스 프록시 또는 고정 응답 추가 |
리버스 프록시 요청 제한의 초기 설정은 클라이언트 IP마다 초당 100개 요청, 200개 버스트 토큰, 한도 초과 시 30초 차단입니다. 요청 제한으로 바로 중단된 요청은 요청 로그에 기록되지 않습니다. 클라이언트 연결이 끊겼지만 로그에 해당 레코드가 없다면 이 계층도 확인합니다. 페이지의 Host별 스위치는 최종적으로 대상(타깃)을 기준으로 컴파일됩니다. 여러 Host가 완전히 같은 대상(타깃)을 가리키면 프록시 헤더와 Host 유지 동작을 공유합니다.
일치하지 않는 라우트와 업스트림 오류
일치하지 않는 라우트는 기본적으로 오류 페이지 표시를 사용하여 안내, 선택 또는 오류 페이지를 반환합니다. 연결 재설정을 선택하면 HTTP/1.x 연결을 재설정하고 HTTP/2에서는 현재 스트림을 중단합니다. 기본 도메인 폴백도 일시적으로 비활성화되지만 저장된 설정은 유지되며 오류 페이지로 되돌리면 다시 사용됩니다. 요청 로그는 이러한 요청을 일치하지 않는 도메인 차단으로 표시합니다.
업스트림 오류 시 오류 정보 표시의 기본값은 간단히 표시입니다. 방문자에게 업스트림을 사용할 수 없다는 사실만 알리고 내부 IP, 포트 또는 연결 실패 원인은 노출하지 않습니다. 자세히 표시는 전체 연결 오류를 반환하므로 통제된 환경에서 짧게 문제를 해결할 때만 사용합니다. 연결 차단은 오류 페이지를 만들지 않고 HTTP/1.x 연결을 재설정하거나 현재 HTTP/2 스트림을 중단합니다.
설정 변경 후 확인 순서
- LAN에서 사용할 수 있는 관리 진입점을 먼저 유지합니다.
- 실행 모드, Host, 인증서 또는 게이트웨이 설정을 바꾼 뒤 페이지에 런타임 동기화 완료가 표시될 때까지 기다립니다.
- 시크릿 창에서 인증 절차를 확인한 뒤 실제 외부 네트워크에서 서비스 Host를 확인합니다.
- 요청 로그에서 클라이언트 IP, 라우트 유형, 인증 결과 및 업스트림 대상(타깃)을 대조합니다.
- 이벤트 센터에서 동기화, 인증서, 터널 또는 알림 오류를 확인합니다.
게이트웨이 요청 제한, WAF 및 스캔 차단은 먼저 관찰하면서 여유 있는 설정으로 시작합니다. 상태 확인, 서드파티 콜백, 서비스 업데이트 또는 클라이언트 장기 연결에 영향을 줄 수 있습니다.
백업 및 복원
유지보수 페이지에서 자동 또는 수동으로 생성한 .knock 파일에는 설정, 인증서 개인 키, TOTP seed 및 여러 종류의 서비스 자격 증명이 포함되므로 평문 키 백업으로 취급합니다. 자동 백업은 기본적으로 꺼져 있으며 활성화하면 설정한 간격과 보존 기간으로 서버 데이터 디렉터리에 저장됩니다. 현재 데이터와 같은 디스크 또는 컨테이너 볼륨에 있다면 다른 기기에 보관하는 백업을 대신할 수 없습니다. 가져오기는 병합 작업이 아닙니다. 현재 fn-knock 데이터를 교체한 뒤 게이트웨이, WAF, SSL 등의 런타임 상태를 동기화하며 동기화 경고가 발생해도 전체 작업을 자동으로 롤백하지 않습니다.
백업 보안, 버전 및 128 MiB 제한, 플랫폼별 메뉴, 전체 복원 검증과 실패 처리는 백업, 복원 및 데이터 정리를 참고합니다. fn-knock 설정 백업은 파일 시스템이나 컨테이너 볼륨 백업과 같지 않으며 외부 DNS, 호스트 방화벽 또는 업스트림 서비스 데이터도 포함하지 않습니다.
모든 데이터 지우기
시스템 설정 → 유지보수 → 정리 → 모든 데이터 지우기는 현재 인스턴스를 완전히 초기화할 때 사용합니다. 확인을 위해 모든 데이터 지우기를 입력합니다. 이 작업은 서버 설정, 계정, 세션, 로그 및 기타 fn-knock 저장 데이터를 삭제하고 현재 브라우저의 로컬 데이터도 지운 뒤 페이지를 다시 불러옵니다.
데이터베이스 구조와 이미 내보낸 백업 파일이 콘텐츠를 자동으로 복원해 주지는 않습니다. 이 작업은 되돌릴 수 없으므로 백업을 사용할 수 있다는 사실을 검증했고 인스턴스를 다시 초기화하려는 의도가 명확할 때만 실행합니다.
관리 패널 비밀번호
Docker, OpenWrt, Linux 및 Windows의 관리 패널 비밀번호는 모두 방문자의 게이트웨이 로그인 자격 증명과 분리되어 있습니다. 패널 비밀번호를 잊었다면 해당 배포 문서의 초기화 명령이나 관리 프로그램을 사용합니다. 초기화는 패널 비밀번호, 패널 세션 및 로그인 백오프만 지우며 서비스 매핑이나 인증서 설정은 삭제하지 않습니다.
