|
| Alıntı: |
alias ban {
if ($1 == ekle) {
; IP veya IP aralığı ekleme
var %ip, %sebep
%ip = $2
%sebep = $3+
echo -a %ip,%sebep >> banlar.txt
echo -a IP banlandı.
} elsif ($1 == kaldır) {
; IP banını kaldırma
var %ip = $2
; Geçici dosya oluşturma ve istenmeyen satırları atlama
copy banlar.txt temp.txt /y
del banlar.txt
for /f "tokens=1-2 delims=," %%a in ('type temp.txt') do (
if (%%a != %ip) echo %%a %%b >> banlar.txt
)
del temp.txt
echo -a IP banı kaldırıldı.
} elsif ($1 == listele) {
; Ban listesini gösterme
echo -a --- Ban Listesi ---
for /f "tokens=1-2 delims=," %a in ('type banlar.txt') do (
echo -a %a (%b)
)
} elsif ($1 == güvenlik) {
; Güvenlik kodu sorma
var %nick = $nick
msg $nick Güvenlik kodunu giriniz:
hash %nick
} elsif ($1 == kontrol) {
; Güvenlik kodu kontrolü
var %nick = $2
; Banlı olup olmadığını kontrol etme
for /f "tokens=1-2 delims=," %a in ('type banlar.txt') do (
if ($remoteip =~ %a) {
; Banlı ise güvenlik kodu iste
msg $nick Güvenlik kodu giriniz:
hash $nick
return
}
)
; Banlı değilse güvenlik kodu kontrolü
if ($gettok($1,_,hash_%nick) == "doğru_kod") {
; Doğru kod girildiyse kanala al
mode $chan +v $nick
echo -a $nick kanalına alındı.
} else {
echo -a Yanlış güvenlik kodu.
}
}
}
|
Mirc için gelişmiş bir IP ban sistemi oluşturmak istediğinizi anlıyorum. Bu kod, IP banlama, kaldırma, listeleme, güvenlik kodu sorma ve kanala giriş izni verme gibi birçok özelliği bir araya getiriyor.
Kodun Özellikleri:
* IP Banlama: Belirtilen IP adreslerini veya aralıklarını banlar.
* IP Banını Kaldırma: Belirtilen IP adreslerinin banını kaldırır.
* Ban Listesi: Tüm banlanmış IP adreslerini listeler.
* Güvenlik Kodu: Banlanan kullanıcıdan bir güvenlik kodu isteyerek doğrulaması sağlar.
* Kanal Girişi: Doğru güvenlik kodunu girdikten sonra kullanıcıya kanala giriş izni verir.
Kodun Çalışma Mantığı:
* Ban Ekleme: Belirtilen IP adresini ve sebebini "banlar.txt" dosyasına ekler.
* Ban Kaldırma: Belirtilen IP adresini "banlar.txt" dosyasından siler.
* Ban Listesi: "banlar.txt" dosyasındaki tüm kayıtları listeler.
* Güvenlik Kodu: hash komutu ile bir hash değeri oluşturur ve kullanıcıdan bu değeri girmesini ister.
* Kanal Girişi: Kullanıcının girdiği güvenlik kodu, daha önce oluşturulan hash değeri ile karşılaştırılır. Eğer eşleşirse kullanıcı kanala alınır.
Ek Özellikler ve Geliştirme Önerileri:
* IP Aralığı Desteği: Düzenli ifadeler kullanarak IP aralıklarını banlayabilirsiniz.
* Otomatik Banlama: Belirli kelimeleri içeren mesajlar atan kullanıcıları otomatik olarak banlayabilirsiniz.