/* UnrealIRCd 6 için yapılandırma dosyası
 *
 * Türkçe Çeviri: Diablo - (Serkan Sepetçi)
 * İletişim: irc.turkirc.net:6667 - diablo@unrealircd.org
 *
 * Bu dosyayı conf/ dizininize kopyalayın ve 'unrealircd.conf' olarak adlandırın.
 *
 * Aceleniz varsa CTRL+F tuşlarına basıp şunu yapabilirsiniz: BUNU DEĞİŞTİRİN
 * Değiştirilmesi gereken maddeler bu iki kelimeyle belirtilir.
 * Ancak aslında dosyayı satır satır incelemenizi ve gereken yerde
 * düzenlemenizi öneririz. Böylece tüm temel öğeleri ve bunların nasıl
 * ayarlandığını görebilirsiniz.
 * 
 * DEVAM ETMEDEN ÖNCE:
 * Önemli: { ve } dışındaki tüm satırlar ; ile biter
 * Bu çok önemlidir. Eğer bir şeyi yanlış yaparsanız,
 * yapılandırma dosyası ayrıştırıcısı hata verecek ve
 * dosya doğru şekilde çalışmayacaktır!
 *
 * Eğer bu UnrealIRCd yapılandırma dosyasıyla ilk deneyiminizse
 * sözdizimi hakkında biraz okumanızı öneririz.
 * bu yalnızca birkaç dakika sürer ve size çok yardımcı olacaktır:
 * https://www.unrealircd.org/docs/Configuration#Configuration_file_syntax
 *
 * UnrealIRCd 6 belgeleri (çok kapsamlı!):
 * https://www.unrealircd.org/docs/UnrealIRCd_6_documentation
 *
 * Sıkça Sorulan Sorular:
 * https://www.unrealircd.org/docs/FAQ
 *
 */

/* Bu bir açıklamadır, burada tüm metin göz ardı edilir (açıklama tipi #1) */
// Bu da bir açıklamadır, bu satır göz ardı edilir (açıklama tipi #2)
# Bu da bir açıklamadır, bu satır yine göz ardı edilir (açıklama tipi #3)

/* UnrealIRCd yoğun modul kullanımını kolaylaştırır. UnrealIRCd'de
 * etkinleştirmek istediğiniz özellikleri tamamen moduller ile aktif edebilirsiniz.
 * Görmek için; https://www.unrealircd.org/docs/Modules
 *
 * Biz 'modules.default.conf' dosyasını okumak için IRCd talimatı altında kullanarak
 * UnrealIRCd ile birlikte gelen 150'den fazla modülleri yükleyecektir.
 * Başka bir deyişle: Bu sadece UnrealIRCd'de mevcut tüm özelliklerini yükleyecektir.
 * İlk kez UnrealIRCd kuruyorsanız size bunu kullanmanızı öneririz.
 * UnrealIRCd'yi ilk kez kuruyorsanız bunu kullanmanızı öneririz.
 * Daha sonra her şey hazır olduğunda ve çalışıyorsa (eğer isterseniz) 
 * listeyi özelleştirmek için geri dönebilirsiniz.
 */
include "modules.default.conf";

/* Şimdi de diğer bazı dosyaları dahil edelim:
 * - help/help.conf /HELPOP sistemi
 * - badwords.conf kanal ve kullanıcı modu için +G
 * - spamfilter.conf için örnek olarak spamfilter kullanımı
 *   (yorumlandı)
 * - operclass.default.conf oper bloklarında kullanabileceğiniz
 *   oper sınıflarını görüntüler.
 */
include "help/help.conf";
include "badwords.conf";
//include "spamfilter.conf";
include "operclass.default.conf";
include "snomasks.default.conf";

/* Varsayılan gizleme modülünü yükleyin (2021'den itibaren): */
loadmodule "cloak_sha256";
/* Veya eski modülü UnrealIRCd 3.2/4/5'ten yükleyin: */
//loadmodule "cloak_md5";

// BUNU DEĞİŞTİRİN ('ad' ve 'bilgi'):
/* me { } bloğu genelde kim olduğumuzu belirtir.
 * Sunucumuz için isim, birkaç satır bazı bilgileri belirler "sid".
 * Sunucu kimliği (sid) iki basamağı veya harf tarafından izlenen bir rakam ile
 * başlamalıdır. Sid IRC ağı için benzersiz olmalıdır (her sunucu için
 * kendi sid olmalıdır). İlk sunucu için 001 kullanılması uygundur.
 */
me {
	name "irc.example.org";
	info "ExampleNET Server";
	sid "001";
}

// BUNU DEĞİŞTİRİN:
/* admin { } bloğu /ADMIN sorgusunda kullanıcılara görüntülenecek metni belirler.
 * Normalde yöneticiye ulaşma konusunda bilgi içerir.
 */
admin {
	"Bob Smith";
	"bob";
	"email@example.org";
}

/* Kullanıcılar ve sunucular için class { } bloğu belirtilir.
 * Class blokları aşağıdaki işlemlerden oluşur:
 * - pingfreq: kullanıcı/sunucu için ping'ler arası zaman belirtir (saniyede)
 * - connfreq: sunucuya bağlanmaya çalıştığınızda tekrar için zaman belirtir (saniyede)
 * - sendq: bir bağlantı için maksimum veri boyutu
 * - recvq: bir bağlantı için maksimum alınan veri boyutu (flood kontrol)
 */

/* Kullanıcılar için varsayılan class ayarları */
class clients
{
	pingfreq 90;
	maxclients 1000;
	sendq 200k;
	recvq 8000;
}

/* IRCOp'lar için varsaylan yüksek limitli özel class ayarları */
class opers
{
	pingfreq 90;
	maxclients 50;
	sendq 1M;
	recvq 8000;
}

/* Sunucular için varsayılan class ayarları */
class servers
{
	pingfreq 60;
	connfreq 15; /* Her 15 saniyede bir bağlanmayı dener */
	maxclients 10; /* maksimum kullanıcı */
	sendq 20M;
}

/* Allow blockları sunucunuza kimlerin bağlanabileceğini belirtir.
 * Bir sunucu şifresi eklenebilir veya belirlitilen bir IP adresi için
 * giriş izini verilebilir. Ayrıca IP başına ne kadar bağlantıya izin
 * verileceğini belirtir.
 * Görmeniz için: https://www.unrealircd.org/docs/Allow_block
 */

/* IP başına sadece 3 bağlantı izini verir */
allow {
	mask *;
	class clients;
	maxperip 3;
}

/* Örnek olarak özel bir IP bloğu izini:
 * Bu IP bir şifre ile bağlantı yapması olduğunu gerektirir.
 * Şifre doğru ise o zaman bu IP 20 bağlantıya izin verecektir.
 */
// allow {
// 	mask 192.0.2.1;
// 	class clients;
// 	password "somesecretpasswd";
// 	maxperip 20;
// }

/* Oper bloğu, IRC Operatorleri tanımlar.
 * IRC Operatörler, diğer kullanıcılara göre "ekstra haklara" sahip kullanıcılardır.
 * örneğin diğer kullanıcılara /KILL uygulayabilmesi, sunucu birleştirmesinin başlatılması,
 * /JOIN yaptığı odalardan banlansa bile tekrar giriş yapabilmesi, vs.
 *
 * IRCOp olmak ve nasıl Admin olunacağı hakkında daha fazla bilgi için
 * https://www.unrealircd.org/docs/IRCOp_guide
 *
 * Oper {} bloğunun kendisi ile ilgili ayrıntıları görmeniz için
 * https://www.unrealircd.org/docs/Oper_block
 */

/* İşte 'bobsmith' için örnek bir oper bloğu
 * BUNU DEĞİŞTİRMELİSİN!! (oper adı ve şifre)
 */
oper bobsmith {
	class opers;
	mask *@*;

	/* Teknik olarak oper şifrelerini conf'a düz metin olarak koyabilirsiniz, ancak bu
	 * KESİNLİKLE ÖNERİLEN bir durum değildir. Bunun yerine bir şifre karması oluşturmalısınız:
	 * *NIX'te şunu çalıştırın: ./unrealircd mkpasswd
	 * Windows'ta şunu çalıştırın: "C:\Program Files\UnrealIRCd 6\bin\unrealircdctl" mkpasswd
	 * .. ve ardından sonucu aşağıya yapıştırın:
	 */
	 
	password "$argon2id..etc..";

	/* 'Certfp' gibi daha iyi kimlik doğrulama türleri ve Windows'ta
	 * karmaların nasıl oluşturulacağı da dahil olmak üzere daha fazla bilgi için
	 * https://www.unrealircd.org/docs/Authentication_types adresine bakın.
	 */

	/* Oper izinleri bir "operclass 'bloğunda tanımlanır.
	 * Görmeniz için: https://www.unrealircd.org/docs/Operclass_block
	 * UnrealIRCd varsayılan bloklar makalesi için,
	 * tam listesine bakınız. Buradan 'netadmin' seçiyoruz.
	 */
	 
	operclass netadmin;
	swhois "is a Network Administrator";
	vhost netadmin.example.org;
}

/* Listen blokları sunucu portu için gereken bağlantı noktalarını tanımlar.
 * Diğer bir deyişle: Bu portlar kullanıcılar ve serverlar için
 * sunucuya bağlantı kurmasını sağlar.
 * 
 * Kullanımı:
 * listen {
 *   ip <ip numarası>;
 *   port <port numarası>;
 *   options {
 *     <seçenekler....>;
 *   }
 * }
 */

/* Standard IRC port 6667
 * Insecure plaintext (NOT for production servers)
 * This listen block is here only for quick testing.
 * Delete or comment out this listen block on production servers
 * and use TLS on port 6697 instead.
 */
listen {
	ip *;
	port 6667;
}

/* Standard IRC SSL/TLS port 6697 */
listen {
	ip *;
	port 6697;
	options { tls; }
}

/* Özel SSL/TLS sadece sunucuları bağlamak için port */
listen {
	ip *;
	port 6900;
	options { tls; serversonly; }
}

/* DiKKAT: Eğer bir çok IP barındıran bir IRCd Shell kullanıyorsanız
 *       logunuzda olası 'Address already in use' hatasını alacaksınız
 *       ve ircd başlamayacaktır.
 *       Bunun anlamı '*' yerine belirli bir IP yazmanız GEREKİR anlamına gelir:
 *       listen 1.2.3.4:6667;
 *       Açıkçası, IP yi önceden koyduğunuz IP ile değiştirin.
 */

/*
 * Link blockları bir ağ oluşturmak için birden fazla sunucu bağlamaya izin verir.
 * Görmek için: https://www.unrealircd.org/docs/Tutorial:_Linking_servers
 */
link hub.example.org
{
	incoming {
		mask *@something;
	}

	outgoing {
		bind-ip *; /* veya açıkça bir IP */
		hostname hub.example.org;
		port 6900;
		options { tls; }
	}

	/* Kimlik doğrulaması için diğer sunucunun SPKI parmak izini kullanıyoruz.
	 * Kullanmamız için diğer tarafda './unrealircd spkifp' uygulayıp çalıştırıyoruz.
	 * *NIX'te şunu çalıştırın: ./unrealircd spkifp
	 * Windows'ta şunu çalıştırın: "C:\Program Files\UnrealIRCd 6\bin\unrealircdctl" spkifp
	 */
	password "AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUV=" { spkifp; }

	class servers;
}

/* Servis'ler için bağlantı bloğu genellikle çok daha basittir.
 * Servis'lerin ne olduğu hakkında daha fazla bilgi için,
 * https://www.unrealircd.org/docs/Services
 */
link services.example.org
{
	incoming {
		mask 127.0.0.1;
	}

	password "changemeplease";

	class servers;
}

/* U-lines satırları sunuculara daha güç/komut kazandırır.
 * Eğer hizmetlerini kullanmak istiyorsanız onları buraya eklemeniz gerekir.
 * ÖNEMLİ: ASLA buraya (normal) UnrealIRCd sunucunun adını yazmayınız!!!
 */
ulines {
	services.example.org;
}

/* Bu blok /DIE ve /RESTART için şifre tanımlamanızı sağlar. Sadece IRCOp'lar içindir.
 * Bu genelde kazara sunucuyu yeniden başlatma ve kapanmasına karşı biraz
 * koruma sağlamak içindir.
 */
drpass {
	restart "restart";
	die "die";
}

/* Bu log bloğu hangi dosyaya ve nelerin olması gerektiğini tanımlar.
 * Görmeniz için: https://www.unrealircd.org/docs/Log_block
 */

/* Bu iyi bir varsayılandır, hata ayıklama ve
 * join/part/kick dışındaki her şeyi günlüğe kaydeder.
 */
log {
	source {
		all;
		!debug;
		!join.LOCAL_CLIENT_JOIN;
		!join.REMOTE_CLIENT_JOIN;
		!part.LOCAL_CLIENT_PART;
		!part.REMOTE_CLIENT_PART;
		!kick.LOCAL_CLIENT_KICK;
		!kick.REMOTE_CLIENT_KICK;
	}
	destination {
		file "ircd.log" { maxsize 100M; }
	}
}

/* Düzenli günlük kaydına ek olarak bir JSON günlük dosyası ekleyin.
 * Bu her olayla ilgili birçok bilgi içerir dolayısıyla denetim amaçları
 * için mükemmeldir ve makine tarafından okunabilir. Ancak insanlar için daha az okunabilir.
 */
log {
	source {
		all;
		!debug;
		!join.LOCAL_CLIENT_JOIN;
		!join.REMOTE_CLIENT_JOIN;
		!part.LOCAL_CLIENT_PART;
		!part.REMOTE_CLIENT_PART;
		!kick.LOCAL_CLIENT_KICK;
		!kick.REMOTE_CLIENT_KICK;
	}
	destination {
		file "ircd.json.log" { maxsize 250M; type json; }
	}
}

/* Bazı kullanıcılara veya botlara bir mesaj göndermek için "aliases"
 * takma ad oluşturmanızı sağlar. Genellikle servisler için kullanılır.
 *
 * Biz önceden ayarlanmış bir takma adı dosyaları dizini oluşturduk, alias/ dizini kontrol ediniz.
 * Örnek olarak, burada anope servisler ve kullanılan tüm diğer servisler adları bulunmaktadır.
 */
include "aliases/anope.conf";

/* Ban nick bloğu bir nickin sunucuda kullanımını yasaklamanıza olanak sağlar */
// ban nick {
// 	mask "*C*h*a*n*S*e*r*v*";
// 	reason "Servisler için ayrılmış";
// }

/* Ban ip.
 * Normalde bunun için /KLINE, /GLINE ve /ZLINE kullanıldığını unutmayınız.
 */
// ban ip {
// 	mask 195.86.232.81;
// 	reason "Senden nefret ediyorum";
// }

/* Ban server - bir sunucunun bağlanmasını devredışı kılar */
// ban server {
// 	mask eris.berkeley.edu;
// 	reason "Defol buradan.";
// }

/* Ban user - normalde /KLINE veya /GLINE kullanıldığını unutmayınız */
// ban user {
// 	mask *tirc@*.saturn.bbn.com;
// 	reason "Aptal";
// }

/* Ban realname bloğu bir kullanıcıyı, GECOS kısmı esas alınarak 
 * banlamanıza olanak sağlar.
 */
// ban realname {
// 	mask "Swat Team";
// 	reason "mIRKFORCE";
// }

// ban realname {
// 	mask "sub7server";
// 	reason "sub7";
// }

/* Ban ve TKL istisnaları. Kullanıcıları / makineleri gözetmeksizin
 * KLINE, GLINE, gibi banlardan muaf tutmanıza olanak sağlar.
 * Eğer statik IP (ve bu IP üzerinde güvenilmeyen kişiler) ile bir IRCOp
 * iseniz o zaman kendinizi burada eklemenizi öneririz. Yanlışlıkla kendinize
 * bir *LINE ban koyarsanız bile yinede muaf tutulacaksınız.
 */

/* except ban bloğu, sizi 'tüm' GLINE, GZLINE, QLINE, SHUN gibi banlardan koruyacaktır */
// except ban {
// 	mask *@192.0.2.1;
// 	type all;
// }

/* This allows IRCCloud connections in without maxperip restrictions
 * and also exempt them from connect-flood throttling.
 */
except ban {
	mask *.irccloud.com;
	type { maxperip; connect-flood; }
}

/* Deny dcc bloğu, sunucu üzerinden DCC yoluyla dosya gönderilmesine izin vermeyecektir */
// deny dcc {
// 	filename "*sub7*";
// 	reason "Possible Sub7 Virus";
// }

/* Deny channel bloğu, kullanıcıların belirtilen kanallara girmesini engeller */
// deny channel {
// 	channel "*warez*";
// 	reason "Warez is illegal";
// 	class "clients";
// }

/* VHosts (Virtual Hosts) bloğu, kullanıcının yeni bir host alabilmesine olanak sağlar.
 * Görmeniz için; https://www.unrealircd.org/docs/Vhost_block
 */

/* Kullanabileceğiniz örnek vhost. IRC tipi: /VHOST test test
 * DiKKAT: Güvenlik açısından aşağıdaki vhost::mask yönergesinde
 *       maske 'unrealircd.com' olarak belirlenmiştir.
 */
// vhost {
// 	vhost i.hate.microsefrs.com;
// 	mask *@unrealircd.com;
// 	login "test";
// 	password "test";
// }

/* Blacklist blokları, bir kullanıcı bağlandığında IP adresinin drone saldırılarına
 * neden olduğunu, bilinen bir saldırıya uğramış bir makine olup olmadığını görmek
 * için harici bir DNS Kara Liste hizmetinden sorgulayacaktır.
 * Belgeleme: https://www.unrealircd.org/docs/Blacklist_block
 * veya aşağıdaki bloklar satırına bakınız.
 */

/* DroneBL, muhtemelen IRC Sunucuları tarafından kullanılan en popüler kara liste.
 * Belgeler ve cevap (reply) tiplerin anlamlarını görmek için https://dronebl.org/
 * adresine bakınız. Bu zamanda aşağıdaki cevap (reply) tiplerini kullanıyoruz:
 * 3: IRC Drone, 5: Bottler, 6: Unknown spambot or drone,
 * 7: DDoS Drone, 8: SOCKS Proxy, 9: HTTP Proxy, 10: ProxyChain,
 * 11: Web Page Proxy, 12: Open DNS Resolver, 13: Brute force attackers,
 * 14: Open Wingate Proxy, 15: Compromised router / gateway,
 * 16: Autorooting worms.
 */
blacklist dronebl {
        dns {
                name dnsbl.dronebl.org;
                type record;
                reply { 3; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; }
        }
        action gline;
        ban-time 24h;
        reason "Proxy/Drone belirlendi. Ayrıntılar için https://dronebl.org/lookup?ip=$ip adresine bakınız.";
}

/* EFnetRBL, belgeler ve cevap (reply) tiplerini görmek için https://rbl.efnetrbl.org/
 * adresine bakınız.
 * Yazma sırasında: 1 is open proxy, 4 is TOR, 5 is drones/flooding.
 *
 * NOT: Sunucunuzda TOR proxy'lerine izin vermek istiyorsanız,
 *       cevap (reply) tiplerinden '4;' öğesini kaldırmanız gerekiyor.
 */
blacklist efnetrbl {
        dns {
                name rbl.efnetrbl.org;
                type record;
                reply { 1; 4; 5; }
        }
        action gline;
        ban-time 24h;
        reason "Proxy/Drone/TOR tespit edildi.  Ayrıntılar için https://rbl.efnetrbl.org/?i=$ip adresine bakınız.";
}

/* Diğer yapılandırma dosyalarını dahil edebilirsiniz */
/* include "klines.conf"; */

/* Ağ yapılandırması */
set {
	// BU 4 ÖĞENİN TÜMÜNÜ DEĞİŞTİRİN:
	network-name 		"ExampleNET";
	default-server 		"irc.example.org";
	services-server 	"services.example.org";
	stats-server 		"stats.example.org";
	/* Normal varsayılanlar */
	help-channel 		"#Help";
	cloak-prefix		"Clk";
	prefix-quit 		"Quit";

	/* Gizleme anahtarları ağ üzerindeki bütün sunucularda aynı olmalı.
	 * Bu anahtarlar maskeli hostlar yaratmak ve bunları saklamak için kullanılır.
	 * Anahtarlar 80 karakterlik 3 rastgele diziden oluşmalı ve küçük harf (a-z),
	 * büyük harf (A-Z) ve rakamlardan (0-9) meydana gelmelidirler.. [ilk örneğe bakınız].
	 * IPUCU: './unrealircd gencloak' Unrealircd sizin için rastgele 3 adet dizin oluşturur.
	 *        Bunu NIX üzerinde çalıştırabilirsiniz.
	 *        On Windows, use "C:\Program Files\UnrealIRCd 6\bin\unrealircdctl" gencloak
	 */
	cloak-keys {
		"Oozahho1raezoh0iMee4ohvegaifahv5xaepeitaich9tahdiquaid0geecipahdauVaij3zieph4ahi";
		"ve diğeri";
		"ve diğeri";
	}
}

/* Sunucunun kendine özgü yapılandırması */

set {
	// SON OLARAK, BU SONRAKİ ÖĞEYİ DEĞİŞTİRMENİZ GEREKİR:
	kline-address 'set.this.to.email.address'; /* bir kullanıcı banlandığında e-mail yada URL satırı gösterir */
	modes-on-connect "+ixw"; /* kullanıcılar bağlandığında, bu modları alacaktır */
	modes-on-oper	 "+xws"; /* Birisi IRC Operatör olduğunda bu modları alacaktır */
	modes-on-join "+nt"; /* yeni bir kanal oluşturulduğunda varsayılan kanal modlarını alacaktır */
	oper-auto-join "#opers"; /* IRCoplar bu kanala otomatik olarak giriş yapacaktır */
	options {
		hide-ulines; /* U-lines satırları /MAP ve /LINKS komutunda gözükmez */
		show-connect-info; /* sunucuya bağlanırken "looking up your hostname" mesajı görüntülenecektir */
	}

	maxchannelsperuser 10; /* bir kullanıcının maksimum girebileceği kanal sayısı */

	/* QUIT mesajının görüntülenebilmesi için, bir kullanıcının sunucuya bağlı kalması
	 * gereken süre. Bu durum umarım spamları durdurmak için yardımcı olacaktır.
	 */
	anti-spam-quit-message-time 10s;

	/* Kullanıcı sunucudan ayrılırken çıkış sebebini sabitler. /QUIT sebeb gözardı edilecektir. */
	/* static-quit "Client quit";	*/

	/* static-part /PART komutu ile aynı işi görür */
	/* static-part yes; */

	/* Flood Koruması:
	 * Bunun için birçok ayarları vardır ve çoğu iyi varsayılanlara sahiptir.
	 * Görmeniz için: https://www.unrealircd.org/docs/Set_block#set::anti-flood
	 */
	anti-flood {
	}

	/* Spam filter Ayarları */
	spamfilter {
		ban-time 1d; /* varsayılan spamfilter tarafından ban süresini belirtir */
		ban-reason "Spam/Advertising"; /* varsayılan sebep */
		virus-help-channel "#help"; /* 'viruschan' eylemi için kullanılacak kanal */
		/* except "#help"; Spamfilter'den muaf tutulacak kanal */
	}

	/* Belirli komutları kısıtlayın.
	 * See https://www.unrealircd.org/docs/Set_block#set::restrict-commands
	 */
	restrict-commands {
		list {
			except {
				connect-time 60;
				identified yes;
				reputation-score 24;
			}
		}
		invite {
			except {
				connect-time 120;
				identified yes;
				reputation-score 24;
			}
		}
		/* Yukarıda gösterildiği gibi herhangi bir komutu kısıtlama
		 * yeteneğine sahiptir. Ayrıca kısıtlayabileceğiniz 4
		 * özel tip vardır. Bunlar "private-message",
		 * "private-notice", "channel-message" ve "channel-notice".
		 * Bu örnekte olduğu gibi (kapalı) yorumlanmıştır:
		 */
		//private-message {
		//	except { connect-time 10; }
		//}
		//private-notice {
		//	except { connect-time 10; }
		//}
	}
}

/*
 * Aşağıdaki ayar "bilinmeyen kullanıcılar" için bağlantı kısıtlamasını yapılandıracaktır.
 *
 * UnrealIRCd, IP adreslerinden bağlanan çok sayıda kullanıcı tespit ettiğinde
 * daha önce görülmemişse, yeni IP'lerden gelen bağlantılar ayarlanan
 * hızın üzerinde reddedilir. örneğin 10:60'ta dakikada sadece 10 kullanıcı daha önce
 * görülmemiş şekilde bağlanabilir. Bilinen IP adresleri, ayarlanan orandan bağımsız olarak
 * her zaman girebilir. SASL kullanarak giriş yapan kullanıcılar için de aynıdır.
 *
 * Ayrıntılar için https://www.unrealircd.org/docs/Connthrottle adresine bakınız.
 * Veya aşağıdaki varsayılan yapılandırma ayarlarını okumaya devam edin:
 */

set {
	connthrottle {
		/* ilk önce "bilinen kullanıcılar" dediğimiz şeyi yapılandırmalıyız.
		 * Varsayılan olarak bunlar, IP adresleri üzerinde 24 veya
		 * daha yüksek puana sahip kullanıcılardır. 24 puan IP'nin geçen ay
		 * en az 2 saat (veya kayıtlıysa en az 1 saat) boyunca bu sunucuya
		 * bağlı olduğu anlamına gelir.
		 * Sasl-bypass seçeneği başka bir ayardır. Bu ayar
		 * SASL aracılığıyla hizmetlere kimlik doğrulaması yapan
		 * kullanıcıların da bilinen kullanıcılar olarak kabul edildiği anlamına gelir.
		 * "known-users" grubundaki kullanıcılar (herhangi bir reputation
		 * veya SASL) modülleri tarafından her zaman izin verilir.
		 */
		except {
			reputation-score 24;
			identified yes;
			/* daha fazla seçenek için bkz.
			 * https://www.unrealircd.org/docs/Mask_item
			 */
		}

		/* Yeni kullanıcılar, aşağıdakilere ait olmayan tüm
		 * bilinen-kullanıcılar grubundandır. Bunlar "yeni" ve
		 * bu tür yeni kullanıcıların çok sayıda bağlanması durumunda
		 * bağlantı hızı sınırlamasına tabidirler.
		 * Varsayılan bu oran dakikada 20 yeni yerel kullanıcı
		 * ve dakikada 30 yeni global kullanıcı	olarak belirlenmiştir.
		 */
		new-users {
			local-throttle 20:60;
			global-throttle 30:60;
		}

		/* Bu modülün ne zaman aktif OLMAYACAĞINI yapılandırır.
		 * Varsayılan ayarlar, şu durumlarda modülü devre dışı bırakacaktır:
		 * - Reputation modülü 1 haftadan kısa bir süredir çalışıyor ise.
		 *   1 haftadan az çalışıyorsa, kimin "bilinen kullanıcı"
		 *   olduğunu düşünmek için yeterli veri yoktur.
		 * - Sunucu yeni açıldı (ilk 3 dakika).
		 */
		disabled-when {
			reputation-gathering 1w;
			start-delay 3m;
		}
	}
}

/* KANAL GEÇMİŞİ:
 * UnrealIRCd, kullanıcılar tarafından bir kanala katılmadan önce
 * kanal geçmişini okumak için, kullanılabilen +H kanal moduna sahip olmalıdır.
 * Bu özellik hakkında bilgi için bkz. https://www.unrealircd.org/docs/Channel_history
 *
 * Geçmiş limitleri set::history aracılığıyla yapılandırılabilir. Varsayılan ayarlar
 * muhtemelen sizin için zaten iyidir, ancak düşük bellekli bir sistemdeyseniz veya
 * binlerce kanalınız varsa, iki kez kontrol etmek isteyebilirsiniz. Seçenekler için
 * https://www.unrealircd.org/docs/Set_block#set::history adresine bakın.
 *
 * Buna ek olarak "kalıcı kanal geçmişine" sahip olabilirsiniz. Bu kanal
 * geçmişinin diskte şifreli olarak depolandığı ve böylece IRC sunucusu yeniden
 * başlatılması halinde korunması anlamına gelir.
 * bkz. https://www.unrealircd.org/docs/Set_block#Persistent_channel_history
 * Kalıcı geçmiş özelliği varsayılan olarak ETKİNLEŞTİRİLMEMİŞTİR bunun için
 * bir secret { } bloğu yapılandırmanız gerekir. Aşağıdaki yapılandırma dosyasında
 * saklanan parolalar doğrudan bunlara basit bir örnektir.
 * Daha iyi güvenlik elde etmek için https://www.unrealircd.org/docs/Secret_block
 * adresini okuyun böylece şifreleri doğrudan yapılandırmada saklamazsınız.
 */
//secret historydb { password "somepassword"; }
//set { history { channel { persist yes; db-secret "historydb"; } } }

/* Son olarak, bir MOTD'ye (Günün Mesajı) sahip olmak isteyebilirsiniz, bunu
 * conf/ dizininizde bir 'ircd.motd' metin dosyası oluşturarak yapabilirsiniz.
 * Bu dosya bağlantıda kullanıcılarınıza gösterilecektir.
 * Daha fazla bilgi için bkz. https://www.unrealircd.org/docs/MOTD_and_Rules
 */




/*
 * Sorun mu yaşıyorsunuz veya daha fazla yardıma mı ihtiyacınız var?
 * 1) https://www.unrealircd.org/docs/
 * 2) https://www.unrealircd.org/docs/FAQ <- sorularınızın %80 ini kapsamakta!
 * 3) Eğer probleminiz hala devam ediyorsa:
 *    - Forums: https://forums.unrealircd.org/
 *    - IRC: irc.unrealircd.org (SSL on port 6697) / #unreal-support
 *    İlk önce Dökümantasyon ve FAQ kısmını okumanızı gerektirdiğini unutmayın!
 */
