fwknop sunucusu kurma
fwknop Tek Paket Yetkilendirmesi, şifrelenmiş ve kimliği doğrulanmış bir UDP paketi gelene kadar SSH'yi kapalı tutar. Bu adımlar, bunu bir Debian veya Ubuntu sunucusunda kurar; önce bir bilgisayardan test edin, ardından aynı anahtarları Secret Knock'a ekleyin.
1. Yükleyin ve anahtarlar oluşturun
Sunucuyu ve istemciyi yükleyin, ardından bir anahtar çifti oluşturun. Çıktıyı saklayın: aynı iki anahtar access.conf dosyasına ve Secret Knock'a girilir.
sudo apt install fwknop-server fwknop-client
fwknop --key-gen # prints KEY_BASE64 and HMAC_KEY_BASE64 2. SPA paketleri için SSH'ye izin verin
access.conf, geçerli bir paketin neyi ve ne kadar süreyle açabileceğini belirtir.
SOURCE ANY
OPEN_PORTS tcp/22
KEY_BASE64 <output of fwknop --key-gen>
HMAC_KEY_BASE64 <output of fwknop --key-gen>
FW_ACCESS_TIMEOUT 30 3. fwknopd'ye nerede dinleyeceğini söyleyin
fwknopd, bir arayüzdeki paketleri yakalar; açık bir bağlantı noktasına ihtiyaç duymaz. Sunucunuzun kullandığı arayüzü ayarlayın.
# /etc/fwknop/fwknopd.conf
PCAP_INTF eth0;
PCAP_FILTER udp port 62201;
MAX_SPA_PACKET_AGE 120; 4. Varsayılan olarak SSH'yi kapatın
Bunu yaparken bir SSH oturumunu açık tutun ve oturumu kapatmadan önce ikinci bir bağlantıdan test edin. fwknopd, kendi zincirini INPUT'un en üstüne ekler ve her geçerli paket için burada süreli bir ACCEPT ekler.
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROP 5. Test edin, ardından kapıyı ekleyin
fwknop-server'ı yeniden başlatın, başka bir makineden paket gönderin ve bağlanın:
# from another machine: request SSH for the address the server sees (-R)
fwknop -A tcp/22 -R -D server.example.com \
--key-base64-rijndael "<KEY_BASE64>" --key-base64-hmac "<HMAC_KEY_BASE64>"
ssh [email protected] - 1Secret Knock'ta: Yeni kapı › Şablondan başla › fwknop yolunu izleyin, ana bilgisayarı girin ve “fwknop --key-gen anahtarlarını yapıştır” ile fwknop --key-gen çıktısını yapıştırın.
- 2Tıklatın; 22 numaralı bağlantı noktası yanıt verdiğinde kapı Kapı aralık durumunu gösterir.
- 3Göstermezse sunucuda fwknopd -f -v komutunu çalıştırın — sorun giderme kılavuzunda yaygın nedenler listelenir.
GitHub’daki tüm örnekler → Bu sayfadaki tüm yapılandırmalar, kopyalamaya hazır: github.com/mobilcomm/secretknock-examples (kamu malı).
Sorular
fwknopd'nin açık bir bağlantı noktasına ihtiyacı var mı?
Hayır. Paketleri ağ arayüzünden okur; bu nedenle SPA bağlantı noktası güvenlik duvarında kapalı kalabilir; paketin yalnızca sunucuya ulaşması gerekir.
Kurulumunuza yönelik kılavuzlar
- Port knocking açıklaması →
- iPhone, iPad ve Mac'te knockd →
- iPhone, Mac ve Apple Watch için fwknop SPA →
- MikroTik port tıklatma →
- DrayTek Vigor bağlantı noktası tıklatma →
- SSH'yi bağlantı noktası tıklatmasının arkasına gizleyin →
- Apple Watch’ta bağlantı noktası tıklatma →
- Port tıklatması neden kapıyı açmaz →
- knockd.conf örnekleri →
- Port knocking, VPN mi yoksa fail2ban mi? →