English | German | Spanish | Hungarian | French

UnrealIRCd
http://www.unrealircd.com
 Verzió: 3.2.2
 Jelenlegi verzió: 3.2.2
 Utolsó dokumentáció módosítás: 2004-10-11

Fő fejlesztők: Stskeeps / codemastr / Syzop / Luke
Munkatársak: McSkaf / Zogg / NiQuiL / assyrian / chasm / DrBin / llthangel / Griever / nighthawk
Dokumentáció: CKnight^ / Syzop
Magyar fordítás: AngryWolf

Az UnrealIRCd 3.2 egyre nagyobb összetettsége miatt átváltottunk egy könnyebben kezelhető, teljesebb körű dokumentációkészletre. Ezen leírás megtekintéséhez a lent felsorolt kompatibilis böngészők egyikére van szükséged. Friss dokumentációkat találsz a http://www.vulnscan.org/UnrealIrcd/unreal32docs.html címen, és egy GYIK-et a http://www.vulnscan.org/UnrealIrcd/faq/ oldalon.

Kompatibilis böngészők:

TÁRGYMUTATÓ / TARTALOMJEGYZÉK
1. Bevezetés és megjegyzések
---1.1. Megjegyzések a 3.1.x-ről 3.2-re frissítésről és a verziók keveréséről
---1.2. Megjegyzések a 3.2-es verziók közötti frissítésről
2. Telepítés
3. Featúrák
-- 3.1. Álcázás
-- 3.2. Modulok
-- 3.3. Snomaszkok
-- 3.4. Álnevek
-- 3.5. Helpop
-- 3.6. Operátori hozzáférési szintek
-- 3.7. Operátori parancsok
-- 3.8. SSL
-- 3.9. IPv6
-- 3.10. Zip linkek
-- 3.11. Dinamikus DNS-sel/IP-vel linkelések támogatása
-- 3.12. Anti-flood featúrák
-- 3.13. Ban típusok
-- 3.14. A spamszűrő
-- 3.15. CIDR
-- 3.16. További featúrák
4. Az unrealircd.conf fájlod beállítása
---4.1. A konfigurációs formátumról
---4.2. Me Blokk -=- (M:Line)
---4.3. Admin Blokk -=- (A:Line)
---4.4. Class Blokk -=- (Y:Line)
---4.5. Allow Blokk -=- (I:Line)
---4.6. Listen Blokk -=- (P:Line)
---4.7. Oper Blokk -=- (O:Line)
---4.8. DRpass Blokk -=-(X:Line)
---4.9. Include Direktíva
---4.10. Loadmodule Direktíva
---4.11. Log Blokk
---4.12. TLD Blokk -=- (T:Line)
---4.13. Ban Nick Blokk -=- (Q:Line)
---4.14. Ban User Blokk -=- (K:Line)
---4.15. Ban IP Blokk -=- (Z:Line)
---4.16. Ban Server Blokk -=-(q:Line)
---4.17. Ban Realname Blokk -=- (n:Line)
---4.18. Ban Version Blokk
---4.19. Ban Exception Blokk -=- (E:Line)
---4.20. TKL Exception Blokk
---4.21. Throttle Exception Blokk
---4.22. Deny DCC Blokk -=- (dccdeny.conf)
---4.23. Deny Version Blokk -=- (V:Line)
---4.24. Deny Link Blokk -=- (D:Line / d:Line)
---4.25. Deny Channel Blokk -=- (chrestrict.conf)
---4.26. Allow Channel Blokk
 ---4.27. Allow DCC Blokk
 ---4.28. Vhost Blokk -=- (vhost.conf)
 ---4.29. Badword Blokk -=- (badwords.conf)
 ---4.30. Uline Block -=- (U:Line)
 ---4.31. Link Block -=- (C/N/H:Line-ok)
 ---4.32. Alias Blokk
 ---4.33. Help Blokk
 ---4.34. Official Channels Blokk
 ---4.35. Spamfilter Blokk
 ---4.36. Set Blokk -=- (networks/unrealircd.conf)
5. További fájlok
6. Felhasználói és csatornamódok
7. Felhasználói és operátori parancsok
8. Biztonsági tippek/ellenőrzőlista
---8.1. Jelszavak
---8.2. Nem ircd-vel kapcsolatos sebezhetőségek
---8.3. Engedélybeállítások és a konfigurációs fájlok
---8.4. Felhasználószintű problémák
---8.5. SSL/SSH és a szimatolások
---8.6. Denial of Service támadások (DoS) [avagy: hogyan védd meg a hubodat]
---8.7. Információközlés
---8.8. Sebezhetőségek elleni védelem
---8.9. Összegzés
9. Gyakran Ismételt Kérdések (FAQ)

1.0 – Bevezetés és megjegyzések

Ez a dokumentum az UnrealIRCd-vel való kizárólagos használatra készült. E dokumentum más szoftvercsomaggal való használata és a dokumentum más szoftvercsomaggal történő terjesztése szigorúan tilos az UnrealIRCd Fejlesztői Csapat írásos engedélye nélkül. Ez a dokumentum másolható, nyomtatható, sokszorosítható és közzétehető tetszés szerinti alkalommal, feltéve, hogy azt az UnrealIRCD-hez használod, és nem módosítod. – Copyright UnrealIRCd Fejlesztői Csapat 2002-2004

Kérlek, olvasd el ezt a kézikönyvet, mielőtt segítséget kérsz, és BIZTOSAN bele akarsz nézni a GYIK-ba is, mivel a kérdéseid/problémáid 80%-a meg van válaszolva benne. Ha az nem oldotta meg a problémádat, segítséget kérhetsz az irc.ircsystems.net-en (6667-es port) az #unreal-support csatornán. (Megjegyzendő, hogy MEGKÖVETELJÜK a dokumentáció és a GYIK elolvasását, és csak az UnrealIRCd-vel kapcsolatban segítünk, nem a Servicessel!). Ha találsz egy valódi hibát (például egy ütközést), jelentsd a http://bugs.unrealircd.org-on!

1.1 – Megjegyzések a 3.1.x-ről 3.2-re frissítésről és a verziók keveréséről

Abban az esetben, ha az Unreal3.1.x-ről Unreal3.2-re frissítesz, észre fogod venni, hogy az egész konfigurációs fájl megváltozott, és talán nehéznek látod először, de ha egyszer átváltottál, sokkal jobbnak fogod találni!

Ezenkívül ne felejtsd el elolvasni a featúrákról szóló 3. részt, mert bár néhányukról tudsz, amelyek az Unreal3.1.x-ben is megtalálhatóak, de van számos új featúra is!

A legjobb, ha nem keversz/linkelsz 3.1.x-et 3.2-vel, de ha nagyon akarod, legaláb egy 3.1.4-es vagy 3.1.5.1-ös erősen ajánlott.

1.2 – Megjegyzések a 3.2-es verziók közötti frissítésről

A frissítés javasolt módja:
Linux:

Windows:

Kérlek, a .RELEASE.NOTES-t is olvasd el, hogy lásd, milyen változások történtek. Ha bármilyen változást tapasztalsz (vagy hibát) a régi és új verziók között, FELTÉTLENÜL OLVASD EL A KIADÁSI JEGYZÉKET, mielőtt hibaként jelented!

2.0 - Telepítés


Tesztelt és támogatott operációs rendszerek:

Ha van egy működő Unreal3.2-d más operációs rendszereken, kérlek, küldd a részleteket a docs@unrealircd.com címre.

Telepítési útmutatások
Linux:

  1. gunzip -d Unreal3.2.2.tar.gz
  2. tar xvf Unreal3.2.2.tar
  3. cd Unreal3.2
  4. ./Config
  5. Válaszolj ezekre a kérdésekre a legjobb tudásod szerint. Általában, ha nem vagy biztos a válaszban, az alapértelmezett érték is pont jó!
  6. make
  7. Most hozd létre az unrealircd.conf-odat és más konfigurációs fájlokat, lásd a 4. részt.

Windows:

  1. Futtasd az Unreal telepítőt.
  2. Most hozd létre az unrealircd.conf-odat és más konfigurációs fájlokat, lásd a 4. részt.

3.0 - Featúrák

Néhány főbb és hasznosabb featúráról adunk magyarázatot ebben a részben. Általános áttekintést nyújt, és néha utal a konfigurációs fájlra is (olyasmire, amiről talán még semmit sem tudsz).

Ezt a részt kihagyhatod, azonban ajánlott elolvasni a telepítés előtt vagy után.

3.1 - Álcázás

Az álcázás (cloaking) egy módszer a felhasználók valós gazdaneveinek elrejtésére. Például, ha a valódi gazdaneved d5142341.cable.wanadoo.nl, (a join, part, whois stb. üzenetekben) rox-2DCA3201.cable.wanadoo.nl-ként lesz megjelenítve. Ez a featúra hasznos annak a megelőzésére, hogy a felhasználók egymást floodolják, mivel nem látják a valódi gazdanevet ill. IP címet.

Ez a +x felhasználói móddal vezérelhető (például: /mode nickneved +x), az adminok erőltethetik a +x alapértelemzésbeli engedélyezését is, vagy beállíthatják, hogy a mód soha ne legyen eltávolítható.

Az álcázott gazdanevet egy álcázó modul állítja elő (egyet szükséges betöltened), jelenleg 2 ilyen hivatalos modul áll rendelkezésre:
cloak: Ez az új, hivatalos álcázó modul, amely sokkal biztonságosabb, mint a korábbi; belsőleg használ md5-öt, és 3 kulcsot igényel (set::cloak-keys::), amelyek mindegyike kis- (a-z), nagybetű (A-Z) valamint szám (0-9) karakterekből áll [pl.: "AopAS6WQH2Os6hfosh4SFJHs"]. Az example.conf-ban találsz példát.
oldcloak: Ez az Unreal3.2 és korábbi verziók által használt, régi álcázó algoritmus, és csak azért van itt, hogy segédkezzen a frissítési folyamatban. Mostmár nem tartjuk biztonságosnak (kapsz egy figyelmeztést, ha használod), és rögtön érdemes átváltanod a "cloak"-ra, amint frissítetted a szervereidet.

Az álcázási kulcsoknak egy hálózat MINDEN SZERVERÉN azonosnak KELL lenniük. Továbbá a kulcsokat tartsd TITOKBAN, mert ha valaki ismeri a kulcsokat, visszafejtheti az eredeti gazdanevet (ami a +x felhasználói módot hasznavehetetlenné teszi).

3.2 - Modulok

Az UnrealIRCd támogatja a modulokat, ami hasznos, mert:
- Betölthetsz, újratöltetsz és eltávolíthatsz modulokat, miközben az ircd fut (a /rehash-sel). Így hibákat lehet javítani illetve új dolgokat hozzáadni az újraindítás szükségessége nélkül!
- Mások készíthetnek (nem hivatalos, angol nevén: 3rd party) modulokat, amelyek új parancsokat, felhasználói és akár csatornamódokat is tartalmazhatnak.
Az UnrealIRCd önmagában csak egy kevés modullal rendelkezik. Vess egy pillantást a www.unrealircd.com -> modules oldalára, vagy használd a google keresőt nemhivatalos modulok keresésére.

Legalább 2 modult be kell töltened, különben az ircd nem fog elindulni!
- a commands modult: commands.so (commands.dll windows alatt)
- egy álcázó modult: rendszerint cloak.so (cloak.dll windows alatt).

3.3 - Snomaszkok

A snomaskok vagy szerverüzenet-maszkok (server notice mask) a felhasználói módok egy különleges fajtához tartozik, amelyekkel beállíthatod, hogy milyen típusú szerverüzeneteket szeretnél fogadni (leggyakrabban operátorok használják).

Ezek beállítására a /mode nickneved +s SNOMASZK parancs szolgál. Példa: /mode nickneved +s +cF
Egyes snomaskok eltávolítására a következőhöz hasonló parancsot használj: /mode nickneved +s -c
Vagy minden snomaskot törölhetsz a /mode nickneved -s paranccsal.

A jelenleg rendelkezésre álló snomaskok az alábbiak:
c - helyi kapcsolódások
F - távoli kapcsolódások (kivéve U:line-os szerverekről)
f - flood értesítések
k - kill értesítések [*]
e - szem (eyes) értesítések
j - selejt (junk) értesítések
v - vhost értestések
G - gline/shun értesítések
n - helyi névváltásokról szóló értesítések
N - távoli névváltásokról szóló értesítések
q - letiltott (Q:line-os) nevek visszautasításáról szóló értesítések
s - egyéb szerverüzenetek [*]
S - spamfilter értesítések
o - /oper-elésekről szóló értesítések
[*: ezt a snomaskot nem csak ircopok használhatják]

Beállíthatod, hogy milyen snomaskokat kapj meg automatikusan (set::snomask-on-connect) és melyeket operátorrá váláskor (set::snomask-on-oper, oper::snomask)

3.4 - Álnevek

Az álnevek (alias) szolgálnak szerverszintű álparancsok beállítására. Például az "/ns identify blah" parancsot továbbíthatod a nickservnek (úgy lesz lefordítva, hogy "privmsg nickserv identify blah"). Ennél összetettebb álneveket is készíthetsz, mint a /register, amely a ChanServhez továbbítódik, ha az első paraméter #-tel kezdődik, és a NickServ-hez, ha nem.

Az álnevek az alias blokkban állíthatóak be a konfigurációs fájlban, és egy külön fájlt is betölthetsz, amely alapértelmezett álneveket tartalmaz a leggyakrabban használt szolgáltatásokhoz.

3.5 - Helpop

Az UnrealIRCd rendelkezik egy beépített súgórendszerrel, ami elérhető a /helpop-pal. A /helpop parancs teljes mértékben konfigurálható a help blokkal a konfigurációs fájlban. Ezenkívül van hozzá egy help.conf fájl is, amelyben az összes parancsról található alapvető tájékoztatás.
Például a /helpop chmodes egy áttekintést ad az UnrealIRCd összes csatornamódjáról.
Emlékezz arra, hogy ha ircop (helpop) vagy, a kulcsszó elé egy '?' karaktert kell tenni, tehát a /helpop helyett /helpop ? lesz és a /helpop chmodes helyett /helpop ?chmodes stb..

3.6 - Operátori hozzáférési szintek

Számos operátori szint létezik az UnrealIRCd-ben, és további jogokat tehetsz hozzájuk (például a /gline használatához), így minden operátornak megadhatod a szükséges jogokat.

Ezeket az oper flagekkel vezérelheted az oper blokkban; további információért lásd az oper blokkot.

3.7 - Operátori parancsok

Az UnrealIRCd egy halom rendkívül hatásos operátori paranccsal rendelkezik, amelyekre a Felhasználói és operátori parancsok részben adunk magyarázatot, érdemes elolvasni őket a telepítés után. :)

3.8 - SSL

Az SSL a biztonságos kapcsolati réteget (Secure Socket Layer) rövidíti, amellyel létrehozhatsz biztonságos, titkosított kapcsolatokat. Ezzel titkosítható a szerver<->szerver forgalom, de a kliens<->szerver forgalom is lehet titkosított. Rendszerint arra használható, hogy védelmet nyújtson a hallgatózás ellen, valamint hitelesítésre.

Ehhez szükséges, hogy az IRC szervered SSL támogatással legyen lefordítva. Egy SSL port indításához a listen::options::ssl-t kell beállítanod.

SSL portra nem kapcsolódhatsz a szokásos módszerrel (ezért ne is állítsd be a 6667-es port ssl-re!), kell hozzá egy kliens vagy egy tunnel, ami érti az SSL protokollt.

SSL-t támogató kliensek: XChat, irssi, mIRC (6.14 és frissebb, kell hozzá néhány további lépés is).

Azokhoz a kliensekhez, amelyek nem támogatják az SSL-t, használhatsz egy tunnelt, mint az stunnel, íme egy stunnel.conf példa (stunnel 4.x-re):

   client = yes
   [irc]
   accept = 127.0.0.1:6667
   connect = irc.myserv.com:6697
Ekkor ha a 127.0.0.1-re kapcsolódsz a 6667-es porton, a forgalmad titkosított lesz, és továbbítódik az irc.myserv.com 6697-es portjára (egy SSL portra).

Nem árt, ha a tanúsítványokat is érvényesíted, amikor szerverekre kapcsolódsz, és nem csak vakon elfogadod őket (mint az stunnel példában), különben továbbra is sebezhető maradhatsz a "tevékeny szimatolás" jellegű támadásokkal szemben, (ssl átirányítások), viszont ez túlságosan témán kívüli, hogy itt magyarázzuk el. (Tanulj az SSL-ről, ne minket kérdezz.) [A mIRC és az xchat megjelenít egy ablakot a tanúsítványok engedélyezéséről/visszautasításáról, tehát ez jó].

3.9 - IPv6

Az UnrealIRCd támogatja az IPv6-ot, és a beta15 óta stabilnak tűnik.
Ehhez az OPR-ben kell, hogy legyen IPv6 támogatás, valamint az UnrealIRCd-ben is engedélyezned kell az IPv6 támogatást a ./Config-oláskor.

Bár a microsoftnak van egy kísérleti IPv6 megvalósítása w2k/XP-re, az UnrealIRCd azt (még) nem támogatja.

3.10 - Zip linkek

A zip linkek bekapcsolhatóak a szerver<->szerver linkekben, a zlib használatával tömörít adatokat. Megspórolhat 60-80% sávszélességet... Úgyhogy eléggé hasznos az alacsony sávszélességű linkekhez vagy olyanokhoz, ahol nagy mennyiségű felhasználó van; sokat segíthet a linkeléskor, mert rengeteg adat küldődik el a felhasználókról, csatornákról stb.

A zip link támogatással történő fordításhoz válaszolj Yes-t a ./Config zlib-es kérdésében, valamint a konfigurációban állítsd be a link::options::zip opciót (mindkét oldalon).

3.11 - Dinamikus DNS-sel/IP-vel linkelések támogatása

Az UnrealIRCd néhány (új) hasznos featúrával segíti azokat a felhasználókat, akiknek dinamikus IP-jük van, és dinamikus DNS-t használnak (mint a valami.dyndns.org). Ha két dinamikus DNS-sel rendelkező gépet linkelsz, állítsd be a link::options::nodnscache és a link::options::nohostcheck opciókat.

3.12 - Anti-Flood featúrák

Elfojtás
Az elfojtás (throttling) egy módszer annak korlátozására, hogy egy felhasználó milyen gyorsan bonthatja a kapcsolatot és kapcsolódhat újra szerveredre. Beállíthatod a set::throttle blokkban, hogy X kapcsolatot engedélyezzen YY másodperc alatt ugyanarról az IP-ről.
Csatornamódok
Vannak csatornamódok is, amelyek nagyon hatásosak lehetnek floodok ellen. Hogy néhányat megnevezzünk:
K = nincs /knock (bekopogás), N = nincsenek nickváltások, C = nincsenek CTCP-k, M = csak regisztált felhasználók beszélhetnek.
A beta18 óta egy sokkal fejlettebb, +f csatornamód is használható...
Az f csatornamód
A csatornabeli áradatok elleni védelem most már beleépült az ircd-be ezen csatornamódként, hogy ne kelljen scripteket és a botokat használni.
Egy példa a +f módra: *** Blah sets mode: +f [10j]:15
Ez azt jelenti, hogy 10 belépés engedélyezett a csatornára 15 másodpercenként. Ha a korlátot túllépik, a +i csatornamód lesz automatikusan beállítva.
A következő floodtípusok állnak rendelkezésre:
típus:név:alapért. tevékenység:más elérhető
tevékenységek:
megjegyzés
cCTCP-kautomatikus +Cm, M 
jbelépésekautomatikus +iR 
kbekopogásokautomatikus +K (csak helyi kliensekét számolja)
müzenetek/értesítésekautomatikus +mM 
nnickváltásokauto +N  
tszövegkirúgásbfelhasználónkénti üzenetek/értesítések, mint a régi +f. Kirúgja vagy kitiltja a felhasználót.

  Példa:

*** ChanOp sets mode: +f [20j,50m,7n]:15
<ChanOp> lalala
*** Evil1 (~fdsdsfddf@Clk-17B4D84B.blah.net) has joined #test
*** Evil2 (~jcvibhcih@Clk-3472A942.xx.someispcom) has joined #test
*** Evil3 (~toijhlihs@Clk-38D374A3.aol.com) has joined #test
*** Evil4 (~eihjifihi@Clk-5387B42F.dfdfd.blablalba.be) has joined #test
-- levágva XX sor --
*** Evil21 (~jiovoihew@Clk-48D826C3.e.something.org) has joined #test
-server1.test.net:#test *** Channel joinflood detected (limit is 20 per 15 seconds), putting +i
*** server1.test.net sets mode: +i
<Evil2> fsdjfdshfdkjfdkjfdsgdskjgsdjgsdsdfsfdujsflkhsfdl
<Evil12> fsdjfdshfdkjfdkjfdsgdskjgsdjgsdsdfsfdujsflkhsfdl
<Evil15> fsdjfdshfdkjfdkjfdsgdskjgsdjgsdsdfsfdujsflkhsfdl
<Evil10> fsdjfdshfdkjfdkjfdsgdskjgsdjgsdsdfsfdujsflkhsfdl
<Evil8> fsdjfdshfdkjfdkjfdsgdskjgsdjgsdsdfsfdujsflkhsfdl
-- levágva XX sor --
-server1.test.net:#test *** Channel msg/noticeflood detected (limit is 50 per 15 seconds), putting +m
*** server1.test.net sets mode: +m
*** Evil1 is now known as Hmmm1
*** Evil2 is now known as Hmmm2
*** Evil3 is now known as Hmmm3
*** Evil4 is now known as Hmmm4
*** Evil5 is now known as Hmmm5
*** Evil6 is now known as Hmmm6
*** Evil7 is now known as Hmmm7
*** Evil8 is now known as Hmmm8
-server1.test.net:#test *** Channel nickflood detected (limit is 7 per 15 seconds), putting +N
*** server1.test.net sets mode: +N
Valójában sokkal haladóbb, bonyolultabb is lehet:
Bizonyos floodtípusoknál az alapértelmezett tevékenység helyett egy másikat is meghatározhatsz, például: +f [20j#R,50m#M]:15
Ez a csatornát +R-re állítja, ha a belépési határt elérték (>20 belépés 15 másodperc alatt), és +M-re, ha a megengedett üzenetek számát elérték (>50 üzenet 15 másodperc alatt).

Van egy "töröld a módot X perc után" featúra is: a +f [20j#R5]:15 +R-re állítja a csatornát, ha elérték a határt, és -R-et állít be 5 perc után.
A szervernek lehet alapértelmezett módtörlési ideje (set::modef-default-unsettime), vagyis ha azt írod be, hogy +f [20j]:15, átváltozhat +f [20j#i10]:15-re. Ez csak egy alapértelmezés, továbbra is beállíthatsz [20j#i2]:15-öt vagy bármi ehhez hasonlót, és teljesen le is tilthatod a csatornamódok eltávolítását a +f [20j#i0]:15-tel (egy határozott 0-val).

A régi +f mód (felhasználónkénti üzenetáradat) szintén elérhető a 't' tevékenységként, a +f 10:6-ot most már úgy hívjuk, hogy +f [10t]:6, és a +f *20:10 most már +f [20t#b]:10. Jelenleg az ircd automatikusan átalakítja a régi +f módtípusokat az újakra. Megjegyzendő, hogy nincs alapértelmezett törlési idő featúra a 't' banokra (a [20t#b30]:15 nem fog működni).

Az, hogy mi a legjobb +f mód, nagymértékben függ a csatornától... Hány felhasználója van? Van-e rajta olyan játék, ami a felhasználókat sok üzenet küldésére készteti (pl.: trivia), vagy használnak-e gyakran popupokat? Ez egy valamiféle főcsatorna-e, vagy benne van-e az auto-join-ban? Stb.
Nincs tökéletes +f csatornamód, ami minden csatornára jó, de kezdésnek nézd meg a következő példát, és módosítsd az igényeid szerint:
+f [30j#i10,40m#m10,7c#C15,10n#N15,30k#K10]:15
30 belépés 15 másodpercenként, határátlépés esetén a +i csatornamód beállítása 10 percre
40 üzenet 15 másodpercenként, határátlépés esetén +m csatornamód beállítása 10 percre
7 ctcp 15 másodpercenként, határátlépés esetén a +C csatornamód beállítása 15 percre
10 nickváltás 15 másodpercenként, határátlépés esetén a +N csatornamód beállítása 15 percre
30 kopogás 15 másodpercenként, határátlépés esetén a +K csatornamód beállítása 10 percre
Ha ez egy hatalmas felhasználói bázisú csatorna (>75 felhasználóval?), a belépési érzékenységet jobb növelni (például 50-re), és az üzenethatárt is ugyanúgy (például 60-ra vagy 75-re).
A módtörlési idők különösképpen egyéni ízlés dolgai.. olyasmire kellene gondolnod, mint.. mi van, ha nincs elérhető operátor a helyzet kezelésére? Szeretném-e a csatornát lezárni pl. 15 percre (=nem kellemes a felhasználóknak) vagy 5 percre (=feltehetőleg a floodolók csak várni fognak 5 percet, és árasztanak újra)? Függ a flood típusától is; ha a felhasználók képtelen belépni (+i) vagy beszélni (+m), az rosszabb, mint ha nem változtathatják meg a neveiket (+N) vagy nem küldhetnek ctcp-ket a csatornára (+C), tehát érdemesebb különböző törlési időket használni.

3.13 - Ban típusok

Alapvető ban típusok és álcázott gazdanevek
Az UnrealIRCd támogatja az olyan alapvető ban típusokat, mint amilyen a +b nick!user@host.
Emellett, ha valakinek a maszkolt gazdaneve 'rox-ACB17294.isp.com', és egy bant helyezel a *!*@rox-ACB17294.isp.com-ra, továbbá ha a felhasználó "-x"-et állít be magán (és a gazdaneve például "dial-123.isp.com"-ra változik), a kitiltás még mindig hatni fog rá. A kitiltásokat a szerver mindig ellenőrzi valós ÉS maszkolt gazdanevekre is.
IP alapú kitiltások is rendelkezésre állnak (pl.: *!*@128.*), és azok is ellenőrzésre kerülnek.

Az álcázott IP-kre vonatkozó kitiltások némi magyarázatot igényelnek:
Ha egy felhasználónak az 1.2.3.4 IP-je van, az álcázott gazdaneve 341C6CEC.8FC6128B.303AEBC6.IP lehet.
Ha kitiltod a *!*@341C6CEC.8FC6128B.303AEBC6.IP-t, akkor a *!*@1.2.3.4-et fogod kitiltani (nyilvánvaló...).
Ha kitiltod a *!*@*.8FC6128B.303AEBC6.IP-t, akkor a *!*@1.2.3.*-ot bannolod.
Ha kitiltod a *!*@*.303AEBC6.IP-t, a *!*@1.2.*-ot bannolod.
Ez az információ hasznos lehet, amikor elhatározod, milyen széles legyen egy kitiltás.

Kiterjesztett ban típusok
A kiterjesztett ban típusok ~[!]<típus>:<valami> alakúak. Jelenleg a következő típusok használhatóak:
típus:névmagyarázat:
~qnémaság (quiet)Az erre a banra illő emberek beléphetnek, de nem beszélhetnek, hacsak nincs +v módjuk vagy annál magasabb. Pl.: ~q:*!*@blah.blah.com
~nnévváltásAz erre a banra illő emberek nem válthatnak nicknevet, hacsak nincs +v módjuk vagy annál magasabb. Pl.: ~n:*!*@*.aol.com
~ccsatornaHa a felhasználó ezen a csatornán van, nem léphet be. Pl.: ~c:#lamers
~rvalós névHa egy felhasználó valós neve illik a banra, nem léphet be.
Pl.: ~r:*Stupid_bot_script*
MEGJEGYZÉS: az aláhúzás ('_') mind a szóközre (' ') és az aláhúzásra ('_') is illik, így ez a ban illik a 'Stupid bot script v1.4'-re.
Ezek a ban típusok a csatornabeli kivétellistákon (+e) is támogatottak.
A modulok bővíthetik is más típusokkal a kiterjesztett ban típusokat.

3.14 - A spamszűrő

A spamszűrő egy új rendszer a spamok, reklámok, férgek és egyéb dolgok leküzdésére. A csúnyaszórendszerhez hasonló működésű, de több előnye is van.

Spamszűrők a /spamfilter paranccsal vehetőek fel, amely a következő szintaktikát használja:
/spamfilter [add|del|remove|+|-] [típus] [tevékenység] [időtartam] [indok] [regex]
[típus] meghatározza a célpont típusát:
Karakter:Konfigurációs elem:Leírás:
cchannelCsatornabeli üzenet
pprivatePrivát üzenet (két felhasználó között)
nprivate-noticePrivát értesítés
Nchannel-noticeCsatornabeli értesítés
PpartCsatornáról lelépés indoka
qquitKilépési indok
ddccDCC fájlnév
uuserFelhasználó kitiltása, nick!user@host:valósnév alakú illeszkedési maszk
Egyszerre több célpontot is megadhatsz, például így: cpNn
[tevékenység] meghatározza az elvégzendő tevékenységet (csak 1 tevékenység adható meg)
killkilövi a felhasználót
tempshunshunolja a felhasználó jelenlegi kapcsolatát (ha újrakapcsolódik, a shun megszűnik)
shunshunolja a felhasználót
klinekline-t helyez a hostra
glinegline-t helyez a hostra
zlinezline-t helyez a hostra
gzlinegzline-t (globális zline-t) helyez a hostra
blockcsak blokkolja az üzenetet
dccblockmegjelöli a felhasználót DCC blokkolásra (nem küldhet DCC-ket)
viruschanlelépteti a felhasználót minden csatornáról, belépteti a set::spamfilter::virus-help-channel csatornára, letilt minden parancsot, kivéve a PONG-ot, az ADMIN-t és a set::spamfilter::virus-help-channel csatornára küldött üzeneteket/értesítéseket
[időtartam] A szűrő által felvett *line-ok időtartama, használj kötőjelet ('-') az alapértelmezéshez vagy a kihagyáshoz (pl.: ha a tevékenység = 'block')
[indok] a blokkolás vagy a *line indoka.. itt NEM használhatsz szóközöket, de az aláhúzásjelek ('_') szóközökké lesznek alakítva futásidőben. Egy dupla aláhúzás ('__') jelent egy aláhúzást ('_'). Itt is írj kötőjelet ('-') az alapértelmezett indok használatához.
[regex] ez a tényleges regex vagy "csúnya szó", amelyre végezzük a blokkolást és a tevékenységet

Itt egy példa: /spamfilter add pc gline - - Come watch me on my webcam
Ha a come watch me on my webcam szöveg megtalálható vagy egy privát vagy egy csatornabeli üzenetben, az üzenet blokkolódik és egy gline lesz azonnal felvéve.
Másik példa: /spamfilter add pc block - - come to irc\..+\..+
Ez egy olyan regex, ami illik a Hi, come to irc.blah.net stb. szövegre....
És egy példa az időtartam/indok meghatározására:
/spamfilter add p gline 3h Please_go_to_www.viruscan.xx/nicepage/virus=blah Come watch me on my webcam
Ha a come watch me on my webcam megtalálható egy privát üzenetben, a felhasználó 3 órára gline-ra kerül a Please go to www.viruscan.xx/nicepage/virus=blah indokkal.

A /spamfilter-rel felvett spamszűrők hálózati szintűek. Mindig működnek, tekintet nélkül arra, hogy a felhasználó/csatorna a +G móddal rendelkezik-e, csak operek és uline-ok (servicesek) kivételek a szűrés alól.

Spamszűrőket a konfigurációs fájlban is felvehetsz, de ezek helyi spamszűrők lesznek (nem hálózati szintűek, bár erre használhatod a távoli fájlok betöltését). Ezen spamfilter { } blokkok szintaktikáját itt magyarázzuk.
Példa:

spamfilter {
	regex "//write \$decode\(.+\|.+load -rs";
	target { private; channel; };
	reason "Általános $decode sebezhetőség";
	action block;
};

A set::spamfilter::ban-time lehetővé teszi, hogy módosítsd a spamszűrők által felvett *line-ok alapértelmezett kitiltási idejét (alapértelmezés: 1 nap)
A set::spamfilter::ban-reason-nel meghatározhatsz egy alapértelmezett indokot a *line-okra (alapértelmezés: 'Spam/advertising')
A set::spamfilter::virus-help-channel-lel meghatározhatod, hogy milyen csatornára történjen a belépés a 'viruschan' tevékenység esetén (alapértelmezés: #help)
A set::spamfilter::virus-help-channel-deny segítségével pedig letilthatod a normál belépéseket a "virus-help-channel"-ben (alapértelmezés: no)

3.15 - CIDR

Az UnrealIRCd-nek most már van támogatása CIDR-re (Classless Interdomain Routing; osztály nélküli, tartományon belüli útvonalválasztás). A CIDR alkalmas IP tartományok kitiltására. Az IP-ket CIDR használatával osztják ki ISP-k (Internet Service Provider, Internetszolgáltató) között, ezért a CIDR alapú kitiltások beállításának képességével egyszerűen kitiltható egy ISP. Az Unreal mind IPv4-re és IPv6-ra is támogatja a CIDR-t. A CIDR maszkok használhatóak az allow::ip, a ban user::mask, a ban ip::mask, az except ban::mask, az except throttle::mask és az except tkl::mask direktívákban (ez utóbbinál gzline-ra, gline-ra és shun-ra). Azonfelül a CIDR használható még a /kline, /gline, /zline, /gzline, and /shun parancsokban. Az Unreal a szabványos IP/bitek szintaktikát használja, pl. 127.0.0.0/8 (illeszkedési tartománya 127.0.0.0 - 127.255.255.255) és fe80:0:0:123::/64 (illeszkedési tartománya fe80:0:0:123:0:0:0:0 - fe80:0:0:123:ffff:ffff:ffff:ffff).

3.16 - További featúrák

Az UnrealIRCd-nek rengeteg featúrája van, ezért itt nincs minden megemlítve... Rájössz majd magadtól is.

4.0 - Az unrealircd.conf fájlod beállítása

Először is, egy jó unrealircd.conf készítése komoly időt vesz igénybe, talán körülbelül 10 - 60 percet. Megpróbálhatod a lehető leggyorsabban üzemkésszé tenni és trükközgetni vele később, vagy rögtön, lépésről lépésre megtanulhatod a legfőbb részeket, ami a javasolt módszer ;P. Ha problémáid vannak, ellenőrizd a szintaktikát, nézd át a kézikönyvet, és nézz bele a FAQ-ba is, mielőtt segítségért fordulsz/hibát jelentesz.

4.1 A konfigurációs formátumról

Az új rendszer egy blokk alapú formátumot használ. Az új formátumban minden bejegyzésnek vagy blokknak meghatározott formája van, amely így néz ki:

<blokknév> <blokkérték> {
	<blokk-direktíva> <direktívaérték>;
};

A <blokknév> a blokk típusa, mint például a "me" vagy az "admin". A <blokkérték> néha meghatároz egy értéket, mint például az /oper loginhoz, de néha egy altípus lesz, mint a "ban user"-ben.

A <blokk-direktíva> egy egyszerű változó, amelyet a blokk határoz meg, és a <direktívaérték> a hozzátartozó érték. Ha a <directívaérték> szóközöket tartalmaz vagy olyan karaktereket, amelyek megjegyzéseket fejeznek ki, idézőjelek közé kell tenni. Ha az idézett szövegen belül egy idézőjel karaktert szeretnél használni, használj \"-t, és idézőjelként lesz értelmezve.

Egy <blokk-direktíva> is tartalmazhat direktívákat saját magán belül, ilyen esetben lesz egy saját pár kapcsoszárójele maga körül. Néhány blokknak nincs direktívája, és csak <blokkérték> formában határozzuk meg, mint az "include"-t. Az is megjegyzendő, hogy nincs kötött forma, tehát az egész blokk megjelenhet egy sorban vagy akár több sorban is. A fenti formát használják általában (és ebben a fájlban is ezt alkalmazzuk), mert könnyen olvasható.

Megjegyzés: a konfigurációs fájl jelenleg kis- és nagybetűérzékeny, eképpen a "BLOKKNÉV" nem ugyanaz, mint a "blokknév". Van egy általános jelölési rendszer, amit arra használunk, hogy a konfigurációs fájl bejegyzéseiről beszéljünk. Például, hogy a fenti példabeli <direktívanév>-ről beszéljünk, azt mondjuk, hogy <blokknév>::<blokk-direktíva>, és ha a direktívának van egy alblokkja, amire utalni szeretnél, tegyél hozzá egy másik dupla kettőspontot (::) és az aldirektíva nevét.

Ha egy névtelen direktíváról szeretnél beszléni, mondd azt, hogy <blokknév>::, ami ebben az esetben <blokkérték>-et jelent, vagy lehet egy alblokk névtelen bejegyzése is.

Háromféle megjegyzéstípus támogatott:

# Egy soros megjegyzés
// Egy soros megjegyzés
/* Többsoros
    megjegyzés */

Most, hogy tudod, hogyan működik, készítsd el a saját unrealircd.conf-odat teljesen a semmiből, vagy másold le a doc/example.conf-ot, és kezdd el szerkeszteni. Javasolt, hogy lépésről lépésre haladj át az egyes blokktípusokon, és használd ezt a kézikönyvet segédletnek.

4.2 - Me Blokk KÖTELEZŐ (Előzőleg M:Line néven ismert)

Szintaktika:

me {
	name <szerver-neve>;
	info <szerver-leírása>;
	numeric <szerver-numericja>;
};

Ezek az értékek meglehetősen egyértelműek. A name beállítja a szerver nevét, az info a szerver info sorának (rövid leírásának) megadására szolgál, a numeric meghatározza a szerver azonosítószámát. Ez utóbbi szám legyen 1 és 255 között, és minden szerveren EGYEDINEK kell lennie, vagyis ugyanazon a hálózaton SEMELYIK más szervernek nem lehet ugyanaz az azonosítószáma.

Példa:

me {
	name "irc.foonet.com";
	info "FooNet Server";
	numeric 1;
};

4.3 - Admin Blokk KÖTELEZŐ (Előzőleg A:Line néven ismert)

Szintaktika:

admin {
	<szövegsor>;
	<szövegsor>;
};

Az admin blokk meghatározza, hogy milyen szöveg jelenjen meg az /admin parancsra. Annyi sort írhatsz, amennyit akarsz, és mind tetszőleges szöveget tartalmazhatnak, de szabványszerű legalább az adminisztrátor nicknevét és email címét feltüntetni. Rajtad áll, hogy milyen további információkat írsz ide.

Példa:

admin {
	"Bob Smith";
	"bob";
	"szeleskorben@hasznalt.nev";
};

4.4 - Class Blokk KÖTELEZŐ (Előzőleg Y:Line néven ismert)

Szintaktika:

class <name> {
	pingfreq <ping-gyakoriság>;
	connfreq <kapcsolódási-gyakoriság>;
	maxclients <kliensek-maximális-száma>;
	sendq <küldési-sor-mérete>;
	recvq <fogadási-sor-mérete>;
};

Class blokkok azok az osztályok, amelyekben a kapcsolatok elhelyeződnek (például az allow blokkokból vagy szerverek a link blokkokból); általában több class blokkot szokás beállítani (pl. egy-egy a szervereknek, klienseknek és az opereknek).

A name egy leíró név, például "clients" (kliensek) vagy "servers" (szerverek), erre az osztálynévre hivatkoznak az allow, link, oper stb. blokkok.

A pingfreq a szerver által küldött PING-ek közötti idő másodpercekben (egy 90 és 180 közötti érték javasolt).

A connfreq csak szerverekre használható, és a kapcsolódási kísérletek közötti időt jelenti másodpercekben, ha az autoconnect engedélyezve van.

A maxclients meghatározza, hogy maximálisan (összesen) hány kliens/szerver tartozhat ebbe a kapcsolati osztályba.

A sendq meghatározza azt az adatmennyiséget, amennyi megengedett a küldésre várakozó üzenetek sorában [send queue] (legyen nagyon magas alacsony sávszélességű szerverekhez, közepes a kliensekhez).

A recvq meghatározza azt az adatmennyiséget, amennyi megengedett a fogadásra váró üzenetek sorában [receive queue], és ezt használjuk flood-szabályozásra (csak normál felhasználókra vonatkozik, 8000 ajánlott, ez az alapértelmezés is; kísérletezhetsz 3000-8000 közötti értékekkel).

Példák:

class clients {
	pingfreq 90;
	maxclients 500;
	sendq 100000;
	recvq 8000;
};

class servers{
	pingfreq 90;
	maxclients 10; /* Az egyszerre linkelhető szerverek maximális száma */
	sendq 1000000;
	connfreq 100; /* A kapcsolódási kísérletek közötti idő másodpercekben */
};

4.5 - Allow Blokk KÖTELEZŐ (Előzőleg I:Line néven ismert)

Szintaktika:

allow {
	ip <user@ip-kapcsolati-maszk>;
	hostname <user@host-kapcsolati-maszk>;
	class <kapcsolati-osztály>;
	password <kapcsolódási-jelszó> { <hitelesítés-típusa>; };
	maxperip <ip-nkénti-kapcsolatok-száma>;
	redirect-server <szerver-az-átirányításhoz>;
	redirect-port <port-az-átirányításhoz>;
	options {
		<opció>;
		<opció>;
		...
	};
};

Az allow blokkokkal határozhatod meg, kik kapcsolódhatnak a szerverre. Lehet egyszerre több allow blokkod is.

Az illesztésről
Az illeszkedés-keresés úgy történik, hogy az IP cím egyezik VAGY a gazdanév egyezik, vagyis "hostname *@*;" és "ip *@1.2.3.4" azt jelenti, hogy mindig egyezik minden hostra. Ezenkívül az allow blokkok lentről felfelé lesznek olvasva, vagyis a speciális allow blokkokat az általános *@* allow blokk ALATT célszerű elhelyezni, különben a kapcsolatok mindig a *@*-ra fognak illeni. Ha olyan blokkot szeretnél beállítani, ami csak IP-re illik, de gazdanévre nem, valami érvénytelen hostnevet állíts be, mint például "hostname SENKI;".

ip
Az ip maszk megadási formája a user@ip, user az ident név, amely általában *, ip az IP maszk. Példák: *@* (bárhonnan), *@192.168.* (csak 192.168-cal kezdődő IP címekről) stb.

host
Hasonló a fentihez, annyi különbséggel, hogy itt a megadási forma a user@host maszk, ahol a user általában *. Példák: *@* (bárhonnan), *@*.wanadoo.fr (csak a wanadoo.fr-ről).

password (szabadon választható)
Jelszó megadására kötelesít. Itt megadhatsz egy jelszókódolási módot is.

class
Azon kapcsolati osztály nevét határozza meg, amelybe helyezendő a kliens.

maxperip (optional, but recommended)
Meghatározza, hogy egy IP címről maximum hány kapcsolatot engedélyezzen (például: maxperip 4;).

redirect-server (szabadon választható)
Ha a kapcsolati osztály megtelt, továbbítja a felhasználókat erre a szerverre (ha a kliens támogatja [a mIRC 6 igen]).

redirect-port (szabadon választható)
Ha a redirect-server be van állítva, itt megadhatod a portot, különben 6667 lesz feltételezve.

options block (szabadon választható)
Érvényes opciók:
   useip mindig IP címet jelenítsen meg gazdanév helyett
   noident ne használjon identet, hanem a kliens által megadot felhasználónevet
   ssl csak akkor egyezzen, ha a kliens SSL-en keresztül kapcsolódik
   nopasscont folytassa a keresést, ha nem adott meg jelszót (így a kliens más kapcsolati osztályba helyezhető, ha jelszót ad meg).

Példák:

allow {
	ip *;
	hostname *;
	class clients;
	maxperip 5;
};

allow {
	ip *@*;
	hostname *@*.jelszavas.csunya.emberek;
	class clients;
	password "V4lami";
	maxperip 1;
};

 

4.6 - Listen Blokk KÖTELEZŐ (Előzőleg P:Line néven ismert)

Szintaktika:

listen <ip:port> {
	options {
		<opció>;
		<opció>;
		...
	};
};

Ezzel a blokkal állíthatsz be olyan portokat, amelyeken az IRCd figyeli a kapcsolódásokat. Ha nincs szükséged opciókra, megadhatod a link blokkot listen <ip::port>; formában is.

ip és port
Az ip-t beállíthatod *-ra, hogy minden hálózati eszközön figyelje a kapcsolódásokat, vagy megadhatsz IP címet, és akkor csak arra az IP címre bindel (shell szolgáltatóknál rendszerint szükséges). A port annak a portnak a száma, amelyet a szerver megnyit és figyeli rajta a kapcsolódásokat. Beállíthatsz port tartományt is egyetlen szám helyett, például a 6660-6669 minden portot megnyit 6660-tól 6669-ig bezárólag. IPv6 felhasználók: lásd lejjebb.

Információk IPv6 felhasználóknak
Ha IPv6-engedélyezett szervered van, az IP címet szögletes zárójelek között add meg. Példa: [::1]:6667 (a localhost 6667-es portján fog figyelni). Ha IPv6-ot használsz és egy bizonyos IPv4 címet szeretnél használni, ::ffff:ipv4ip formában teheted meg. Például az [::ffff:203.123.67.1]:6667 a 203.123.67.1-es címen, a 6667-es porton fog figyelni. Természetesen használhatsz *-ot is.

options blokk (szabadon választható)
Tetszés szerint beállíthatsz különböző opciókat ehhez a porthoz, érvényes opciók:
clientsonly
ezen a porton csak kliensek kapcsolódhatnak
serversonly
ezen a porton csak szerverek kapcsolódhatnak
java
CR javachat támogatás
ssl
SSL-lel titkosított port

Példák:

listen *:6601 {
	options {
		ssl;
		clientsonly;
	};
};

Vagy ha nincsenek opciók:

listen *:8067;
listen 213.12.31.126:6667;
listen *:6660-6669;

4.7 - Oper Blokk AJÁNLOTT (Előzőleg O:Line néven ismert)

oper <name> {
	from {
		userhost <hostmaszk>;
		userhost <hostmaszk>;
	};
	password <jelszó> { <hitelesítés-típusa>; };
	class <osztálynév>;
	flags <flagek>;
	flags {
		<flag>;
		<flag>;
		...
	};
	swhois <whois info>;
	snomask <snomask>;
	modes <módok>;
	maxlogins <szám>;
};

Az oper blokkal IRC operátorokat állíthatsz be a szerveredhez. Az oper:: értéke adja meg az /oper-hez a bejelentkező nevet. Az oper::from::userhost egy user@host maszk, amelyre a felhasználó kapcsolatának illenie kell. Megadhatsz egynél több hostmaszkot is úgy, hogy több oper::from::userhost-ot használsz. Az oper::password az a jelszó, amit a felhasználónak meg kell adnia, az oper::password:: segítségével kódolhatod a jelszót, érvényes hitelesítési típusok: crypt, md5, sha1, ripemd-160. Ha csak egyszerű szöveg típusú jelszót szeretnél megadni, az alblokkot kihagyhatod.

Megjegyzendő, hogy MIND a bejelentkező név és jelszó a kis- és nagybetűkre érzékenyek.

Az oper::class direktíva meghatározza azt a már létező (a konfigurációban ezen blokk előtt beállított) osztálynevet, amit az oper blokk használ.

Az oper::flags direktívának kétféle formája van. Ha a régi stílusú oper flageket szeretnéd használni, pl. OAa, használd a flags <flagek> formát, ha pedig az új stílust, pl. services-admin, akkor a flags { <flag>; } módszert. Az alábbiakban látható a flagek listája (mindkét formában) és amit csinálnak.

Régi flag
Új flag
Leírás
o
local
Helyi operátorrá tesz
O
global
Globális operátorrá tesz
C
coadmin
Társ-adminisztrátorrá tesz
A
admin
Adminisztrátorrá tesz
a
services-admin
Services adminisztrátorrá tesz
N
netadmin
Hálózati adminisztrátorrá tesz
r
can_rehash
Használhatja a /rehash parancsot
D
can_die
Használhatja a /die parancsot
R
can_restart
Használhatja a /restart parancsot
h
helpop
+h felhasználói flaget kap (helpop)
w
can_wallops
Küldhet /wallops üzeneteket
g
can_globops
Küldhet /globops üzeneteket
c
can_localroute
Szervereket csatlakoztathat helyileg
L
can_globalroute
Szervereket csatlakoztathat globálisan
k
can_localkill
/kill-elhet helyi felhasználókat
K
can_globalkill
/kill-elhet távoli felhasználókat
b
can_kline
Használhatja a /kline parancsot
B
can_unkline
Használhatja a /kline -u@h parancsot
n
can_localnotice
Küldhet helyi körüzeneteket
G
can_globalnotice
Küldhet távoli körüzeneteket
z
can_zline
Használhatja a /zline parancsot
t
can_gkline
Használhatja a /gline, /shun és /spamfilter parancsokat
Z
can_gzline
Használhatja a /gzline parancsot
W
get_umodew
+W felhasználói flaget kap opereléskor
H
get_host
Beállítja a hostneved egy oper hostnévre
v
can_override
Használhat OperOverride-ot
q
can_setq
Használhatja a usermode +q felhasználói flaget
X
can_addline
Használhatja az /addline-t
d
can_dccdeny
Használhatja a /dccdeny-t és az /undccdeny-t

Egyes flagek más flageket is adnak magukon kívül:

local global admin/coadmin services-admin netadmin
can_rehash can_rehash can_rehash can_rehash can_rehash
helpop helpop helpop helpop helpop
can_globops can_globops can_globops can_globops can_globops
can_wallops can_wallops can_wallops can_wallops can_wallops
can_localroute can_localroute can_localroute can_localroute can_localroute
can_localkill can_localkill can_localkill can_localkill can_localkill
can_kline can_kline can_kline can_kline can_kline
can_unkline can_unkline can_unkline can_unkline can_unkline
can_localnotice can_localnotice can_localnotice can_localnotice can_localnotice
  can_globalroute can_globalroute can_globalroute can_globalroute
  can_globalkill can_globalkill can_globalkill can_globalkill
  can_globalnotice can_globalnotice can_globalnotice can_globalnotice
    global global global
    can_dccdeny can_dccdeny can_dccdeny
      can_setq can_setq
        admin
        services-admin

Az oper::swhois direktívával egy tetszőleges szövegű sorral egészítheted ki az operátor whois információját. [szabadon választható]

Az oper::snomask direktívával előre beállíthatod, hogy az operátor milyen szerverüzenet-maszkokat kapjon opereléskor. A rendelkezésre álló SNOMASKok listáját lásd a 3.3. szekcóban. [szabadon választható]

Az oper::modes direktívával előre beállíthatod, hogy az operátor milyen módokat kapjon opereléskor.  [szabadon választható]

Az oper::maxlogins direktívával lekorlátozhatod az egyidejű oper bejelentkezések számát erről a login névről, például ha 1-re állítod, csak 1 személy lehet operátor ezzel a blokkal egyszerre. [szabadon választható]

Példa:

oper bobsmith {
	class clients;
	from {
		userhost bob@smithco.com;
		userhost boblaptop@somedialupisp.com;
	};
	password "v4lami";
	flags {
		netadmin;
		can_gkline;
		can_gzline;
		can_zline;
		can_restart;
		can_die;
		global;
	};
	swhois "Példa egy whois maszkra";
	snomask frebWqFv;
};

Néhány információ az OperOverride-ról:
Az OperOverride (operátori felülbírálás) olyan dolgokat jelent, mint: belépni egy +ikl csatornára és keresztülmenni a banokon (először azonban /invite-olnod kell magad ehhez), opolni magad a csatornán, stb.
A can_override operflaget azért csináltuk, hogy megkísérelje megállítani az operátori visszaéléseket. Egyetlen operátor sem overrideolhat alapértelmezés szerint, ehhez kifejezetten a can_override flaget kell megadnod nekik.

4.8 - DRpass Blokk AJÁNLOTT (Előzőleg X:Line néven ismert)

Szintaktika:

drpass {
	restart <újraindítási-jelszó> { <hitelesítés-típusa>; };
	die <leállítási-jelszó> { <hitelesítés-típusa>; };
};

Ez a blokk állítja be a /restart és /die jelszavakat rendre a drpass::restart és a drpass::die direktívákkal. A drpass::restart:: és drpass::die:: lehetőséget ad a jelszavak hitelesítési típusának meghatározására. A jelenleg támogatott hitelesítési típusok a crypt, md5, sha1 és ripemd-160.

Példa:

drpass {
	restart "Imadok-ujrainditani";
	die "Halj-te-buta";
};

4.9 - Include Direktíva

Szintaktika:
include <fájlnév>;

Ez a direktíva meghatároz egy fájlnevet, amely külön konfigurációs állományként betöltésre kerül. A fájl tartalmazhat bármilyen típusú konfigurációs blokkot, és betölthet további fájlokat is. Joker karakterek is engedélyezettek a fájlnévben, hogy több fájl is betölthető legyen egyszerre.

1. példa: egy hálózati fájl

include mynetwork.network;

Ez lenne az utasítás arra, ha külön hálózati fájlt akarnál használni. Külön hálózati fájlokra már nincs szükség; minden hálózati beállítás beszúrható közvetlenül az unrealircd.conf-ba. Vagy rakhatsz egy include utasítást a fájl betöltéséhez.

2. példa: álparancsok

include aliases/ircservices.conf

Egy másik példa alias blokkok betöltésére, az UnrealIRCd-vel együtt jön néhány fájl, ami(nek kellene, hogy) tartalmazza a megfelelő álparancsokat a legtöbb szolgáltatás programhoz:

4.10 - LoadModule Direktíva KÖTELEZŐ

Szintaktika:
loadmodule <fájlnév>;

Lásd itt, miért jók/hasznosak a modulok.

Az Unreal3.2-vel együtt járó szabványos modulok:

commands.so / commands.dll - Minden / parancs (nos, még nem mindegyik, de egyszer majd az lesz) KÖTELEZŐ
cloak.so / cloak.dll - Álcázó modul KÖTELEZŐ (vagy bármilyen más álcázó modul)

Szóval ezt a két modult akarod biztosan betölteni:

loadmodule "src/modules/commands.so";
loadmodule "src/modules/cloak.so";

vagy windows alatt:

loadmodule "modules/commands.dll";
loadmodule "modules/cloak.dll";

4.11 - Log Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

log <fájlnév> {
	maxsize <max-fájl-méret>;
	flags {
		<flag>;
		<flag>;
		...
	};
};

A log blokkal különböző naplófájlokat rendelhetsz különböző célokhoz. A log:: tartalmazza a naplófájl nevét. A log::maxsize egy nem kötelező direktíva, meghatározhatod vele a naplófájl maximális méretét, amelynek elérésével az állomány kiürül, és újraindul a naplózás. Használhatsz mértékegységeket is a méretmegadáshoz: MB-t a megabájtokhoz, KB-t a kilobájtokhoz és GB-t a gigabájtokhoz. A log::flags meghatározza, milyen típusú információ kerüljön ebbe a naplóba. Az alábbiakban láthatod a rendelkezésre álló flagek listáját.

Lehet egyszerre több log blokkod is, hogy különböző dolgokat különböző naplófájlokba naplózzanak.

Felhasználható flagek:
errorsnyilvánvaló
killsnaplózza a /kill értesítéseket
tklnaplózza a *line-okat, a shunokat és a spamszűrőket (hozzáadás/törlés/lejárat)
connectsnaplózza a felhasználói kapcsolódásokat/kilépéseket
server-connectsnaplózza a szerverek kapcsolódásait/kilépéseit
klinenaplózza a /kline használatokat
opernaplózza az operelési kísérleteket (a sikerteleneket és a sikereseket is)
sadmin-commandsnaplózza a /sa* (samode, sajoin, sapart stb.) használatokat
chg-commandsnaplózza a /chg* (chghost, chgname, chgident stb.) használatokat
oper-overridenaplózza az operoverride-ok használatát
spamfilternaplózza a spamszűrők találatait

Példa:

log ircd.log {
	maxsize 5MB;
	flags {
		errors;
		kills;
		oper;
		kline;
		tkl;
	};
};

4.12 - TLD Blokk SZABADON VÁLASZTHATÓ (Előzőleg T:Line néven ismert)

Szintaktika:

tld {
	mask <hostmaszk>;
	motd <motd-fájl>;
	rules <rules-fájl>;
	shortmotd <rövid-motd-fájl>;
	channel <csatornanév>;
	options {
		ssl;
	}
};

A tld blokkal motd-ket, szabályokat és egy csatornát rendelhetsz felhasználókhoz a hostjaik alapján. Ez hasznos, ha különböző motd-t szeretnél különböző nyelvekhez. A tld::mask egy user@host maszk, amire a felhasználó usernevének és hostnevének illenie kell. A tld::motd, a tld::shortmotd és a tld::rules rendre azokat az motd, shortmotd és rules fájlokat határozzák meg, amelyek erre a hostmaszkra vonatkoznak. A tld::shortmotd szabadon választható. A tld::channel szintén, ez utóbbival egy olyan csatornanevet határozhatsz meg, ahová a felhasználó kapcsolódáskor lesz beléptetve. Ha ez meg van adva, felülbírálja az alapértelmezett auto join csatornát. A tld::options blokkal további követelményeket állíthatsz be; jelenleg csak a tld::options::ssl, ami a fájlokat csak SSL felhasználóknak jeleníti meg, és a tld::options::remote, ami a fájlokat csak távoli felhasználóknak jeleníti meg, állnak rendelkezésre.

A TLD bejegyzéseket a szerver alulról felfelé történő sorrendben egyezteti.

Példa:

tld {
	mask *@*.fr;<
	motd "ircd.motd.fr";
	rules "ircd.rules.fr";
};

4.13 - Ban Nick Blokk SZABADON VÁLASZTHATÓ (Előzőleg Q:Line néven ismert)

Szintaktika:

ban nick {
mask <nicknév>; reason <letiltás-indoka>; };

A ban nick block segítségével letilthatod egy nicknév használatát a szerveren. A ban::mask egy joker karaktereket megengedő maszk, amely egyszerre több nicknévre is illeszthető, és a ban::reason határozza meg a letiltás indokát. Ezek a blokkok leginkább azért hasznosak, hogy a hálózati szolgáltatásokban rendszeresen alkalmazott nicknevek használata letilható legyen.

Példa:

ban nick {
	mask "*C*h*a*n*S*e*r*v*";
	reason "Fenntartva a szolgáltatásoknak";
};

4.14 - Ban User Blokk SZABADON VÁLASZTHATÓ (Előzőleg K:Line néven ismert)

Szintaktika:

ban user {
	mask <hostmaszk>;
	reason <kitiltás-indoka>;
};

Ezzel a blokkal letiltható egy user@host maszk szerverre történő kapcsolódása. A ban::mask a kitiltandó user@host maszk, amely joker karaktereket is megenged, és a ban::reason a kitiltás indoka. Megjegyzendő, hogy ez csak egy helyi kitiltás, és emiatt a felhasználó még kapcsolódhat a hálózat más szervereire.

Példa:

ban user {
	mask *tirc@*.saturn.bbn.com;
	reason "Idióta";
};

4.15 - Ban IP Blokk SZABADON VÁLASZTHATÓ (Előzőleg Z:Line néven ismert)

Szintaktika:

ban ip {
	mask <ip-maszk>;
	reason <kitiltás-indoka>;
};

A ban ip blokk letiltja egy IP szerverelérését. Ez magában foglalja mind a felhasználókat és linkelni próbáló szervereket is. A ban::mask paraméter egy IP, amely tartalmazhat joker karaktereket, és a ban::reason a kitiltás indoka. Mivel ez a kitiltás szerverekre is hatással van, célszerű óvatosan használni.

Példa:

ban ip {
	mask 192.168.1.*;
	reason "Szerezz egy valós IP-t, te béna!";
};

4.16 - Ban Server Blokk SZABADON VÁLASZTHATÓ (Előzőleg q:Line néven ismert)

Szintaktika:

ban server {
	mask <szervernév>;
	reason <kitiltás-indoka>;
};

Ez a blokk egy szerver hálózatra kapcsolódási kísérletét tiltja le. Ha a szerver közvetlenül a tiedre kapcsolódik, a linkelés vissza lesz utasítva. Ha egy távoli szerverre linkel, a helyi szerver lekapcsolja a hálózatról. A ban::mask mező egy joker karaktereket megengedő maszk a kapcsolódni próbáló szerver nevére egyeztetéshez, és a ban::reason megadja a kitiltás indokát.

Példa:

ban server {
	mask broken.server.my.network.com;
	reason "Törött!";
};

4.17 - Ban RealName Blokk SZABADON VÁLASZTHATÓ (Előzőleg n:Line néven ismert)

Szintaktika:

ban realname {
	mask <valós-név-maszk>;
	reason <kitiltás-indoka>;
};

A ban realname blokk lehetővé teszi, hogy kitilts egy klients a GECOS (valódi név) mezője alapján. Hasznos a klónáradatok megállítására, mert a klónbotok gyakran használják ugyanazt a valós nevet. A ban::mask a kitiltandó valós név, tartalmazhat joker karaktereket. A ban::reason meghatározza a kitiltás indokát.

Példa:

ban realname {
	mask "Bob*";
	reason "Bob egy szívás!";
};

4.18 - Ban Version Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

ban version {
	mask <verziómaszk>;
	reason <letiltás-indoka>;
	action [kill|tempshun|shun|kline|zline|gline|gzline];
};

A ban version block lehetővé teszi kliensek kitiltását az általuk használt IRC kliens szoftver alapján. A kliensek CTCP version válaszát használja, ezért ha a kliens nem küld vissza CTCP version-t, a letiltás nem fog működni. Az a célja, hogy meggátolja a rosszindulató scripteket. A ban::mask a letiltandó verziót határozza meg. Tartalmazhat joker karaktereket. A ban::reason a letiltás indoka. Ezenkívül megadhatod a kitiltás típusát is a ban::action blokkal: kill az alapértelmezés, a tempshun csak shunolja a felhasználót, amely kiváló a dinamikus IP-vel rendelkező zombik/botok ellen, mert más, ártatlan felhasználókatra nem lesz hatással. A shun/kline/zline/gline/gzline az adott típusú kitiltást állítja be a felhasználó IP címére (*@IPCÍM), amelynek időtartama beállítható a set::ban-version-tkl-time direktívával; alapértelmezés szerint 1 nap.

Példa:

ban version {
	mask "*ValamilyenBenaScript*";
	reason "A ValamilyenBenaScript kiskapukat tartalmaz";
};
ban version {
	mask "*w00tZombie*";
	reason "Utálom azt a sok száz zombit";
	action zline;
};

4.19 - Ban Exceptions Blokk SZABADON VÁLASZTHATÓ (Előzőleg E:Line néven ismert)

Szintaktika:

except ban {
	mask <hostmaszk>;
};

Az except ban blokkal határozhatod meg, mely user@host-ok bírálhatnak felül egy szélesebb maszkra beállított kitiltást. Hasznos, ha egy Internet szolgáltató ki van tiltva, de onnan bizonyos felhasználókat még mindig szeretnél kapcsolódni engedni. Az except::mask direktíva a kapcsolódásra engedélyezett kliens user@host maszkját határozza meg.

Példa:

except ban {
	mask identnev@sajat.szolgaltatom.com;
};

4.20 - TKL Exceptions Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

except tkl {
	mask <hostmaszk>;
	type <típus>;
	type { 
		<típus>;
		<típus>;
		...
	};
};

Az except tkl blokkal meghatározhatod, mely user@host-ok bírálhatnak felül egy szélesebb maszkra beállított tkl kitiltást. Hasznos, ha egy Internet szolgáltató ki van tiltva, de még mindig szeretnéd, hogy onnan kapcsolódhassanak bizonyos felhasználók. Az except::mask direktíva a kapcsolódásra engedélyezett felhasználó user@host maszkja. Az except::type meghatározza, hogy milyen letiltást bírálhat felül a kliens. Érvényes típusok: gline, gzline, qline, gqline és shun, amelyek kivételt képeznek a Gline-okra, globális Zline-okra, Qline-okra, globális Qline-okra és shunokra. Ha a type {} formátumot használod, több típust is megadhatsz.

Példa:

except tkl {
	mask identnev@sajat.szolgaltatom.com;
	type gline;
};

4.21 - Throttle Exceptions Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

except throttle {
	mask <ipmaszk>;
};

Az except throttle blokkal határozhatod meg, mely IP címek bírálhatják felül az elfojtási rendszert (throttling system). Csak akkor működik, ha engedélyezted az elfojtást. Az except::mask egy IP maszkot határoz meg, amely nem lesz adott időn belül többszörös kapcsolódás miatt bannolva.

Példa:

except throttle {
	mask 192.168.1.*;
};

4.22 - Deny DCC Blokk SZABADON VÁLASZTHATÓ (Előzőleg dccdeny.conf-ként ismert)

Szintaktika:

deny dcc {
	filename <blokkolandó-fájlnév>;
	reason <letiltás-indoka>;
	soft [yes|no];
};

A deny dcc blokkal megadhatod olyan fájlok nevét, amelyek nem engedélyezettek a szerveren DCC-n keresztüli küldésre. Ez nagyon hasznos a trójai lovak és vírusok terjesztésének megállítására.

A deny::filename paraméter egy joker karaktereket megengedő maszk annak a fájlnak a nevére, amelynek a küldése letiltandó, és a deny::reason adja meg az indokot, hogy a fájl miért van blokkolva.

Van még egy deny::soft opció is (gyenge letiltás); ha "yes"-re állítod, a dcc mindaddig blokkolva lesz, mígnem a felhasználó kimondottan engedélyezi a /DCCALLOW +küldő-nickneve paranccsal.   A dccallow.conf-ban találhatsz egy jó példát dccallow konfigurációra.

Példa:

deny dcc {
	filename virus.exe;
	reason "Ez egy GD Virus";
};

deny dcc {
	filename "*.exe";
	reason "Futtatható tartalom";
	soft yes;
};

4.23 - Deny Version Blokk SZABADON VÁLASZTHATÓ (Előzőleg V:Line néven ismert)

Szintaktika:

deny version {
	mask <szervernév>;
	version <verziószám>;
	flags <fordítási-flagek>;
};

Ezzel a blokkal szerverek linkelését tilthatod le az általuk futtatott Unreal verzió és a fordításidejű opcióik alapján. A blokk formátuma egy kissé összetett, de nem nehéz megérteni. A deny::mask direktíva egy joker karaktereket megengedő maszk arra a szervernévre, amire vonatkozik a letiltás. A deny::version a letiltandó szerverek verzióinak protokollszámát határozza meg.

Például a 3.0-ás verzió a 2301-as, 3.1.1/3.1.2 a 2302-as, valamint a 3.2 a 2303-as protokollszámhoz tartozik. Az első karakter lehet >, <, = vagy !. Ez a karakter mondja meg az IRCd-nek, hogyan értelmezze a verziót. Ha az első karakter >, minden olyan verzió tiltott, ami az utána megadott verziónál nagyobb; ha <, a nála kisebb verziók tiltottak, ha =, csak az a verzió tiltott, és ha !, a megadottat kivéve minden verzió tiltott. A deny::flags direktívával meghatározhatod, hogy milyen fordításidejű opciókat reprezentáló flagei lehetnek vagy nem lehetnek a szervernek. A flagek legyenek egymás mellett, elválasztás nélkül. Ha egy karaktert megelőz egy !, akkor az azt jelenti, hogy ez a flag nem szerepelhet a szerver fordítási flagjei között, ha pedig nincs előtte ! prefix, akkor a szervernek kell, hogy legyen ilyen flagje.

4.24 - Deny Link Blokk SZABADON VÁLASZTHATÓ (Előzőleg D/d:Line néven ismert)

Szintaktika:

deny link {
	mask <szervernév>;
	rule <crule-kifejezés>;
	type <letiltás-típusa>;
};

Ezzel a blokkal meghatározott szabályok alapján tiltható le egy szerver linkelése. A deny::mask egy joker karaktereket megengedő maszk annak a szervernek a nevére, amelyre ezt a szabályt alkalmazod. A deny::rule direktíva nagyon összetett, de hasznos: ún. crule kifejezésekkel részletesen szabályozható a linkelés, és programozásszerű kifejezésekkel állítható fel. Négy operátor áll rendelkezésre: connected(<szervermaszk>), ami igazat ad vissza, ha a szervermaszkra illő szerver kapcsolatban van a hálózattal, directcon(<szervermaszk>), ami igazat ad vissza, ha a szervermaszkra illő szerver közvetlen kapcsolatban van a szerverrel, via(<viamaszk>,<szervermaszk>), ami igazat ad vissza, ha a szervermaszkra illő szervert a viamaszkra illő szerver kapcsolta a hálózatra, és a directop(), ami igazat ad vissza, ha a /connect parancsot kiadó IRC operátor közvetlen kapcsolatban van a helyi szerverrel. Ezek az operátorok összekapcsolhatóak a && (és) valamint a || (vagy) műveletekkel, továbbá az egyes elemek zárójelek közé tehetőek, hogy csoportosíthatóak legyenek. Ezenkívül ha egy operátort megelőz egy ! művelet, azt ellenőrzi, hogy az operátor hamis értéket adott-e vissza. Ha az egész kifejezés igaz értékű, a linkelés le lesz tiltva. A deny::type két különböző értéketű lehet: auto (csak automatikus kapcsolódásokra vonatkozik, a /connect továbbra is működni fog) és all (minden kapcsolódási kísérletre érvényes).

4.25 - Deny Channel Blokk SZABADON VÁLASZTHATÓ (Előzőleg chrestrict.conf-ként ismert)

Szintaktika:

deny channel {
	channel "<csatornamaszk>";
	reason <letiltás-indoka>;
	redirect "<csatornanév>";
	warn [on|off];
};

A deny channel blokkal tiltható le felhasználók belépése bizonyos csatornákra. A deny::channel direktíva egy joker karaktereket megengedő maszk azokra a csatonákra, amelyekbe a felhasználók nem léphetnek be, és a deny::reason megadja, miért nem engedélyezett a belépés. Továbbá megadhatsz egy deny::redirect paramétert is. Ha megadod, az ezen deny::channel blokkra illő csatornákra belépni próbáló felhasználókat átirányítja a deny::redirect csatornára. És van még egy deny::warn paraméter is, ami (ha "on" értékű) küld egy operátori értesítést (az EYES snomaskra), ha a felhasználó belépéssel próbálkozik.

Példa:

deny channel {
	channel "#azunrealegyszopacs";
	reason "Nem, nem igaz!";
};

deny channel {
	channel "#*teen*sex*";
	reason "Te == halott";
	warn on;
};

deny channel {
	channel "#operhelp";
	reason "A mi hálózati segélycsatornánk a #help, nem az #operhelp";
	redirect "#help";
};

4.26 - Allow Channel Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

allow channel {
	channel "<csatornamaszk>";
};

Az allow channel blokkal meghatározhatod, mely csatornákra léphetnek be a felhasználók, ha a belépést korlátozza egy deny channel blokk. Az allow::channel direktíva egy joker karaktereket megengedő maszk azokra a csatornákra, amelyekre a belépés engedélyezett.

Példa:

allow channel {
	channel "#valami";
};

4.27 - Allow DCC Blokk   SZABADON VÁLASZTHATÓ

Szintaktika:

allow dcc {
	filename "<fájlnév-maszk>";
	soft [yes|no];
};

Az allow dcc blokkal adhatsz meg deny dcc blokkokon felüli kivételeket; joker karakterek engedélyezettek. Ha az allow dcc::soft "yes"-re van állítva, a "gyenge dcc letiltások" listájára vonatkozik, ha pedig "no"-ra, a normális ("szigorú") dcc letiltásokéra.

Példa:

allow dcc {
	filename "*.jpg"; /* A képek rendszerint biztonságosak */
	soft yes;
};

4.28 - Vhost Blokk SZABADON VÁLASZTHATÓ (Előzőleg vhosts.conf-ként ismert)

Szintaktika:

vhost {
	vhost <vhost>;
	from {
		userhost <hostmaszk>;
		userhost <hostmaszk>;
		...
	};
	login <bejelentkező név>;
	password <jelszó> { <hitelesítés-típusa>; };
	swhois "<swhois információ>";
};

A vhost blokkal állíthatsz be olyan név/jelszó párokat, amelyek a /vhost paranccsal együtt használhatóak virtuális hostnevek szerzéséhez. A vhost::vhost paraméter lehet vagy egy user@host vagy csak egy host, amit a felhasználó sikeres /vhost-olás után kap. A vhost::from::userhost egy user@host-ot tartalmaz, amire a felhasználónak illenie kell, hogy jogosult legyen a vhosthoz. Megadhatsz egynél több hostmaszkot is. A vhost::login a felhasználó bejelentkező neve, és a vhost::password a hozzá tartozó jelszó, amelyeket a felhasználónak be kell írnia. A vhost::password:: arra ad lehetőséget, hogy meghatározd a jelszó kódolásának/hitelesítésének típusát. A jelenleg támogatott típusok a crypt, md5, sha1 és ripemd-160. Végül a vhost::swhois egy kiegészítő sort ad a felhasználó whois adataiba, pontosan úgy, mint az oper blokk oper::swhois direktívájában.

Példa:

vhost {
	vhost az.en.sajat.szemelyes.vhostom.com;
	from {
		userhost egyik@szolgaltatom.com;
		userhost masik@szolgaltatom.com;
	};
	login nicknevem;
	password jelszavam;
	swhois "Én lenni különleges";
};

4.29 - Badword Blokk SZABADON VÁLASZTHATÓ (Előzőleg badwords.*.conf-ként ismert)

Szintaktika:

badword <típus> {
	word <illesztési-szöveg>;
	replace <csereszöveg>;
	action <replace|block>;
};

A badword blokkal kezelheted a +G felhasználói és csatornamódhoz használt, "csúnya szavak" szűrésére szolgáló listát. A badword:: meghatározza csúnya szó a típust; érvényes típusok a channel, message, quit és all. A channel a csatornabeli +G listára vonatkozik, a message a felhasználói +G listára, a quit a kilépő üzeneteket cenzúrázza, végül az all mindhárom listára felveszi a csúnya szót. A badword::word lehet egy egyszerű (rész)szó vagy egy reguláris kifejezés, amire a keresést végzi a szerver. A badword::replace az, amire a találatot cseréljük. Ha a badword::replace-t kihagyod, a szó a <censored>-ra lesz cserélve. A badword::action megmondja, mi legyen a teendő, ha egy csúnya szóra találat van. Ha replace az értéke, csere történik; ha block, az egész üzenet blokkolva lesz. Ha nem adsz meg badword::action-t, a replace lesz feltételezve.

Példa:

badword channel {
	word szar;
	replace sz@r;
};

4.30 - ULines Blokk SZABADON VÁLASZTHATÓ (Előzőleg U:Line néven ismert)

Szintaktika:

ulines {
	<szervernév>;
	<szervernév>;
	...
};

Ezzel a blokkal különleges képességekkel ruházhatsz fel bizonyos szervereket. Csak olyan szerverekre célszerű használni, mint a szolgáltatások és a statisztikák. Egy normál szerverre nem érdemes beállítani. A blokk minden eleme egy-egy szerver neve, amelyek a különleges jogokat kapják.

Példa:

ulines {
	services.sajátnet.com;
	stats.sajátnet.com;
};

4.31 - Link Blokk SZABADON VÁLASZTHATÓ (Előzőleg C/N/H:Line-okként ismert)

Szintaktika:

link <szervernév> {
	username <usermaszk>;
	hostname <ipmaszk>;
	bind-ip <ip-ahová-bindeljen>;
	port <port-ahová-kapcsolódjon>;
	password-connect <kapcsolódási-jelszó>;
	password-receive <beérkező-jelszó> { <kódolás-típusa>; };
	hub <hub-maszk>;
	leaf <leaf-maszk>;
	leafdepth <mélység>;
	class <osztálynév>;
	ciphers <ssl-kódoló-algoritmusok>;
	options {
		<opció>;
		<opció>;
		...
	};
};

Erre a blokkra van szükséged szerverek linkeléséhez. Kérlek, szakíts egy kis időt ennek az egésznek az elolvasására, mert ez egyike azon legnehezebb dolgoknak, amelyeket a felhasználók gyakran elhibáznak ;P

Először is, a szervernév a távoli szervered neve, az a név, amely a távoli szerver me { } blokkjában van beállítva, mint a hub.blah.com (nem az IP cím, és a gazdanévtől is eltérő lehet).

username
Megadhatod ezt, ha identet használsz a felhasználónevek hitelesítésre, közönséges esetben állítsd "*"-ra.

hostname
A távoli szerver gazdaneve vagy IP címe. Ezt használjuk a kapcsolódáshoz ÉS a beérkező oldal hitelesítéséhez/érvényesítéséhez is. Néhány példa:
1.2.3.4 közönséges IP
hub.blah.com gazdanév: csak kimenő kapcsolatokra, nem tud _beérkező_ kapcsolatokat fogadni, amíg a link::options::nohostcheck nincs beállítva
* KIMENŐ kapcsolatokra alkalmatlan, de bárhonnan fogad szerverkapcsolódást (a megfelelő jelszóval)
::ffff:1.2.3.4 ipv6-ról ipv4-re linkeléshez.

bind-ip (szabadon választható)
Arra használható, hogy a szerver egy megadott IP-re bindeljen (pl. 192.168.0.1-re), ahonnan kellene kapcsolódnia, szinte soha nincs szükség rá.

port
Azon port száma, ahová kapcsolódjon a szerver (amelyen a távoli szerver figyeli a kapcsolódásokat).

password-connect
A távoli szerverre kapcsolódáskor használt jelszó, egyszerű szövegnek kell lennie.

password-receive
A beérkező linkek érvényesítéséhez használt jelszó, lehet titkosított (érvényes kódolási típusok a crypt, md5, sha1 és ripemd-160). A kódolás-típusa paramétert kihagyhatod, hogy csak egyszerű szöveget használj. Gyakran megegyezik ez a jelszó a password-connect-tel.

hub vs leaf
A hub linkelhet egyszerre több szervert is, amíg a leafnek csak egy linkje lehet... hozzád. Egy szerver vagy hub, vagy leaf, ezek együtt nem használhatóak.

hub (szabadon választható)
Az értéke egy maszk azokra a szerverekre, amelyekre ez a hub kapcsolódhat (pl: *.sajat.net).

leaf (szabadon választható)
Az értéke egy maszk azokra a szerverekre, amelyek felé ez a szerver leafként viselkedik.

leaf-mélység (szabadon választható)
Ha ezt megadod, a leaf opciót is célszerű megadnod. Ez az érték azt a mélységet (ugrások számát) határozza meg, amely alá ez a szerver nem léphet.

class
Azon kapcsolati osztály, ahová helyezzük a szervert. Ehhez gyakran egy külön szerver osztályt szokás használni.

compression-level (szabadon választható)
Megadja ezen link tömörítési szintjét (1-9). Csak akkor szokás használni, ha a link::options::zip be van állítva.

ciphers (szabadon választható)
Meghatározza, milyen SSL kódoló/visszafejtő algoritmusok (cipherek) legyenek használatban ehhez a linkhez. A rendelkezésre álló algoritmusok listájának eléréséhez használd az `openssl ciphers` parancsot. Az algoritmusokat ":"-tal elválasztott felsorolásként add meg.

options blokk
Egy vagy több opció használatának beállítására szolgál. Néha nincs szükség rá.
ssl ha SSL portra kapcsolódsz.
autoconnect a szerver próbálkozni fog az automatikus kapcsolódással, a class::connfreq-ben beállított időközönként (a legjobb, ha ezt csak egy oldalról engedélyezed, mint a leaf->hub linkeléseknél)
zip ha tömörített (zip) linkeket akarsz; ehhez szükség van a szerverbe belefordítt zip link támogatásra + ezen opció beállítására mindkét oldalon
nodnscache ne használjon gyorsítótárat a kimenő szerverkapcsolat IP címére; használd ezt gyakran változó gazdanevek (például dyndns.org) esetén.
nohostcheck ne érvényesítse a távoli gazdanevet (link::hostname); használd ezt gyakran változó gazdanevek (például dyndns.org) esetén.
quarantine az operátorok ezen a szerveren helyi operátorokként funkcionálnak

Példa:

link hub.sajatnet.com {
	username *;
	hostname 1.2.3.4;
	bind-ip *;
	port 7029;
	hub *;
	password-connect "LiNk";
	password-receive "LiNk";
	class servers;
	options {
		autoconnect;
		ssl;
		zip;
	};
};

4.32 - Alias Blokk SZABADON VÁLASZTHATÓ

Szintaktika [szabványos álparancsokra]:

alias <név> {
	target <ahová-továbbítsa>;
	type <álparancs-típusa>;
};

(Megjegyzés: lásd még az include direktívát az UnrealIRCd szabványos álparancsokat tartalmazó fájljairól.)

Az alias blokk [szabványos álparancsokra] lehetővé teszi, hogy parancsokat továbbíts egy felhasználóhoz, például hogy a /chanserv üzenetet küldjön a chanserv felhasználónak. Az alias:: meghatározza azt a parancsnevet, ami lesz az álnév (pl.: chanserv). Az alias::target egy nick- vagy csatornanév, ahová a parancs továbbítva lesz. Ha az alias:: ugyanaz, mint a továbbítási célpont, az alias::target elhagyható. Az alias::type meghatározza az álparancs típusát; érvényes típusok: services (a felhasználó egy szolgáltatás szerveren van), stats (a felhasználó egy statisztikai szerveren van), normal (a felhasználó egy közönséges felhasználó bármilyen szerveren), és channel (a célpont egy csatornanév). Az alias blokknak van más célja is, amit az alábbiakban magyarázunk el.

Szintaktika [formázott álparancsokra]:

alias <név> {
	format <reguláris-kifejezés> {
		target <ahová-továbbítsa>;
		type <álparancs-típusa>;
		parameters <paraméter-sztring>;
	};
	format <reguláris-kifejezés> {
		...
	};
	type command;
};

Amikor az alias blokkot ebben a formában használod, lehetőséget ad egy sokkal szélesebb körű alkalmazásra. Például készíthetsz olyan álparancsokat is, mint az /identify. Az alias:: ugyanaz, mint fent, az álparancs neve. Az alias::format blokkok értékei reguláris kifejezések, amelyek az álparancshoz küldött szöveggel lesznek összehasonlítva, és ha az egyik illik rá, annak az alias::format-nak az albejegyzései lesznek használatban. Lehet egyszerre több alias::format-od is, hogy a parancs különböző dolgokat tegyen a neki küldött szövegtől függően. Az alias::format::target az álparancs továbbításának célpontja. Az alias::format::type meghatározza az előbbi nicknevű felhasználó típusát. Az alias::format::parameters az, ami megmondja, milyen paraméterek legyenek elküldve a felhasználóhoz. Hogy hivatkozz az álparancshoz küldött paraméterek egyikére, írj egy % jelet egy azt követő számmal, például %1 az első paraméter. Lehetőséged van arra is, hogy hivatkozz egy adott paramétertől kezdődően az üzenet végéig tartó összes paraméterre, ehhez írj be egy % jelet, majd egy számot és egy - jelet, például a %2- visszaadja az összes paramétert a másodiktól kezdődően az utolsóig. Hasonló különleges célt szolgál még a %n is, amit helyettesíteni fog annak a felhasználónak a neve, aki kiadta a parancsot. A formázott álparancsokra vonatkozóan példákat találhatsz a doc/example.conf-ban.

4.33 - Help Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

help <név> {
	<szövegsor>;
	<szövegsor>;
	...
};

(Megjegyzés: szokás csak betölteni a help.conf-ot)

A help blokkal készíthetsz bejegyzéseket a /helpop parancshoz. A help:: az az érték, amit a /helpop-nak kell átadni paraméterként; ha a help:: ki van hagyva, a blokk akkor lesz használatban, amikor a /helpop-nak semmilyen paraméter nincs átadva. A help blokk bejegyzései az a szöveget határozzák meg, amely megjelenik a felhasználó előtt, ha a /helpop parancsot adja ki.

4.34 - Official Channels Blokk SZABADON VÁLASZTHATÓ

Szintaktika:

official-channels {
	"#channel" { topic "Az alapértelmezett téma"; };
};

A hivatalos csatornák (official channels) akkor is megjelennek a /list-ben, ha nincsenek felhasználók a csatornán. A topic kihagyható, és csak akkor mutatja a /list, ha a csatornának 0 felhasználója van.

Példa:

official-channels {
	"#Help" { topic "A hivatalos segélycsatorna; ha nincs jelen senki, írd be: /helpop segíts"; };
	"#Home";
	"#Main" { topic "A főcsatorna"; };
};

4.35 - Spamfilter Blokk SZABADON VÁLASZTHATÓ

A spamfilter blokkal vehetsz fel helyi spamszűrőket (nem hálózati szintűeket).
Lásd a Featúrák - A spamszűrő szekciót további információért.

Szintaktika:

spamfilter {
	regex <szó>;
	target { <célpont(ok)> };
	action <tevékenység>;
	reason <indok>;
	ban-time <időtartam>;
};

A regex egy reguláris kifejezés, amely alapján keresünk.
A target meghatározza, hol történjen a szűrés; lásd itt a célpontok lehetséges típusait (példa: "channel").
Az action eldönti, mi történjen találat esetén, lásd itt a lehetséges tevékenységek listáját (példa: "gline").
A reason kihagyható, a kitiltás vagy a blokkolás indoklószövegének beállítására szolgál; ha nincs megadva, az alapértelmezés lesz használatban.
A ban-time sem kötelező, megadja a *line kitiltások lejárati idejét; ha kihagyod, az alapértelmezés lesz használatban (1 nap).

Példák:

spamfilter {
	regex "Come watch me on my webcam";
	target { private; channel; };
	action gline;
	reason "Fertőzött vagy, kérlek menj el a www.antivirus.xx/blah/virus=GrrTrojan címre!";
	ban-time 6h;
};

spamfilter {
	regex "come to irc\..+\..+";
	target { private; channel; };
	action gline;
	action gline;
	reason "A spam nem engedélyezett";
};

4.36 - Set Blokk KÖTELEZŐ (Előzőleg unrealircd.conf-ként/hálózati fájlként ismert)

A set fájl az, ami régebben a networks/unrealircd.conf-unk és a hálózati fájlunk szokott lenni. Egyszerveres hálózatokon, inkább, mint hogy legyen 3 fájlod, egyszerűen beillesztheted a set utasításokat az unrealircd.conf-ba, többszerveres hálózatokon viszont még mindig ajánlott a hálózati fájl használata.

Ha a szervered egy hálózaton van, igen valószínű, hogy alapvetően ugyanazokat a Set beállításokat használjátok. Ezért van több értelme, hogy legyen egy hálózati fájlod, amit betöltesz az include direktívával. Az alábbiakban megtalálod az összes rendelkezésre álló set direktívát.

Ebben a dokumentumban a beállításokra / direktívákra a <blokknév>::<blokk-direktíva> formában hivatkozunk. Ez NEM az a formátum, amelyet beírhatsz a beállításfájlba! Át KELL alakítanod az alábbi példa szerint. Azért jelenítjük meg őket ebben a formában, hogy könnyebben beszélhessünk róluk.

Szintaktika:

set {
	<bejegyzés> <érték>;
	<bejegyzés> <érték>;
	...
};

A set block egyedi szervertulajdonságokat állít be. Minden bejegyzés különböző dolgot csinál, ezért mindegyikről adunk leírást. Némely direktívának alblokkjai vannak, amelyekről szintén írunk. Sok set utasítás van, amelyekről beszélhetünk, és minden, lent felsorolt direktíva EGYETLEN set utasításba foglalható. Ha egy direktívának opciói vannak, azok is belefoglalhatóak egyetlen set utasításba.
Példa:

set {
	kline-address sajat@emailcimem.com;
	auto-join #istenhozott;
	options {
		hide-ulines;
	};
	hosts {
		local LocalOp.SajatNet.com;
		global globalop.sajatnet.com;
	};
};

Ha most a set utasításokat el szeretnéd különíteni, mondjuk, egyetlen sorba akarnád írni az opciókat, így nézne ki:
Példa:
set { options { hide-ulines; no-stealth; }; };

set::kline-address <email-address>;
Az az email cím, ahová küldhetők a K:line-nal kapcsolatos kérdések. Ezt az értéket kötelező megadni.

set::modes-on-connect <+módok>;
Azok a módok, amelyek kapcsolódáskor lesznek beállítva a felhasználókon.

set::snomask-on-connect <+módok>
Azok a snomaskok, amelyek kapcsolódáskor lesznek beállítva a felhasználókon.

set::modes-on-oper <+módok>;
Azok a módok, amelyek /oper-eléskor lesznek beállítva a felhasználókon.

set::snomask-on-oper <+módok>;
Azok a snomaskok, amelyek /oper-eléskor lesznek beállítva a felhasználókon.

set::modes-on-join <+módok>;
Azok a módok, amelyek akkor lesznek beállítva egy csatornán, amikor létrehozzák. Nem minden mód állítható be ezzel az utasítással. A +qaohvbeOAzlLk módok NEM állíthatóak be ezzel az utasítással.

set::restrict-usermodes <módok>
Korlátozza a felhasználókat az itt felsorolt csatornamódok beállításában/törlésében. (Ne használj + vagy - jelet.)
Például beállíthatod a "+G"-t a "modes-on-connect"-ben és a G-t a "restrict-usermodes"-ben, ily módon minden felhasználóra ráeröltetheted a +G módot úgy, hogy ne tudják törölni.

set::restrict-channelmodes <módok>
Korlátozza a felhasználókat az itt felsorolt csatornamódok beállításában/törlésében. (Ne használj + vagy - jelet.)
Például beállíthatod a "+G"-t a "modes-on-join"-ban és a G-t a "restrict-channelmodes"-ben, ily módon minden (új) csatornára ráeröltetheted a +G módot úgy, hogy ne tudják törölni.
MEGJEGYZÉS: lehet, hogy ezek a csatornamódok még mindig használhatóak IRC szolgáltatásokon keresztül az MLOCK alkalmazásával. Sajnos mi nem tudunk sokat tenni ezügyben, a szolgáltatás fejlesztőket kellene megkérned, hogy megvalósítsanak egy restrict-channelmodes featúrát is.

set::restrict-extendedbans <típusok|*>
Nem ad engedélyt a felhasználóknak egyetlen kiterjesztett ban típus használatára sem ("*"), vagy csak bizonyos típusokat utasít vissza (pl.: "qc").

set::auto-join <csatornák>;
Azon csatorná(k), ahová a felhasználó be lesz léptetve kapcsolódáskor. Egynél több csatorna megadásához használj vesszővel elválaszott felsorolást.
[Megjegyzés: ne felejts idézőjelekt hozzátenni, pl. így: auto-join "#csatorna";]

set::oper-auto-join <csatornák>;
Azon csatorná(k), ahová a felhasználó be lesz léptetve /oper-eléskor. Egynél több csatorna megadásához használj vesszővel elválasztott felsorolást.
[Megjegyzés: ne felejts el idézőjeleket hozzátenni, pl. így: oper-auto-join "#csatorna";]

set::anti-spam-quit-message-time <időérték>;
Egy időérték annak az időmennyiségnek a meghatározására, amennyit a felhasználónak el kell tölteni a szerveren, hogy a /quit üzenete megjelenjen. Spamok megelőzésére használható. Az időérték egy numerikus sztring a napot jelentő "d", az órát jelentő "h", a percet jelentő "m" és a másodpercet jelentő "s" karakterekkel. Például az 1d2h3m jelentése 1 nap, 2 óra és 3 perc.

set::prefix-quit <kilépési-üzenet-előtti-szöveg>;
Beállítja, hogy milyen szöveg legyen a kilépési üzenetek elé szúrva. Ha ez az érték 0-ra van állítva, a szabványos "Quit:" lesz használatban.

set::static-quit <kilépési-üzenet>;
Beállít egy statikus kilépési üzenetet, amely mindannyiszor el lesz küldve, valahányszor egy kliens a hálózatból kilép. Ez szükségtelenné teszi az "anti-spam-quit-message-time"-ot éppúgy, mint a "set::prefix-quit"-et. Ez NEM fogja a HIBAÜZENETEKET kicserélni a static-quit üzenettel.

set::static-part <no|yes|lelépési-üzenet>;
A "yes" érték szűr minden lelépési üzenetet, a "no" értékkel a lelépések a szokásos módon működnek, minden más part üzenetként lesz felhasználva (pl.: static-part "Bye!"), de ez meglehetősen idegesítő tud lenni, úgyhogy óvatosan használd.

set::who-limit <határ>;
Beállítja a /who által visszaadott találatok legnagyobb megengedett számát. Ha ezt az opciót kihagyod, nem lesz korlátozás.

set::silence-limit <határ>;
Beállítja a SILENCE lista bejegyzéseinek legnagyobb megengedett számát. Ha ez a direktíva nincs jelen, 15 lesz beállítva.

set::oper-only-stats <flaglista>;
Megad egy elválasztójelek nélküli, stats flagekből álló felsorolást, amely meghatározza, mely stats flageket használhatnak csak operátorok. Hagyd ki ezt az értéket, hogy engedélyezd a felhasználóknak az összes flag használatát, vagy írj *-ot, hogy egy flaget se használhassanak. Itt csak rövid stats flagek adhatóak meg.

set::oper-only-stats {<stats-flag>; <stats-flag>;};
Azon stats flagek listáját határozza meg, amelyeket csak operátorok használhatnak. Ez a megadási mód csak hosszú flagnevekkel működik.

set::maxchannelsperuser <csatornák-száma>;
Meghatározza, hogy egyidejűleg legfeljebb hány csatornára léphet be egyetlen felhasználó.

set::maxdccallow <bejegyzések-száma>;
Meghatározza, hogy legfeljebb hány bejegyzés szerepelhet egy felhasználó DCCALLOW listáján.

set::channel-command-prefix <parancs-előtagok>;
Meghatározza a csatornabeli services parancsok előtag karaktereit. Azok az üzenetek, amelyek az itt megadott karakterek bármelyikével kezdődnek, még olyan kliensekhez is el lesznek küldve, amelyek a +d móddal rendelkeznek. Az alapérték "`".

set::allow-userhost-change [never|always|not-on-channels|force-rejoin]
Meghatározza, hogy mi történjen, ha az user@host megváltozik (+x/-x/chghost/chgident/setident/vhost/stb. esetén).
A never letiltja mindegyik parancsot, az always akkor is engedélyezi, ha a felhasználó csatorná(k) tagja (szinkronhibát okozhat) [alapértelmezés], a not-on-channels csak akkor engedi, ha nem lépett be egy csatornára sem, és a force-rejoin arra készteti a felhasználót, hogy újra lépjen be minden csatornára, és visszaadja a csatornajogait, ha szükséges.

set::options::hide-ulines;
Ha ez jelen van, az Uline-os szerverek el lesznek rejtve a nem operátorok által kiadott /links lekérdezésekben.

set::options::flat-map;
 Ha ez jelen van, a /map-ben és a /links-ben minden szerver úgy jelenik meg, mintha közvetlenül a helyi szerverhez lenne linkelve, ily módon többé nem lesz látható, melyik szerver melyikhez kapcsolódott. Ez egy kis segítség a (D)DoS támadások ellen, mert a rosszindulatú emberek már nem láthatják a "gyenge pontokat".

set::options::show-opermotd;
Ha jelen van, az opermotd el lesz küldve a felhasználóknak minden sikeres /oper-eléskor.

set::options::identd-check;
Ha jelen van, az UnrealIRCd ellenőrizni fogja az identd szerver jelenlétét, és a visszaadott értéket alkalmazza felhasználónévként. Ha nem kap ident választ, vagy az identd szerver nem létezik, a felhasználó által megadott felhasználónév elé egy ~ jelet tesz. Ha ezt az értéket kihagyod, nem végez ilyen ellenőrzést.

set::options::show-connect-info;
Ha jelen van, az "ident lekérdezéseket", "gazdanév kikereséseket" stb. jelző értesítések megjelennek, ha egy felhasználó kapcsolódik.

set::options::dont-resolve;
Ha jelen van, a beérkező felhasználók gazdanevei nem lesznek lekérdezve. Hasznos lehet a kapcsolódások felgyorsításához, ha sok felhasználónak nincs gazdaneve.
Megjegyzendő, hogy a lekérdezések elvégzése nélkül gazdanév alapú allow blokkjaid értelmüket vesztik.

set::options::mkpasswd-for-everyone;
Az /mkpasswd használatát mindenki számára engedélyezi, nem csak operátoroknak. Ezen parancs nem-oper használatáról értesítést küld az EYES snomaskra.

set::options::allow-part-if-shunned;
Engedélyezi a shunolt felhasználóknak a /part használatát.

set::dns::timeout <időérték>;
Egy időérték azon időhossz meghatározására, ami alatt a DNS szervernek válaszolni kell, mielőtt időkifutás történik. Az időérték egy numerikus sztring a napot jelentő "d", az órát jelentő "h", a percet jelentő "m" és a másodpercet jelentő "s" karakterekkel. Például az 1d2h3m jelentése 1 nap, 2 óra és 3 perc.

set::dns::retries <próbálkozások-száma>;
Egy számérték, amely meghatározza, hányszor történjen újrapróbálkozás a DNS lekérdezésben, ha hiba fordul elő.

set::dns::nameserver <dns-szerver-neve>;
Meghatározza a DNS lekérdezésekhez használt szerver gazdanevét.

set::network-name <hálózat-neve>;
Meghatározza azon hálózat nevét, amelyen ez a szerver fut. Ez az érték legyen a hálózat minden szerverén pontosan ugyanaz.

set::default-server <szervernév>;
Meghatározza, hogy mi legyen annak az alapértelmezett szervernek a neve, ahová legyenek utasítva a felhasználók, ha ez a szerver tele van.

set::services-server <szervernév>;
Meghatározza azon szerver nevét, ahová a services botok kapcsolódtak. Kötelező; állíts be valami services.sajátnet.com-hoz hasonlóra, ha nincs servicesed.

set::stats-server <szervernév>;
Beállítja azon szerver nevét, ahol a statisztikai bot tartozkodik. Ha nem fut statisztikai szerver, ez az érték kihagyható.

set::help-channel <network-help-channel>;
Beállítja e hálózat segélycsatornájának nevét.

set::cloak-keys { "kulcs1"; "kulcs2"; "kulcs3"; };
Beállítja a +x gazdanevek generálásához használandó kulcsokat. Ezeknek a kulcsoknak a hálózat minden szerverén azonosnak kell lenniük, különben a szerverek nem fognak linkelni. Mind a 3 set::cloak-keys:: érték legyen egy-egy 5-100 karakterből álló sztring (10-20 között kiváló), amely kisbetűkből (a-z), nagybetűkből (A-Z) és számokból (0-9) áll. Megjegyzendő, hogy az általad betöltött álcázó modultól függően más szabályok lehetnek érvényben.

set::hiddenhost-prefix <előtag>;
Meghatározza a rejtett (+x) gazdanevek előtagját. Ez általában a hálózat nevét ábrázoló három vagy négy betű.

set::hosts::local <locop-gazdanév>;
Meghatározza azt a gazdanevet, amit a +x beállításakor kapnak a helyi operátorok. Igény szerint megadható egy username@host ehhez az értékhez.

set::hosts::global <globop-gazdanév>;
Meghatározza azt a gazdanevet, amit a +x beállításakor kapnak a globális operátorok. Igény szerint megadható egy username@host ehhez az értékhez.

set::hosts::coadmin <coadmin-gazdanév>;
Beállítja azt a gazdanevet, amit a +x beállításakor kapnak a társ-adminisztrátorok. Igény szerint megadható egy username@host ehhez az értékhez.

set::hosts::admin <admin-gazdanév>;
Meghatározza azt a gazdanevet, amit a +x beállításakor kapnak az adminisztrátorok. Igény szerint megadható egy username@host ehhez az értékhez.

set::hosts::servicesadmin <servicesadmin-gazdanév>;
Beállítja azt a gazdanevet, amit a +x beállításakor kapnak a services adminisztrátorok. Igény szerint megadható egy username@host ehhez az értékhez.

set::hosts::netadmin <netadmin-gazdanév>;
Beállítja azt a gazdanevet, amit a +x beállításakor kapnak a hálózati adminisztrátorok. Igény szerint megadható egy username@host ehhez az értékhez.

set::hosts::host-on-oper-up <yes/no>;
Ha "yes"-re állítod, a H/get_host operflag figyelembe lesz véve, és a +x automatikusan be lesz állítva /oper-eléskor. Ha "no" az értéke, a felhasználónak saját magának kell beállítania a +x módot, hogy megkapja az operátori gazdanevet.

set::ssl::egd <fájlnév>;
Engedélyezi az EGD (Entropy Gathering Daemon) támogatást. Ha OpenSSL 0.9.7 vagy későbbi verziót használsz, a /var/run/egd-pool, /dev/egd-pool, /etc/egd-pool és /etc/entropy fájlokat keresi alapértelmezésként, így fájlnév nem szükséges, egyszerűen megadhatod a set::ssl::egd-t érték nélkül. Ha az OpenSSL-nek egy 0.9.7-nél régebbi verzióját használod, vagy egy olyan EGD socketet akarsz használni, amely nem a fent felsorolt helyek egyikén található, megadhatod azon UNIX Domain Socket fájlnevét, ahol az EGD figyeli a kapcsolódásokat.

set::ssl::certificate <fájlnév>;
Meghatározza azt a fájlnevet, ahol a szerver SSL tanúsítványa tartozkodik.

set::ssl::key <fájlnév>;
Meghatározza azt a fájlnevet, ahol a szerver privát SSL kulcsa tartozkodik.

set::ssl::trusted-ca-file <fájlnév>;
Meghatározza azt a fájlnevet, ahol a megbízható CA-k tanúsítványai tartózkodnak.

set::ssl::options::fail-if-no-clientcert;
Letiltja a tanúsítvány nélküli kliensek kapcsolódását.

set::ssl::options::no-self-signed;
Elutasítja az önaláírt tanúsítvánnyal rendelkező kliensek kapcsolódásait.

set::ssl::options::verify-certificate;
Megállapítja az SSL tanúsítvány érvényességét, mielőtt engedélyezi a kapcsolatot.

set::throttle::period <időérték>
Meghatározza, mennyi ideig kelljen egy felhasználónak várnia, mielőtt újrakapcsolódik több mint set::throttle::connections alkalommal.

set::throttle::connections <szám>;
Meghatározza, hányszor kelljen egy felhasználónak ugyanarról a gépről kapcsolódnia, hogy a következő kapcsolódása el legyen fojtva.

set::ident::connect-timeout <időérték>;
Azon másodpercek száma, ami után az Unreal hagyjon fel az ident szerverre kapcsolódással (alapértelmezés: 10s).

set::ident::read-timeout <időérték>;
Azon másodpercek száma, ami után az Unreal hagyjon fel az ident válaszra várakozással (alapértelmezés: 30s).

set::anti-flood::unknown-flood-bantime <időérték>;
Meghatározza, mennyi időre legyen kitiltva egy ismeretlen kapcsolatú floodoló.

set::anti-flood::unknown-flood-amount <szám>;
Meghatározza azt az adatmennyiséget (kilobájtokban), amit egy ismeretlen kapcsolatnak el kell küldenie ahhoz, hogy ki legyen tiltva.

set::anti-flood::away-flood <szám>:<időtartam>
Away árasztásvédelem: meghatározza, hogy az /away paranccsal hányszor változtatható meg a távolléti üzenet adott idő alatt. Ehhez szükséges, hogy a NO_FLOOD_AWAY engedélyezve legyen a config.h-ban. Például az away-flood 5:60s; azt jelenti, legfeljebb 5 változtatás engedélyezett 60 másodperc alatt.

set::anti-flood::nick-flood <szám>:<időtartam>
Árasztásvédelem névváltásokra: meghatározza, mennyi névváltás engedélyezett adott idő alatt. Például a nick-flood 4:90 azt jelenti, 4 névváltás 90 másodpercenként. Az alapértelmezés 3 per 60.

set::default-bantime <időérték>
Az alapértelmezett kitiltási idő, amikor a /kline, /gline, /zline, /shun stb. parancsokat idő paraméter nélkül használod (mint pl. /gline *@valamelyik.csúnya.isp). Az alapérték "állandó" (0). Példa: default-bantime 90d;

set::modef-default-unsettime <szám>
Ezzel megadhatod a +f csatornamódhoz használt alapértelmezett törlési időt (percekben). Ha például 10-et állítasz be, a +f [5j]:15 átalakul [5j#i10]:15-re. Alapértelmezés szerint a csatornamódok nem lesznek automatikusan törölve.

set::modef-max-unsettime <szám>
A +f csatornamódhoz használt törlési idő legnagyobb megengedett hossza percekben (itt arról a törlési időről van szó, amit megadunk pl. a +f [5j#i<IDŐ>]:15 paraméterben). Ez egy 0 és 255 közötti érték. Az alapértelmezés 60 (= 1 óra).

set::ban-version-tkl-time <időérték>
Ha megadod az "action"-t (pl. zline, gline stb.) a ban version blokkban, itt beállíthatod, mennyi időre legyen az IP kitiltva. Az alapértelmezés 86400 (1 nap).

set::spamfilter::ban-time <időérték>
Ugyanaz, mint a fenti, de a spamszűrők által beállított *line-okra.

set::spamfilter::ban-reason <indok>
A spamszűrők által beállított *line-okhoz használt indoklószöveg.

set::spamfilter::virus-help-channel <csatorna>
A spamszűrő "viruschan" tevékenysége által használt csatorna neve.

set::spamfilter::virus-help-channel-deny <yes|no>
Ha "yes"-re (vagy 1-re) van állítva, "invite only"-val válaszol minden közönséges felhasználónak, aki megpróbál belépni a virus-help-channel csatornára. Csak operátorok, spamszűrőkre illő valamint meghívott (/invite-olt) személyek léphetnek be.

set::spamfilter::except <célpont(ok)>
Ezek a célpontok kivételek a spamszűrések alól (nem lesz tevékenység végrehajtva), lehet egyetlen célpont vagy egy vesszővel elválaszott felsorolás. Pl.: except "#help,#spamreport"

5 – További fájlok

A konfigurációs fájlok mellett az Unreal néhány egyéb fájllal is rendelkezik, mint pl. az MOTD (a nap üzenete), OperMOTD, BotMOTD és Rules (szabályok). Az alábbiakban felsoroljuk ezen fájlok neveit és használatukat.
Megjegyzendő, hogy az motd fájlok (mindegyik típus) és a szabályfájlok megadhatóak egy tld blokkban is, ezek csak az alapértelmezés szerint (és a távoli MOTD-khez/szabályokhoz) használt fájlok.

 
ircd.motdMegjelenik az /motd parancs kiadásakor és (ha az ircd.smotd nem létezik) amikor egy felhasználó csatlakozik
ircd.smotdCsak kapcsolódáskor jelenik meg (rövid MOTD)
ircd.rulesMegjelenik a /rules parancs kiadásakor
oper.motdMegjelenik az /opermotd parancs kiadásakor vagy /oper-eléskor
bot.motdMegjelenik a /botmotd parancs kiadásakor

6 – Felhasználói és csatornamódok

Mód
Leírás
Csatornamódok
A
Csak adminisztrátorok léphetnek be
a <nick>
Csatorna adminná teszi a felhasználót
b <nick!user@host>
Kitiltja a megadott felhasználót a csatornáról
c
ANSI szín nem küldhető a csatornára
C
A CTCP nem engedélyezett a csatornán
e <nick!user@host>
Kitiltás alóli kivétel – Ha valaki illik erre, akkor is beléphet a csatornára, ha egy létező banra illik
f * <sor:mp>
Árasztásvédelem – Ha a * meg van adva, és egy felhasználó <sor> sornál többet küld <mp> másodperc alatt, ki lesz rúgva és tiltva a csatornáról; * nélkül csak kirúgva
G
G-osztályúvá teszi a csatornát. Ellenőrzi a badword blokkokban felsorolt szavakat, és kicseréli őket a megadott szavakkal
M
Egy regisztrált nicknév (+r) kell, hogy beszélhess
h <nick>
Féloperátori beosztást ad a felhasználónak
i
Meghívás szükséges
K
A /knock nem megengedett
k <kulcs>
Beállít egy kulcsot, amely szükséges a belépéshez
l <##>
Beállítja a felhasználók legnagyobb megengedett számát
L <csatorna>
Ha a +l által beállított számot elérték, a felhasználók erre a csatornára lesznek küldve
m
Moderált csatorna. Csak +v/o/h felhasználók beszélhetnek
N
A névváltások nem engedélyezettek
n
Nem küldhető üzenet a csatornán kívül
O
Csak IRCopok léphetnek be
o <nick>
Csatorna operátori beosztást ad a felhasználónak
p
Zártkörűvé teszi a csatornát
q <nick>
Beállítja a csatorna tulajdonosát
Q
Csak U:Line-os szerverek rúghatnak ki felhasználókat
R
Egy regisztrált nicknév szükséges a belépéshez
S
Kiszűr minden bejövő színt
s
Titkossá teszi a csatornát
t
Csak csatorna operátorok állíthatnak be témát
T
Nem engedélyezett a NOTICE a csatornán
u
Előadóterem – A /names és a /who #csatorna csak csatorna operátorokat mutat
V
Az /invite nem megengedett
v <nick>
Beszédjogot ad a felhasználónak. (Beszélhet +m csatornákon)
z
Csak titkos (SSL) kapcsolatú kliensek léphetnek be

 

Mód
Leírás
Felhasználói módok
r
Regisztráltnak tekinti nicknevet
s
Látja a szerver értesítéseit
v
Fogadja a fertőzött DCC-k küldésének elutasításáról szóló értesítéseket
o
Globális IRC operátor (az oper blokkban állítható be)
O
Helyi IRC operátor (az oper blokkban állítható be)
B
Botként jelöl meg
i
Láthatatlan (nem jelenik meg a /who-ban)
A
Szerver admin (az oper blokkban állítható be)
x
Rejtett gazdanevet ad a felhasználónak
q
Csak U:Line-ok rúghatnak ki téged (csak Services adminoknak)
a
Services admin (az oper blokkban állítható be)
g
Küldhet és fogadhat globops és locops üzeneteket
H
Elrejti az IRCop beosztásodat (csak IRCopoknak)
S
Védelmet ad a services kiszolgálóknak
t
Jelzi, hogy /vhost-ot használsz
C
Társ-admin (az oper blokkban állítható be)
d
Nem fogadsz csatornabeli PRIVMSG-ket
N
Hálózati adminisztrátor (az oper blokkban állítható be)
w
Fogadja a wallop üzeneteket
h
Segítségnyújtásra alkalmas (HelpOp) (az oper blokkban állítható be)
G
Kiszűr minden csúnya szót a konfiguráció szerint
W
Láthatod, ha az emberek /whois-olnak téged (csak IRCopoknak)
p
Elrejti azon csatornákat a /whois-odból, amelyeknek tagja vagy
R
PRIVMSG/NOTICE üzeneteket csak regisztrált (+r) felhasználóktól fogadsz
V
WebTV felhasználóként jelöl meg
z
Jelzi, hogy SSL kliens vagy
T
Megakadályozza, hogy CTCP üzeneteket fogadj

7 – Felhasználói és operátori parancsok táblázata

MEGJEGYZÉS: a /helpop dokumentáció sokkal frissebb, használd /helpop parancs-ot (vagy a /helpop ?parancs-ot, ha operátor vagy), hogy egy parancsról további információt kapj.

Parancs
Leírás
Használhatja
nick <újnicknév> Megváltoztatja az online nick nevedet. Értesíti a többieket a nickváltásodról.
Mindenki
whois <nick> Információt jelenít meg a megadott felhasználóról. Tartalmazza a teljes nevet, gazdanevet, csatornákat, amelyeken tartózkodik a felhasználó, és az operátori beosztást.
Mindenki
who <maszk> A who felhasználók keresésére alkalmas. A maszk lehet: nicknév, #csatorna, hostmaszk (*.attbi.com).
Mindenki
whowas <nick> <maxválasz> Információt jelenít meg egy nickről, amely kilépett a hálózatról. A <max válasz> mező szabadon választható, és korlátozza a visszaadott bejegyzések számát.
Mindenki
ison <nick1 nick2 nick3 ...> Ezzel ellenőrizheted egy vagy több felhasználó online állapotát. Egyszerű visszajelzés, legjobb a scripteknek.
Mindenki
join <csatorna1,csatorna2, ...> Csatornákra való belépésre szolgál. A /join #csatorna1,#csatorna2,csatorna3 használatával egyidőben több csatornára is beléphetsz. A /join 0 paranccsal leléphetsz minden csatornáról. Mindenki
cycle <csatorna1, csatorna2, ...> Újra beléptet a megadott csatorná(k)ra. Ez a parancs egyenértékű egy PART majd egy JOIN parancs küldésével. Mindenki
motd <szerver> Megjeleníti a szerver motd-t. Szervernév megadásával más szervereken lévő motd-ket tekinthetsz meg.
Mindenki
rules <szerver> Megjeleníti a szerverre vonatkozó szabályokat tartalmazó szöveget (ircd.rules) Szervernév megadásával más szerverek szabályait nézheted meg. Mindenki
lusers <server> Megjeleníti a felhasználók jelenlegi és maximális számát, mind a globálisat és a helyit. Szervernév megadásával megnézheted más szerverek statisztikáit.
Mindenki
map Megjeleníti a hálózati térképet. Mindenki
quit <indok> Bontja a kapcsolatodat a szerverrel. Ha megadsz indokot, az fog megjelenni kilépési üzenetként minden csatornán, amelynek tagja vagy. Mindenki
ping <felhasználó> Küld egy PING kérést a felhasználónak. Ezzel ellenőrizhető a kapcsolat és a lag. A szerverek időnként pingeket adnak ki, hogy megállapítsák a felhasználók kapcsolatának meglétét.
Mindenki
version <nick> Küld egy CTCP Version kérést egy felhasználónak. Amennyiben a kliense úgy van beállítva, válaszol egy kliens verziószámmal.
Mindenki
links Megjelenít egy listát a hálózatra linkelt összes szerverről. Mindenki
Admin <szerver> Adminisztratív információt jelenít meg a szerverről. Ha megadsz szervernevet, annak az információit mutatja meg.
Mindenki
userhost <nick> Megjeleníti a megadott nick userhostját. Általában scriptek használják.
Mindenki
topic <csatorna> <téma> A topic <csatorna> a megadott csatorna jelenlegi témáját jeleníti meg. A topic <csatorna> <téma> megváltoztatja a megadott csatorna témáját.
Mindenki
invite <nick> <csatorna> Meghívja a megadott felhasználót a megadott csatornára. (Csatorna operátornak kell lennie.)
ChanOp
kick <csatorna, csatorna> <felhasználó, felhasználó> <indok> Kirúg egy vagy több felhasználót egy vagy több csatornáról. Indok is megadható.
ChanOp
away <indok> Távollevőként jelöl meg téged. Indok is megadható.
Mindenki
Watch +-<nick> +-<nick>
A watch egy új értesítési rendszer az UnrealIRCd-ben, amely gyorsabb és kevesebb hálózati erőforrást használ fel, mint bármely régi típusú változatok. A szerver küld neked egy üzenetet, ha valamely felhasználó, amelynek a nickneve a watch listádon van, be- vagy kijelentkezik. A watch lista CSAK ADDIG MARAD MEG, AMÍG KAPCSOLATBAN VAGY az IRC szerverrel - neked (vagy a scriptednek vagy a kliensednek) minden egyes kapcsolódáskor fel kell venned a nickneveket a watch listára.
Mindenki
helpop ?<téma> vagy !<téma>
A HelpOp egy új rendszer az IRC szerverrel kapcsolatos segítségnyújtásra. Beírhatod vagy a /HELPOP ? <súgórendszerbeli téma> vagy a /HELPOP ! <kérdés> parancsot. A "?"-lel a /HELPOP-ban a súgórendszernek küldhetsz lekérdezéseket, és ha nem kapsz választ, használhatod a "!"-et, hogy kérdésedet elküldd a Help Operátoroknak. Ha sem a ?-et, sem a !-et nem használod, úgy a parancs előbb a súgórendszerhez fordul, és ha nincs találat, továbbítja a help operátoroknak. Mindenki
list <keresési szöveg> Keresési szöveg nélkül a csatornák teljes, szűretlen listáját kapod vissza. Az alábbiakban láthatod, mely opciókat használhatod, és hatásukra a LIST milyen csatornákat ad vissza.
>szám Listázza a több mint <szám> taggal rendelkező csatornákat.
<szám Listázza a kevesebb mint <szám> tagszámú csatornákat.
C>szám Listázza a <szám> percnél nem régebben létrehozott csatornákat.
C<szám Listázza a <szám> percnél korábban létrehozott csatornákat.
T>szám Listázza a <szám> percnél régebbi témájú csatornákat (vagyis nem változott meg elmúlt <szám> percben).
T<szám Listázza a <szám> percnél újabb témájú csatornákat.
*mask* Listázza a *mask*-ra illő csatornákat.
!*mask* Listázza a *mask*-ra nem illő csatornákat.
Mindenki
Knock <csatorna> <üzenet>
Lehetőséget nyújt arra, hogy "bekopogj" egy meghívásos csatornán és belépési engedélyt kérj. Nem fog működni, ha a +K vagy +V csatornamódok egyike be van állítva a csatornán, és akkor sem, ha ki vagy tiltva.
Mindenki
setname Lehetőséget ad a felhasználóknak a "valós nevük" megváltoztatására; újrakapcsolódás nélkül
Mindenki
vhost <bejelentkezőnév> <jelszó> Elrejti a gazdanevedet a szerver által nyújtott vhost használatával.
Mindenki
mode <csatorna/nick> <mód>
Csatorna- és felhasználói módok beállítására szolgál. Lásd a Felhasználói és csatornamódok listáját.
Mindenki
credits Listát ad mindazokról az emberekről, akik segítettek az UnrealIRCd megalkotásában.
Mindenki
license Megjeleníti a GNU licenszet. Mindenki
time <szerver> Megjeleníti a szerver dátum- és időbeállítását. Szervernév megadásával más szerverek beállítait tekintheted meg.
Mindenki
botmotd <szerver>
Megjeleníti a nap bot üzenetét. Szervernév megadásával más szervereket kérdezhetsz le. Mindenki
identify <jelszó> Elküldi a jelszavad a szolgáltatás rendszerhez a nickneved azonosítására.
Mindenki
identify <csatorna> <jelszó> Elküldi a jelszavad a szolgáltatás rendszerhez, hogy a csatorna alapítójaként azonosítsd magad.
Mindenki
dns <opció> Információt küld az IRC szerver DNS gyorsítótáráról. Megjegyzendő, hogy mivel a legtöbb kliensnek van beépített DNS parancsa, valószínűleg a /raw DNS-t kell beírnod, hogy ezt a parancsot használd. Az operátorok egy "l"-t is beírhatnak a parancs első paramétereként, hogy a DNS gyorsítótár bejegyzéseiről kapjanak listát. Mindenki
oper <azonosító> <jelszó>
Ez a parancs egy felhasználónak operátori beosztást ad, ha illik egy oper blokkra.
IRCop
wallops <üzenet> Üzenetet küld az összes +w módú felhasználónak. IRCop
globops <üzenet> Üzenetet küld minden IRCopnak. IRCop
chatops <üzenet> Üzenetet küld minden +c módú IRCopnak IRCop
locops <üzenet> Üzenetet küld minden helyi IRCopnak. IRCop
adchat <üzenet> Üzenetet küld minden adminisztrátornak. IRCop
nachat <üzenet> Üzenetet küld minden hálózati adminnak. IRCop
kill <nick> <indok> Eltávolít egy felhasználót a hálózatról. IRCop
kline [+|-]<user@host | nick> [<időtartam> <indok>] Kitiltja a hostmaszkot arról a szerverről, ahonnan a parancsot kiadod. A kline nem globális kitiltás.
Az időtartam a kitiltás lejárati ideje, és egyike a következőknek: a) egy érték másodpercekben, b) egy időérték, pl. "1d" (1 nap), vagy c) "0" az állandó kitiltáshoz. Az idő és az indok nem kötelező, ha kihagyod őket, a set::default-bantime (alapértelmezés: 0/állandó) és "no reason" (nincs indok) lesz használatban.
Egy kline eltávolításához használd a /kline -user@host parancsot.
IRCop
zline [+|-]<*@ip> [<időtartam> <indok>] Kitilt egy IP címet arról a helyi szerverről, ahonnan a parancsot kiadod (nem globális). Lásd a kline-t további szintaktikai információért. Használd a /zline -*@ip parancsot az eltávolításhoz.
IRCop
gline [+|-]<user@host | nick> [<időtartam> <indok>]
Globális kitiltást állít be mindazokon a személyeken, akikre a maszk illik. Lásd a kline-t további szintaktikai információért. Használd a /gline -user@host parancsot az eltávolításhoz.
IRCop
shun [+|-]<user@host | nick> [<időtartam> <indok>]
Megakadályozza, hogy egy felhasználó BÁRMILYEN parancsot végrehajtson ill. beszéljen. A shunok globálisak (mint a gline-ok). Lásd a kline-t további szintaktikai információért. Használd a /shun -user@host parancsot az eltávolításhoz.
IRCop
gzline [+|-]<ip> <időtartam> :<indok>
Globális zline-t állít be. Lásd a kline-t további információért. Használd a /gzline -*@ip parancsot az eltávolításhoz.
IRCop
rehash <szerver> –<flagek> Újratölti a szerver beállításfájlját. Szervernév megadásával távoli szerverek beállításait töltheted újra. Néhány flag is rendelkezésre áll. Ezek a következők:
-motd - Csak az összes MOTD és RULES fájlt töltse újra (a tld {}-ket is beleértve)
-opermotd - Csak az OPERMOTD fájlt töltse újra
-botmotd - Csak a BOTMOTD fájlt töltse újra
-garbage - Kikényszeríti a szemétgyűjtést
IRCop
restart <szerver> <jelszó>
Újraindítja az IRCD processzust. Jelszó megadása szükséges. Szervernevet is megadhatsz, hogy egy távoli szervert indíts újra.
IRCop
die <jelszó>
Leállítja az IRCD processzust. Jelszó megadása szükséges. IRCop
lag <szerver>
Ez a parancs olyan, mint egy hanglokátor vagy útvonalkövető IRC szerverekhez. Beírod, hogy /LAG irc.fyremoon.net, és minden olyan szervertől választ kapsz, amelyeken áthalad, tartalmazva az időt, stb. Hasznos, ha meg akarod keresni, hol van lag, vagy a TS (timestamp, időbélyeg) hol utazik a jövőbe/múltba.
IRCop
sethost <új gazdanév> Megváltoztatja a vhostodat (virtuális gazdanevedet) arra, amire akarod.
IRCop
setident <új azonosító>
Megváltoztatja az azonosítónevedet arra, amire akarod.
IRCop
chghost <nick> <új gazdanév>
Megváltoztatja egy, a rendszeren jelenleg tartozkodó felhasználó gazdanevét.
IRCop
chgident <nick> <új azonosító>
Megváltoztatja egy, a rendszeren jelenleg tartozkodó felhasználó azonosítónevét.
IRCop
chgname <nick> <új név>
Megváltoztatja egy, a rendszeren jelenleg tartozkodó felhasználó valós nevét.
IRCop
squit <server>
Bontja egy szerver kapcsolatát a hálózatról.
IRCop
connect <szerver> <port> <szerver> Ha csak egy szervert adsz meg, azt a szervert, amelyiken RAJTA vagy, megpróbálja csatlakoztatni a megadott szerverhez. Ha 2 szerver van megadva, a két szervert kísérli meg csatlakoztatni egymáshoz. A leaf szervert írd be először, és a hubot másodiknak.
IRCop
dccdeny <fájlmaszk> <indok>
Felvesz egy DCCDENY-t (DCC letiltást) a megadott fájlmaszkra, ezzel megakadályozza maszkra illő fájlok küldését.
IRCop
undccdeny <fájlmaszk>
Eltávolítja a DCCDENY-t. IRCop
sajoin <nick> <csatorna>, <csatorna>
Kikényszeríti egy felhasználó belépést a megadott csatorná(k)ra. Csak services és hálózati admininok vehetik igénybe. IRCop
sapart <nick> <csatorna>, <csatorna>
Kikényszeríti egy felhasználó lelépését a megadott csatorná(k)ról. Csak services és hálózati adminok vehetik igénybe.
IRCop
samode <csatorna> <mód(ok)>
Lehetőséget nyújt a hálózati és services adminoknak, hogy csatorna operátori jog nélkül változtassanak csatornamódokat.
IRCop
rping <szervermask>
Kiszámítja a szerverek közötti lag mértékét ezredmásodpercekben.
IRCop
trace <szervermaszk|nicknév>
Ha felhasználón alkalmazod, információt ad az osztályáról és a lagjáról. Ha szervert adsz meg, információt jelenít meg az osztályokról, a verziókról és a linkekről.
IRCop
opermotd
Megjeleníti a szerver OperMotd fájlját.
IRCop
addmotd :<szöveg>
Hozzáfűzi a megadott sort az Motd fájl végéhez.
IRCop
addomotd :<szöveg>
Hozzáfűzi a megadott sort az OperMotd fájl végéhez.
IRCop
sdesc <új leírás>
Lehetőséget nyújt a szerver adminoknak a szerverük megnevezésének megváltoztatására az újraindítás szükségessége nélkül.
IRCop
addline <szöveg>
Lehetőséget ad arra, hogy sorokat fűzz az unrealircd.conf-hoz.
IRCop
mkpasswd <jelszó>
Titkosít egy tiszta szövegű jelszót, hogy betehesd az unrealircd.conf-ba.
IRCop
tsctl offset +/- <idő>
Beigazítja az IRCD belső óráját. (NE használd, ha nem érted, PONTOSAN mit csinál.)
IRCop
tsctl time
TS jelentést ad a helyi szerverről (TS = timestamp, időbélyeg). IRCop
tsctl alltime TS jelentést ad MINDEN szerverről. IRCop
tsctl svstime <időbélyeg>
Beállítja minden szerver TS időjét. (NE használd, ha nem érted, PONTOSAN mit csinál.)
IRCop
htm <opció>
Szabályozza a magas forgalmi móddal kapcsolatos beállításokat. A magas forgalmi mód (High Traffic Mode, HTM) alapvetően letilt bizonyos parancsokat, mint a list, whois, who stb., válaszul szerveren kialakult rendkívül magas forgalomra. Az alábbi opciók használhatóak:
-ON Belép a HTM-be
-OFF Kilép a HTM-ből
-NOISY Beállítja a szervert, hogy értesítse a felhasználókat/adminokat, amikor be- ill. kilép a HTM-ből
-QUIET Beállítja a szervert, hogy NE adjon értesítést, amikor be- ill kilép a HTM-ből
-TO <értékgt; Beállítja a szervert, hogy milyen mértékű bejövő forgalom esetén hozza működésbe a HTM-et
IRCop
stats <opció>
B - banversion - Elküldi a kitiltott verziók listáját
b - badword - Elküldi a csúnyaszavak listáját
C - link - Elküldi a link blokkok listáját
d - denylinkauto - Elküldi a deny link (auto) blokkok listáját
D - denylinkall - Elküldi a deny link (all) blokkok listáját
e - exceptthrottle - Elküldi az except throttle blokkok listáját
E - exceptban - Elküldi az except ban blokkok listáját
f - spamfilter - Elküldi a spamszűrők listáját
F - denydcc - Elküldi a deny dcc blokkok listáját
G - gline - Elküldi a gline listát
  Kiterjesztett flagek: [+/-mrs] [maszk] [indok] [beállító]
    m  Visszaadja azon gline-okat, amelyek illenek/nem illenek a megadott maszkra
    r  Visszaadja azon gline-okat, amelyek indokszövege illik/nem illik a megadott indokra
    s  Visszaadja azon gline-okat, amelyek beállítóinak neve illik/nem illik a megadott névre
I - allow - Elküldi az allow blokkok listáját
j - officialchans - Elküldi a hivatalos csatornák listáját
K - kline - Elküldi a ban user/ban ip/except ban blokkok listáját
l - linkinfo - Információt küld a linkekről
L - linkinfoall - Elküld minden információt a linkekről
M - command - Listát küld arról, hányszor használtak minden parancsot
n - banrealname - Elküldi a ban realname blokkok listáját
O - oper - Elküldi az oper blokkok listáját
S - set - Elküldi a set blokkok listáját
s - shun - Elküldi a shun listát
  Kiterjesztett flagek: [+/-mrs] [maszk] [indok] [beállító]
    m  Visszaadja azon shunokat, amelyek illenek/nem illenek a megadott maszkra
    r  Visszaadja azon shunokat, amelyek indokszövege illik/nem illik a megadott indokra
    s  Visszaadja azon shunokat, amelyek beállítóinak neve illik/nem illik a megadott névre
P - port - Információt küld a portokról
q - sqline - Elküldi az SQLINE listát
Q - bannick - Elküldi a ban nick blokkok listáját
r - chanrestrict - Elküldi a deny/allow channel blokkok listáját
R - usage - Információt küld a szerver erőforrás-használatáról
t - tld - Elküldi a tld blokkok listáját
T - traffic - Információt küld a forgalomról
u - uptime - Megjeleníti a szerver fennlétének idejét és a kapcsolatok legmagasabb számát
U - uline - Elküldi az uline blokkok listáját
v - denyver - Elküldi a deny version blokkok listáját
V - vhost - Elküldi a vhost blokkok listáját
X - notlink - Listát küld azokról a szerverekről, amelyek jelenleg nincsenek linkelve
Y - class - Elküldi a class blokkok listáját
z - zip - Információt küld a zippel linkelt szerverek adattömörítéséről (ha van ziplink támogatás)
Z - mem - Információt küld a szerver memóriahasználatáról
Mindenki
module
Listát ad minden betöltött modulról Mindenki
close
Ez a parancs szétkapcsol minden ismeretlen kapcsolatot az IRC szerverről. IRCOp

8 – Biztonsági tippek/ellenőrzőlista

Ha aggódsz a biztonság miatt (kellene is!), ez a szekció segít abban, hogy körültekintést kapj a különböző létező veszélyekről és a veszélyességi szintjükről. Vagy használhatod egyfajta "ellenőrzőlistaként" is, amelynek segítségével a (hálózati) beállításaidon végighaladva a dolgokat biztonságosabbá teheted.

A lista sorban a népszerűség, a veszélyességi szint és a leggyakrabban használt támadási módok szerint van rendezve:

8.1. Jelszavak

Használj jó oper jelszavakat, link jelszavakat stb.:
- használj kis- és nagybetűket, számokat ("Whbviwf5") és/vagy valami hosszú szöveget ("blaheatsafish", "AlphaBeta555").
- NE HASZNÁLD a link/oper jelszavaidat semmi másra, legyen az akár az elekronikus postafiókod, botod jelszava, fórumokban stb...

8.2. Nem ircd-vel kapcsolatos sebezhetőségek

Sokkal több esély van arra, hogy a gépedet egy irc(d)-n kívüli sebezhetőséggel törik fel, mint hogy egy UnrealIRCd-beli hibával. Például ha http, dns, smtp és ftp szervereket üzemeltetsz ugyanazon a gépen, a veszély sokkal nagyobb. Ezenkívül, ha többfelhasználós rendszered van (pl.: egy shellt vásároltál), megvan a veszély helyi kiskapukra és rossz fájljogosultsági beállításokra (lásd a következő pontot). Ennek a veszélye elég magas, ezért vigyázz, amikor shell szolgáltatót választasz.

8.3. Engedélybeállítások és a konfigurációs fájlok

Mindig győződj meg arról, hogy a home könyvtáradnak és az UnrealIRCd könyvtárnak megvannak megfelelő engedélybeállításai; a (csoportnak/)többieknek nem kell, hogy olvasásra engedélyük legyen. Különben egy helyi felhasználó símán megkaparinthatja konfigurációs fájlokat, és jelszavakat kereshet bennük... Röviden: használd a chmod -R go-rwx /ahol/van/az/Unreal3.2 parancsot, ha nem vagy biztos a dolgodban.
További ilyen tanácsok: soha ne rakd az UnrealIRCd-t egy weben látható vagy egyéb módon megoszott könyvtárba. És arról is gondoskodj, hogy a biztonsági mentéseid is megkapják a megfelelő engedélybeállításokat. (Elég gyakran megesik, hogy minden biztonságos, mégis megbújik valahol egy mindenki számára olvasható mentes.tar.gz.)

Javasolt még, hogy használj titkosított jelszavakat, ahol lehetséges. Megjegyzendő, hogy ez is csak egy "újabb biztonsági szint", az 1-8 karakteres jelszavak feltörhetőek néhány óra/nap alatt, és egyébként is rendszeresen vannak más, nem titkosított, érdekes információk a konfigurációs fájlokban (mint pl. a link::password-connect).

8.4. Felhasználószintű problémák

Mint a legtöbb dolog, ez sem kimondottan az UnrealIRCd-vel kapcsolatos, de...
Mindig figyelmesen válogasd meg az operátoraidat és az adminisztrátoraidat. És emlékezz a leggyengébb láncszem fogalmára is. Akkor is, ha óvatos voltál, és mindent megcsináltál, ami ebben a leírásban van, lehet, hogy a barátod, aki szintén operátor, elkövet valami hülyeséget. Például megosztja a merevlemezét valamilyen programmal, mint pl. a netbios/kazaa/morpheus/.., trójai vírust kap, túl egyszerű jelszót használ, stb. stb... Sajnos, ez nem mindig a te irányításod alatt van.

8.5. SSL/SSH és a szimatolások

Használj SSL kapcsolatokat a szerverek között valamint operátorként, így megvédheted magad a "szimatolások" ellen. Egy támadó akkor tud szimatolni, ha feltört egy gépet valahol te és az ircd szervered között. Ekkor MINDEN keresztülhaladó hálózati forgalmat meg tud nézni; például figyelhet minden beszélgetést, jelszavakat lophat (operátori bejelentkezésekhez, nickservhez stb.)... Ugyanezen okból mindig használj SSL-t telnet helyett.

8.6. Denial of Service támadások (DoS) [avagy: hogyan védd meg a hubodat]

Rengeteg hálózat tapasztalta már, milyen jó "móka" egy flood vagy egy (D)DoS támadás, azonban tehetsz néhány óvintézkedést, hogy az általa okozott kárt lecsökkentsd. A legtöbb hálózatnak van hub szervere, de úgy tűnik, néhányan elfelejtik, hogy meglehetősen könnyű megvédeni a hub szervert a támadásoktól.
Itt elmagyarázom:
1. Állítsd a hub nevét egy nemlétező gazdanévre, pl. "hub.sajátnet.com"-ra, de
    de ne csinálj neki dns rekordot. Ily módon a támadó nem tudja feloldani a gazdanevet, és
    nem is tudja floodoltatni. Ezután egyszerűen linkeld a szervereidet a hubra az
    IP cím vagy egyéb más, nem nyilvános gazdanév megadásával.
    1. Példa: link lathatonev.sajatnet.com { hostname 194.15.123.16; [stb] };.
    2. Példa: link lathatonev.sajatnet.com { hostname mukodogazdanev.sajatnet.com; [stb] };.
    Mellékesen, az utóbbi példában légy biztos abban, hogy a névszervereid nem engedélyezik a zónaátvitelt, bár ez is nagyon témánkívüli ;).
2. Egy másik fontos lépés, hogy elrejtsd a "/stats c" és egyéb statisztikai információkat, máskülönben a támadók egyszerűen
    listát kaphatnak a link blokkokról. Rendszerint, ha paranoiás vagy (mint én), egyszerűen beírhatod,
    hogy: set { oper-only-stats "*"; }; és ezzel letilthatsz minden /stats használatot. Vagy ha nem akarod
    ezt, akkor legalább a "CdDlLXz" flageket tiltsd le. Erről bővebb információ a következő pontban.

Természetesen ezek a lépések kevésbé hasznosak, ha túl későn történnek meg (pl.: egy hónap után), mintsem
a kezdetektől fogva, mert lehet, hogy az IP címek már ismertek néhány gonosz fickó számára, de mégis... azért megéri megtenni.
Az is megjegyzendő, hogy a támadók még így is lefloodolhatnak minden nem hub szervert, de az több erőfeszítést igényel,
mint megtámadni csak 1-2 gyenge pontot (a hubokat), és így a hubjaid valamint a szolgáltatások életben maradnak :).

8.7. Információközlés

STATS
A /stats parancs nagyon informatív, talán célszerűnek tartod olyannyira letiltani a használatát, amennyire csak lehetséges. Azt a kérdést kell feltenned magadban, "mit az, amit megnézhetnek a felhasználók?". A legtöbb nagy hálózat a "semmit" választja, míg mások jobban szeretik megengedni a klienseiknek, hogy kiadják a "/stats g"-t és a "/stats k"-t.
Javaslom, hogy használd a set { oper-only-stats "*"; }; beállítást, hogy minden statisztikát eltilts a nem operátori felhasználóktól, de ha nem akarod ezt, menj végig a "/stats" listán (áttekintést ad az összes lehetséges opcióról), és blokkolj mindent, kivéve, amit engedélyezni akarsz... (ha bizonytalan vagy, csak tiltsd le.. miért kellene, hogy mindezt tudják?).
Hogy néhány példát mondjak:
- /stats o: megmutatja az operátorok nickneveit (helyes betűzéssel) és a hostmaszkokat.
- /stats c: fogalmat ad a szerverlinkekről, és hogy melyeket használd "támasztéknak", stb...
- /stats g, /stats k: rendszeresen használják proxyk távoltartására... így megtudhatják a támadók, milyen proxykat használhatnak.
- /stats E, /stats e: eléggé bizalmas információ, különösen, ha egy támadó használhatja ezeket a címeket
- /stats i, /stats y: segíthet a támadónak olyan hostot keresni, amely sok kapcsolatot engedélyez.
- /stats P: segít neki a csak szerverek részére engedélyezett portok keresésében
stb. stb...

MAP / LINKS
Többen is megkérdezték már, hogy van-e valamilyen módja a /map vagy a /links letiltásának. A mi álláspontunk az, hogy ez ostobaság, és hamis biztonságérzetet ad, hadd magyarázzam el... Elrejteni szervereket, amiket tulajdonképpen a felhasználók használnak, hiábavaló, mivel már régen tudnak a szervereidről (hogyan tudnának különben felmenni rájuk, először is?). Bármely olyan szerverrel kapcsolatban, amelyeken nem akarsz felhasználókat látni, lásd a 8.6. szekciót.
Most mit TEHETSZ? A 3.2.1 óta van egy "flat map" nevű opció (set::options::flat-map), ezzel minden szerver úgy jelenik meg a /map-ben és a /links-ben, mintha közvetlenül lennének kapcsolódva, eképpen a közönséges felhasználók többé nem látják, melyik szerver hová lett linkelve... Ez egy hasznos kiegészítő védelmi réteg lehet, mert a gyerkőcök nem tudják kiszemelni a "gyenge pontokat" a /map-pel vagy a /links-szel. Tehát ennek a használata ajánlott. Megjegyzendő, hogy ez sem bolondbiztos... Ha történik egy szakadás (split), valaki még mindig láthatja, melyik szerver hová volt linkelve, és ez érvényes még néhány más dologra is.

KÖZÖNSÉGES FELHASZNÁLÓK ÉS SNOMASKOK
Egy featúra, amit nem ismernek széles körben, az, hogy a közönséges felhasználók is beállíthatnak néhány korlátozott snomaskot, nevezetesen a "+s +sk"-t. Ezzel láthatnak olyan dolgokat, mint a beállítások újratöltése, operelések, killek és egyéb más üzenetek.
Ahhoz, hogy ezt letiltsd, használhatod "set::restrict-usermodes"-t a következőképpen: set { restrict-usermodes "s"; };.


Persze mindezek csak "információrejtések", vagyis nem "valódi" biztonság. Viszont a támadásokat, feltöréseket nehezebbé teszi, több fáradságukba kerül.

8.8. Sebezhetőségek elleni védelem

Vannak kernel patchek, amelyek nehezebbé teszik a szegmens és verem alapú sebezhetőségek működését. Azonban ne ez legyen a figyelmed középpontja, sokkal nagyobb veszély van arra, hogy más módon aknázzák ki a szervere(i)det... különböző okok miatt.

Van egy dolog viszont, amit meg kellene tenned, ez pedig az, hogy MINDIG HASZNÁLD A LEGFRISSEBB VERZIÓT, és jelentkezz fel az unreal-notify levelezőlistára most rögtön, hogy megkaphasd a a kiadási közleményeket (az unreal-notify csak kiadási közleményekre van, így csak 1 levelet jelent X havonta). A kiadási közleményben rendszerint világosan fel van tüntetve, ha a kiadás (nagyobb veszélyű) biztonsági hibák javítását tartalmazza.

8.9. Összefoglalás

Mint mostmár remélhetőleg érted, soha nem lehetsz 100% biztonságban. Neked és nekünk is rentegeg biztonsági lyukat kell megtalálnunk odakint, miközben egy támadónak elég csak 1 szervert megtalálnia 1 lyukkal. Minden, amit itt elmagyaráztunk, azonban SEGÍT megfontoltan minimálissá tenni a veszélyeket. Áldozz egy kevés időt arra, hogy a hálózatodat biztonságossá tedd, és oktasd az operátoraidat. Nagyon sokan nem is törődnek a biztonsággal, egészen addíg, amíg bajba nem kerülnek. Próbáld ezt elkerülni. :)

9 – Gyakran Ismételt Kérdések (FAQ)

A FAQ online elérhető innen.