Yukarıda belirtildiği gibi, sürüm numarasını değiştirmek
- Yapması zor
- Belirsizlik yoluyla güvenlik
- Esnek değil
Benim önerdiğim Port Knocking uygulaması. Sunucunuzda çalışan her şeyi gizlemek oldukça basit bir tekniktir.
İşte iyi bir uygulama:
http://www.zeroflux.org/projects/knock
SSH'yi sadece 'gizli vuruşu' bilen insanlara açmak için sunucularıma (diğer numaralar) şu şekilde uyguladım:
[openSSH]
sequence = 300,4000,32
seq_timeout = 5
command = /opencloseport.sh %IP% 2305
tcpflags = syn
Bu, 3 SYN paketinin doğru sırada alınması gereken 5 saniyelik bir pencere verecektir. Birbirinden uzak ve sıralı olmayan bağlantı noktalarını seçin. Bu şekilde, bir portscanner bağlantı noktasını yanlışlıkla açamaz. Bu portların iptables tarafından açılmasına gerek yoktur.
Aradığım senaryo bu. SYN paketlerini gönderen IP için 5 saniye boyunca belirli bir bağlantı noktasını açar.
#!/bin/bash
/sbin/iptables -I INPUT -s $1 -p tcp --dport $2 -j ACCEPT
sleep 5
/sbin/iptables -D INPUT -s $1 -p tcp --dport $2 -j ACCEPT
Sunucularımın SSH'sine bağlanmak için betiği kullanmak için SYN paketlerini göndermek gerçek bir acı olabilir:
#!/bin/bash
knock $1 $2
knock $1 $3
knock $1 $4
ssh $5@$1 -p $6
(Burada neler olduğu çok açık ...)
Bağlantı kurulduktan sonra, bağlantı noktası kapatılabilir. İpucu: Anahtar kimlik doğrulamasını kullanın. Aksi takdirde şifrenizi yazmak için çok hızlı olmanız gerekir.