enxdesigN adlı üyeden alıntı: mesajı görüntüle
Tahsin ALTAY'ın yaptığı bash scriptten sonra biz sadece kac yazıyoruz sunucudaki IP'leri görebilmek için.

Hatta onu biraz daha özelleştirdi. kackisi yazıyoruz, sunucuda bulunan farklı IP verilmiş sitelerdeki kişileri farklı farklı listeliyor. Hatta ve hatta kac 78 (78=IP numarasının sonu) yazdığımızda sadece o IP'deki kişileri listeliyor.

Hatta daha ileri götürmüş işi. IP banlamak için ban ıp adresi yazıyoruz. Banlanıyor.

Hatta yedekalmak için yedekal yazıyoruz. Ram kullanımları için ramdetay yazıyoruz.

Yani biz sunucularımızla Türkçe iletişim kuruyoruz

Enes sırrımızı açığa vermiş bari kodları da verelim herkesin işine yarasın

Osman, uygulama güzel de sanırım yaptığın uygulamanın istediği bazı şeyler var ve onlarda başka sunucuda olmayınca çalışmıyor. Önemli olan en az ihtiyaçla tespit yapman bu doğrultuda geliştirirsen programı daha iyi olur.

https://www.r10.net/kabuk-programlama...ri-istegi.html adresindeki programın bende %70'ini bitirdim son bir kaç bölümü kaldı ama yoğunluktan bitiremedim. Bitince o da eminim bir çok kişinin işine yarayacaktır.

Benim tavsiyem 2-3 ufak bash ile bu sorunu çözebilirler. Yapmaları gerekeni ben yazayım.


ramdetay
aktif etmek için, nano /usr/bin/ramdetay
sonra alttaki kodları yazın. Ctrl + X ile kaydedin sonra chmod 750 /usr/bin/ramdetay

Alıntı
#/usr/bin/!
free -m | awk 'NR==2{print "Toplam Bellek: ", $2 " Mb"}'
free -m | awk 'NR==2{print "Kullanılan Bellek: ", $2 - ($4+ $7) " Mb"}'
free -m | awk 'NR==2{print "Boş Bellek: ", $4 + $7 " Mb"}'
Sunucuya yapılan bağlantıları görmek için;

nano /usr/bin/kac


Alıntı
#/usr/bin/!
clear
echo " --------------------------------- "
echo " NETBiLSiS SUNUCU BAĞLANTI DETAYLARI "
echo " --------------------------------- "
echo " Taranan İp" 77.92.xx.xx
echo " --------------------------------- "
SORGU1=0
if [ $SORGU1 -eq `netstat -nat |grep 77.92.xx.xx:80 |wc -l` ]; then
echo " Bağlantı yok"
else
netstat -an | grep " 77.92.xx.xx:80 "| awk '{print $5}'|cut -d":" -f1 | sort |uniq -c | sort -nr | head -10
fi
SORGU2=0
if [ $SORGU2 -eq `netstat -nat |grep 77.92.xx.xx:80 |wc -l` ]; then
echo " Bağlantı yok"
else
netstat -an | grep " 77.92.xx.xx:80 "| awk '{print $5}'|cut -d":" -f1 | sort |uniq -c | sort -nr | head -10
fi
dip not: xx.xx bilerek yazmadım. siz ipleri kendi ipleriniz olara yazın. ip eklemek istedikçe
Alıntı
SORGU2=0
if [ $SORGU2 -eq `netstat -nat |grep 77.92.xx.xx:80 |wc -l` ]; then
echo " Bağlantı yok"
else
netstat -an | grep " 77.92.xx.xx:80 "| awk '{print $5}'|cut -d":" -f1 | sort |uniq -c | sort -nr | head -10
fi
buradaki kodları sorgu3-4-5 diye ekleyip devam edin...


otomatik banlamaya ben kesinlikle karşıyım. Normal kullanıcıları banlayıp duruyor sistem. Sunucu yöneticisi sunucunun başında durur ve takip eder. Buradan yola çıkarsak load lar yükselmeye başladığını gördüğünüzde müdahale edip ip'yi banlayın. Otomatik olanı da mevcut bu kodun fakat önermediğim için yazmadım.

Cpu yükünü takip etmek için;

Alıntı
#/usr/bin/!
ps aux | awk '{arr[$1]+=$3} END {for (i in arr) {print i,arr[i]}}' | sort -k2nr
Ram yükünü takip etmek için;

Alıntı
#/usr/bin/!
ps aux | awk '{arr[$1]+=$4} END {for (i in arr) {print i,arr[i]}}' | sort -k2nr
bash scriptlerini kullanabilirsiniz.

Herkese cümletten kolay gelsin. Biraz rahatsızım daha yazacaktım ama idare edin halsizim biraz. Daha sonra detaylı birşeyler yaparız yine.

Kastıran perl'lere gerek yok bu tip ufak şeyler için. Perl'i hazırlayan kişi boşa yorulmuş olur ayrısa sunucuda oradan buradan veri çekeceğim diye yorulmuş olur. Bash varken bu tip ufak şeyler için perl'e gerek yok. Kullanıcı yüzü hazırlayacağınız bir panel düşünüyorsanız perl olabilir ama bu kadarcık şeylere gerek yok.

**Not: apache suexec olarak derli olmalı bu işlemler için. Başka birşeye gerek yok