Авторизация на единичен пакет
PortGuard
PortGuard предлага стабилна технология за оторизация на единичен пакет, за да предпази вашата мрежа от неоторизиран достъп, включително заплахи за сканиране на портове.
Изтеглете сега, многоплатформен GUI
Мултиплатформен GUI
Изтегляне за Windows
fwknopc_2_6_11_x64-setup.exe
Изтегляне за Macos
fwknopc_2_6_11_x64.pkg
Изтегляне за Android
fwknopc_2_6_11_x64.apk
Fwknop сървър за CentOS7
Име на файл | Последна промяна | 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
|
1. Защо разработих PortGuard?
За първи път научих за концепцията за единично пакетно оторизиране (SPA) по време на непринуден разговор с колеги на работа. Преди това нямах познания за port knocking или SPA. Случи се така, че нашата компания се нуждаеше от решение за port knocking и след като проучих и разгледах съответните материали, открих fwknop. Концепцията за fwknop беше наистина впечатляваща - за услуги, които трябва да бъдат достъпни само за избрани, fwknop е отлично решение. Обмисляхме разработването на собствен инструмент, но fwknop беше далеч по-зрял. Fwknop обаче има своите недостатъци: той е сложен, със стръмна крива на обучение за инсталиране и използване и му липсва специално клиентско приложение. Това доведе до създаването на PortGuard. Целта на PortGuard е да поддържа масови протоколи за port knocking като 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 knock пакети, а сървърът проверява и временно отваря SSH порта (по подразбиране 22) след проверка.
Предимства: Предотвратете откриването на услуги от Nmap и други инструменти за сканиране на портове, намалявайки риска от експлоатиране на zero-day уязвимости.
Пример: Членовете на отдалечения екип използват клиента fwknop, за да изпращат SPA пакети данни на устройства с Windows или Android, както и да имат сигурен достъп до вътрешните сървъри на компанията.
3.2 Защита на услугите в облачни среди
Сценарий:Вътрешните услуги (напр. бази данни, уеб сървъри) в AWS, Azure и други облачни платформи трябва да бъдат достъпни през публичната мрежа, но портовете трябва да се избягват директното им излагане.
Внедряване: PortGuard се интегрира с NAT, за да позволи на външни клиенти да имат достъп до вътрешни услуги в адресното пространство RFC 1918 чрез SPA.
Предимства: Поддържа сложни мрежови топологии, подходящи за хибридни облачни и многонаемателни среди.
Пример: Изпълнете fwknopd на AWS EC2 инстанции, динамично отворете MySQL порта (3306) за достъп на оторизирани потребители.
3.3 Защита срещу сканиране на портове и груба сила
Сценарий:Сървърите са изправени пред сканиране на портове (напр. Nmap) или атаки с груба сила и трябва да скрият сервизните портове, за да намалят повърхността за атака.
Внедряване: PortGuard поддържа политиката по подразбиране за отваряне на защитната стена, като отваря портове само след получаване на валидни SPA пакети с данни.
Предимства: Дори и да има непоправени уязвимости, нападателите не могат да открият сервизни портове.
Пример: Предотвратява грубата сила на SSH, fwknop отваря портове само след проверка на HMAC.
3.4 Поддръжка на защита от множество услуги
Сценарий:Предприятията трябва да защитят множество услуги (напр. SSH, RDP, VPN, база данни), но не искат всички портове да са отворени през цялото време.
Внедряване: fwknop поддържа дефинирането на множество услуги и портове в access.conf, а клиентът може да посочи целевия протокол и порт.
Предимства: Гъвкава конфигурация на правила, поддръжка на персонализирано време за изчакване и стратегии за отваряне на портове.
Пример: Конфигурирайте fwknop, за да защитите както SSH (tcp/22), така и OpenVPN (udp/1194).
3.5 Сигурност на вградени или IoT устройства
Сценарий:IoT устройствата или вградените системи се нуждаят от дистанционно управление, но ресурсите на устройството са ограничени и уязвими за атаки.
Внедряване: Стартирайте леки fwknopd или tnokd на устройства с ограничени ресурси, контролирайте достъпа чрез SPA или TOTP.
Предимства: Ниска консумация на ресурси, подходяща за малки устройства.
Пример: Защитете уеб услугата, работеща на Raspberry Pi.
3.6 Интеграция на устройства от трети страни
Сценарий:Необходимост от интеграция с устройства, които не поддържат вграден fwknop (напр. рутери на Cisco), контрол на правилата на защитната стена.
Внедряване: Функцията за цикъл на отваряне/затваряне на командата (command open/close cycle) на fwknop позволява изпълнението на персонализирани скриптове за динамично променяне на ACL на устройства от трети страни.
Предимства: Разширяем, поддържа нестандартни устройства за защитна стена.
Пример: Стартирайте fwknopd на Linux сървъри, актуализирайте ACL на Cisco рутери чрез SSH.
3.7 Технически подробности
- fwknop поддържа дефиниране на време за изчакване (CMD_CYCLE_TIMER), отварянето на порта се затваря автоматично, намалявайки времето на експозиция.
- Може да се комбинира с VPN (напр. WireGuard, OpenVPN) за изграждане на сигурна частна мрежа.
- Поддържа X-Forwarded-For парсиране на заглавки, подходящо за SPA в HTTP среда.
4. Колко сигурен е PortGuard?
Сигурността на PortGuard зависи предимно от механизма за оторизация на единични пакети (SPA) на fwknop, комбиниран с криптиране, удостоверяване и интеграция със защитна стена, осигурявайки многопластова защита. Следва подробен анализ на сигурността:
4.1 Криптиране и удостоверяване
Криптиране: fwknop поддържа симетрично криптиране Rijndael (AES) или асиметрично криптиране GnuPG и съдържанието на пакета данни SPA не може да бъде директно анализирано.
Удостоверяване: Използвайте HMAC-SHA256 (по подразбиране) или по-нови версии за удостоверяване на пакети данни, като по този начин гарантирате целостта на данните и доверието в източника.
Сигурност: Предотвратяване на атаки от типа „човек по средата“ (MITM) и повторно възпроизвеждане, HMAC се прилага след криптиране, като се устоява на атаки на оракул с допълване в режим CBC (напр. атаки на Водене).
Ограничения: Симетричното криптиране изисква споделени ключове от клиента и сървъра, неправилното управление на ключовете може да доведе до изтичане на информация; режимът GnuPG изисква поддържане на ключове.
4.2 Предотвратяване на сканиране на портове
Механизъм: PortGuard използва политиката по подразбиране за премахване на защитната стена, а сервизният порт е невидим, когато не е оторизиран, така че Nmap и други инструменти не могат да го открият.
Сигурност: Значително намалява повърхността за атака, дори ако има уязвимости от типа zero-day, атакуващите не могат да намерят сервизния порт.
Ограничения: Ако пакетът с данни за knock бъде „снифнат“ (традиционното port knocking е по-податливо на това), нападателите могат да опитат да го преиграят (SPA е решил този проблем чрез HMAC).
4.3 Устойчивост на грубата сила
Механизъм: SPA пакетите с данни трябва да бъдат правилно криптирани и HMAC удостоверени, грубата сила е почти невъзможна (пакетите с данни с неуспешен HMAC се отхвърлят директно).
Сигурност: В сравнение с традиционното „порт нокаутиране“, дизайнът с единични пакети и механизмът за криптиране на SPA значително подобряват способността за противодействие на груба сила.
Ограничения: Грешки в конфигурацията (напр. слаби ключове или деактивиран HMAC) могат да намалят сигурността.
✨ Характеристики




Хора ❤️ Fwknop

John

Michael

James

David

Olivia

William