단일 패킷 인증
PortGuard

PortGuard는 포트 스캐닝 위협을 포함한 무단 액세스로부터 네트워크를 보호하기 위해 강력한 단일 패킷 인증 기술을 제공합니다.

지금 다운로드, 다중 플랫폼 GUI

CentOS7용 Fwknop 서버

파일 이름 마지막 수정일 MD5
fwknop-server-2.6.11-1.el7.x86_64.rpm 2025-07-29 1a375f89c2aa16935ddce164ad16adad
libfko-3.0.0-1.x86_64.rpm 2025-07-29 7f720f1f444f1634bab7cadbbfec40b2
참고: CentOS 7의 빠른 설치

1. 왜 PortGuard를 개발했나요?

저는 직장 동료들과 가벼운 대화를 나누던 중 단일 패킷 인증(SPA)이라는 개념을 처음 접했습니다. 그 전까지는 포트 노킹이나 SPA에 대해 전혀 몰랐습니다. 마침 저희 회사에 포트 노킹 솔루션이 필요했고, 관련 자료를 조사하고 탐색하던 중 fwknop을 발견했습니다. fwknop의 개념은 정말 인상적이었습니다. 소수의 사용자만 접근해야 하는 서비스에 fwknop은 훌륭한 솔루션이었습니다. 자체 도구 개발도 고려했지만, fwknop이 훨씬 더 발전된 형태였습니다. 하지만 fwknop에는 단점이 있었습니다. 복잡하고 설치 및 사용에 대한 학습 곡선이 가파르며, 전용 클라이언트 애플리케이션이 부족했습니다. 이러한 단점을 해결하기 위해 PortGuard가 개발되었습니다. PortGuard의 목표는 fwknop, 그리고 향후 tnok과 같은 주류 포트 노킹 프로토콜을 지원하는 동시에 크로스 플랫폼 클라이언트를 제공하는 것입니다. fwknop과 tnok의 확장 기능으로 구축된 PortGuard는 SPA 기술을 보다 사용자 친화적이고 접근하기 쉽게 만드는 것을 목표로 합니다.

2. PortGuard 클라이언트 지원 플랫폼

현재 PortGuard는 다음 플랫폼을 지원합니다.

  • iOS
  • Android
  • Windows
  • macOS

3. PortGuard 사용 사례

PortGuard의 핵심 기능은 서비스 포트를 숨겨서(기본적으로 닫힘) 네트워크 보안을 강화하는 것이며, 다음과 같은 시나리오에 적합합니다.

3.1 원격 액세스 서비스(예: SSH) 보호

시나리오:관리자는 SSH 포트를 공용 네트워크에 노출하지 않고도 다양한 위치(예: 집, 커피숍, 모바일 네트워크)에서 SSH 서비스에 안전하게 액세스해야 합니다.

구현: fwknop 또는 tnok를 사용하면 클라이언트가 SPA 데이터 패킷이나 TOTP 노크 패킷을 보내고, 서버는 확인 후 SSH 포트(기본값 22)를 임시로 엽니다.

장점: Nmap 및 기타 포트 스캐닝 도구가 서비스를 발견하지 못하도록 하여 제로데이 취약점이 악용될 위험을 줄입니다.

예: 원격 팀 구성원은 fwknop 클라이언트를 사용하여 Windows 또는 Android 기기에서 SPA 데이터 패킷을 보내고 회사 내부 서버에 안전하게 액세스합니다.

3.2 클라우드 환경에서의 서비스 보호

시나리오:AWS, Azure 및 기타 클라우드 플랫폼의 내부 서비스(예: 데이터베이스, 웹 서버)는 공용 네트워크를 통해 액세스해야 하지만 포트가 직접 노출되는 것을 방지해야 합니다.

구현: PortGuard는 NAT와 통합되어 외부 클라이언트가 SPA를 통해 RFC 1918 주소 공간의 내부 서비스에 액세스할 수 있도록 합니다.

장점: 하이브리드 클라우드 및 멀티 테넌트 환경에 적합한 복잡한 네트워크 토폴로지를 지원합니다.

예: AWS EC2 인스턴스에서 fwknopd를 실행하고 권한이 있는 사용자가 액세스할 수 있도록 MySQL 포트(3306)를 동적으로 엽니다.

3.3 포트 스캐닝 및 무차별 대입 공격 방어

시나리오:서버는 포트 스캐닝(예: Nmap)이나 무차별 대입 공격에 직면해 있으며, 공격 표면을 줄이기 위해 서비스 포트를 숨겨야 합니다.

구현: PortGuard는 유효한 SPA 데이터 패킷을 수신한 후에만 포트를 여는 기본 방화벽 정책을 유지합니다.

장점: 패치되지 않은 취약점이 있더라도 공격자는 서비스 포트를 발견할 수 없습니다.

예: SSH의 무차별 대입 공격을 방지하고, fwknop은 HMAC을 검증한 후에만 포트를 엽니다.

3.4 다중 서비스 보호 지원

시나리오:기업에서는 여러 서비스(예: SSH, RDP, VPN, 데이터베이스)를 보호해야 하지만 모든 포트가 항상 열려 있기를 바라지는 않습니다.

구현: fwknop은 access.conf에서 여러 서비스와 포트를 정의하는 것을 지원하며, 클라이언트는 대상 프로토콜과 포트를 지정할 수 있습니다.

장점: 유연한 규칙 구성, 사용자 정의 시간 초과 및 포트 개방 전략 지원.

예: SSH(tcp/22)와 OpenVPN(udp/1194)을 모두 보호하도록 fwknop을 구성합니다.

3.5 임베디드 또는 IoT 장치 보안

시나리오:IoT 기기나 임베디드 시스템은 원격 관리가 필요하지만, 기기 리소스는 제한적이고 공격에 취약합니다.

구현: 리소스가 제한된 장치에서 가벼운 fwknopd 또는 tnokd를 실행하고 SPA 또는 TOTP를 통해 액세스를 제어합니다.

장점: 리소스 소모가 적어 소형 기기에 적합합니다.

예: Raspberry Pi에서 실행되는 웹 서비스를 보호합니다.

3.6 타사 장치 통합

시나리오:기본 fwknop을 지원하지 않는 장치(예: Cisco 라우터)와 통합하고 방화벽 규칙을 제어해야 합니다.

구현: fwknop의 명령 열기/닫기 주기(명령 열기/닫기 주기) 기능을 사용하면 사용자 정의 스크립트를 실행하여 타사 장치의 ACL을 동적으로 수정할 수 있습니다.

장점: 확장 가능하며 비표준 방화벽 장치를 지원합니다.

예: Linux 서버에서 fwknopd를 실행하고 SSH를 통해 Cisco 라우터의 ACL을 업데이트합니다.

3.7 기술 세부 사항

  • fwknop은 타임아웃(CMD_CYCLE_TIMER)을 정의하여 포트가 열리면 자동으로 닫히도록 하여 노출 시간을 줄여줍니다.
  • VPN(예: WireGuard, OpenVPN)과 결합하여 안전한 개인 네트워크를 구축할 수 있습니다.
  • HTTP 환경에서 SPA에 적합한 X-Forwarded-For 헤더 구문 분석을 지원합니다.

4. PortGuard는 얼마나 안전합니까?

PortGuard의 보안은 주로 fwknop의 단일 패킷 인증(SPA) 메커니즘에 기반하며, 암호화, 인증 및 방화벽 통합과 결합하여 다계층 보안을 제공합니다. 다음은 보안에 대한 자세한 분석입니다.

4.1 암호화 및 인증

암호화: fwknop은 Rijndael(AES) 대칭 암호화 또는 GnuPG 비대칭 암호화를 지원하며, SPA 데이터 패킷 콘텐츠를 직접 구문 분석할 수 없습니다.

입증: 데이터 패킷 인증에는 HMAC-SHA256(기본값) 이상 버전을 사용하여 데이터 무결성과 소스 신뢰를 보장합니다.

보안: 중간자 공격(MITM) 및 재생 공격을 방지하고, 암호화 후 HMAC을 적용하여 CBC 모드 패딩 오라클 공격(예: 보데네 공격)을 방어합니다.

제한 사항: 대칭 암호화에는 클라이언트와 서버 공유 키가 필요하며 부적절한 키 관리로 인해 누출이 발생할 수 있습니다. GnuPG 모드에는 키 링을 유지해야 합니다.

4.2 포트 스캐닝 방지

기구: PortGuard는 기본 방화벽 정책을 사용하고 권한이 없는 경우 서비스 포트가 보이지 않으므로 Nmap 및 기타 도구에서는 이를 감지할 수 없습니다.

보안: 공격 표면이 크게 줄어들어, 제로데이 취약점이 있더라도 공격자가 서비스 포트를 찾을 수 없습니다.

제한 사항: 노크 데이터 패킷이 스니핑되면(기존 포트 노킹은 이에 더 취약함), 공격자가 재생을 시도할 수 있습니다(SPA는 HMAC을 통해 이 문제를 해결했습니다).

4.3 폭력에 저항하다

기구: SPA 데이터 패킷은 올바르게 암호화되어야 하고 HMAC 인증이 되어야 하며, 무차별 대입 공격은 거의 불가능합니다(HMAC에 실패한 데이터 패킷은 바로 삭제됩니다).

보안: 기존 포트 노킹과 비교했을 때, SPA의 단일 패킷 설계와 암호화 메커니즘은 무차별 대입 공격에 대한 저항력을 크게 향상시킵니다.

제한 사항: 구성 오류(예: 약한 키 또는 비활성화된 HMAC)로 인해 보안이 약해질 수 있습니다.

✨ 특징

강력한 보안 기능
🔓 강력한 보안 기능
최첨단 암호화 기술
PortGuard은 고급 암호화 기술을 사용하여 데이터 보안을 보장하고, 무단 접근으로부터 강력한 보호 기능을 제공하며 데이터의 기밀성을 보장합니다.
시스템 안정성
📈 시스템 안정성
비교할 수 없는 안정성
엄격한 테스트를 거친 PortGuard은 다양한 환경에서 안정적으로 실행되어 중요한 애플리케이션에 높은 가용성과 안정성을 보장합니다.
크로스 플랫폼 호환성
💻 크로스 플랫폼 호환성
원활한 다중 플랫폼 지원
Windows, macOS, Linux 등을 지원하므로 다양한 IT 환경에 원활하게 통합되고 광범위한 사용자를 만족시킬 수 있습니다.
오픈 소스 유연성
🔓 오픈 소스 유연성
오픈 소스로 보안 강화
PortGuard는 오픈 소스이며 개인 배포를 지원하므로 사용자는 보안 인프라를 완벽하게 제어할 수 있고 자신의 필요에 맞게 사용자 정의할 수 있습니다.

사람들 ❤️ Fwknop

User Comment

John

포트 노킹 보안
PortGuard의 포트 노킹 메커니즘 덕분에 네트워크 보안이 크게 향상되었습니다. 인증된 클라이언트에 대해서만 동적으로 포트를 개방함으로써 포트 스캐닝 및 무차별 대입 공격의 위험을 효과적으로 제거했습니다. 그 결과, 공격자가 포트 스캐너와 같은 도구를 사용하여 서비스를 탐지하는 것이 거의 불가능해졌습니다.
User Comment

Michael

Nmap 보호
PortGuard 설정은 놀라울 정도로 간단했습니다. 설명서가 명확하고 구성 파일도 잘 정리되어 있었습니다. 기존 인프라에 큰 문제 없이 통합할 수 있었습니다. 방화벽(iptables)과도 원활하게 작동하며, 사용법을 익히는 데도 시간이 거의 걸리지 않았습니다. 이제 Nmap 스캔이나 기타 포트 스캐닝 도구로부터 안전하게 보호받고 있습니다.
User Comment

James

포트 스캔 방지
PortGuard의 가장 큰 기능 중 하나는 포트 스캐닝을 방지하는 것입니다. 모든 포트를 닫고 유효한 SPA 패킷을 수신한 후에만 일시적으로 열어줌으로써 포트 스캐닝 및 무차별 대입 공격의 위험을 제거합니다. 포트 스캐너 및 기타 포트 스캐닝 도구로부터 SSH 및 기타 중요 서비스를 보호하는 데 있어 획기적인 솔루션입니다.
User Comment

David

보안 원격 액세스
PortGuard 덕분에 서버에 대한 원격 접근 보안이 훨씬 강화되었습니다. SSH를 인터넷에 노출하는 대신, 이제 SPA를 사용하여 필요한 경우에만 접근 권한을 부여합니다. Nmap 스캔이나 기타 포트 스캐닝 위협에 대한 걱정 없이 여러 위치에서 안전하게 연결해야 하는 원격 팀원에게 완벽한 솔루션입니다.
User Comment

Olivia

사용자 정의 가능한 보안
PortGuard의 유연성은 놀랍습니다. SSH뿐만 아니라 여러 서비스와 연동되도록 설정할 수 있습니다. 포트 개방에 대한 사용자 지정 규칙과 시간 제한을 정의할 수 있어 특정 사용 사례에 맞게 조정할 수 있습니다. Nmap과 같은 포트 스캐닝 위협에 미리 대비할 수 있도록 도와주는 고도로 맞춤화된 솔루션입니다.
User Comment

William

신뢰할 수 있는 보안
PortGuard은 네트워크 보안에 있어 획기적인 변화를 가져왔습니다. WireGuard VPN과 OpenVPN을 통합하여 데이터를 안전하게 보호하고 외부의 시선으로부터 안전하게 보호하는 프라이빗 네트워크를 구축할 수 있었습니다. 이러한 안정적인 설정 덕분에 데이터가 무단 접근으로부터 안전하게 보호된다는 확신을 가질 수 있어 안심할 수 있습니다.

Copyright 2025 PortGuard. All rights reserved.