Shell Script İle Port Scanner Yapımı

Merhabalar, Gelişme ve geliştirme amacıyla Shell Script Üzerinden basit bir port scanner yapacağız.

.SH Dosyamızı Oluşturalım. touch port_scanner.sh

Oluşturduğumuz .SH dosyasını Düzenleyelim. nano port_scanner.sh nano Editör Açıldığında şu kodları yazalım.

read -p "Hedef IP adresini girin: " ip_address

Kullanıcıdan hedef IP adresini girmesini isteyen bir girdi okuma komutudur. Kullanıcının girdisi, ip_address değişkenine atanır.

read -p "Tarama başlangıç portunu girin: " start_port

Kullanıcıdan taramanın başlangıç portunu girmesini isteyen bir girdi okuma komutudur. Kullanıcının girdisi, start_port değişkenine atanır.

read -p "Tarama bitiş portunu girin: " end_port

Kullanıcıdan taramanın bitiş portunu girmesini isteyen bir girdi okuma komutudur. Kullanıcının girdisi, end_port değişkenine atanır.

echo "Port tarama başlatılıyor..."
echo "Hedef IP: $ip_address"
echo "Başlangıç portu: $start_port"
echo "Bitiş portu: $end_port"
echo

Ekrana bilgilendirme mesajları yazdıran komutlardır. Kullanıcının girdiği IP adresi, başlangıç portu ve bitiş portunu görüntüler.

for ((port=start_port; port<=end_port; port++))
do
    timeout 1 bash -c "echo >/dev/tcp/$ip_address/$port" 2>/dev/null &&
    echo "Port $port açık" ||
    echo "Port $port kapalı"
done

Bu döngü, belirtilen başlangıç ve bitiş portları arasında bir dizi port üzerinde iterasyon yapar. Her bir iterasyonda, timeout komutu kullanılarak belirli bir süre içinde /dev/tcp üzerinden hedef IP adresine ve porta bağlantı denemesi yapılır. Bağlantı başarılıysa, yani port açıksa “Port X açık” mesajı yazdırılır. Aksi halde, yani port kapalıysa “Port X kapalı” mesajı yazdırılır.

Kodları yazdıktan sonra kaydetmek için CTRL+X Yazıp Kaydediyoruz.

Çalıştırmadan önce İzni veriyoruz. sudo chmod +x port_scanner.sh

Çalıştırmak İçin . ./port_scanner.sh Script Çalışacaktır. Elinize Sağlık …

Not: IP yerine HostName de Kullanılabilir.

Saygılar…

1 Beğeni

Bu konu son yanıttan 30 gün sonra otomatik olarak kapatıldı. Yeni yanıt girilmesine izin verilmiyor.