diff --git a/SNOMASK_EXPLAINED.md b/SNOMASK_EXPLAINED.md new file mode 100644 index 0000000..39929da --- /dev/null +++ b/SNOMASK_EXPLAINED.md @@ -0,0 +1,326 @@ +# SNOMASK - Server Notices pentru Operatori + +## 📋 CE ESTE SNOMASK? + +**SNOMASK** (Server Notice Mask) este un sistem de notificări pentru operatori IRC care le permite să vadă diverse evenimente de pe server în timp real. + +--- + +## 🎯 PROBLEMA + +**ÎNAINTE:** +``` +[11:02] * User se face OPER +[11:02] ... NIMIC ... (nici o notificare) +``` + +**DUPĂ (cu SNOMASK):** +``` +[11:02] * User se face OPER +[11:02] -irc.server.org- *** Notice -- MuieChipes (~Raducu@188.24.5.202) is now a global operator (O) +``` + +--- + +## ✅ CE AM ACTIVAT + +Am decomentat și configurat **snomask** în blocul Operator: + +```conf +Operator { + name = "YourOper"; + password = "$MD5$..."; + host = "*@*"; + class = "Opers"; + + # Permisiuni și notificări + admin = yes; + hide_oper = no; # SCHIMBAT: de la yes la no (pentru a vedea notificările) + hide_channels = yes; + whois_notice = yes; + snomask = "+s +o +c +k +f +b +n"; # ACTIVAT! ✅ +}; +``` + +--- + +## 📊 CE ÎNSEAMNĂ FIECARE FLAG + +| Flag | Ce Face | Exemplu Notificare | +|------|---------|-------------------| +| **+s** | Server connections | `*** Notice -- Server hub.net connected` | +| **+o** | **Operator mode changes** | `*** Notice -- User (~user@host) is now a global operator (O)` ⭐ | +| **+c** | Client connections | `*** Notice -- Client connecting: User (~user@host)` | +| **+k** | Kills | `*** Notice -- Received KILL message for User from Oper (Reason)` | +| **+f** | Flood detection | `*** Notice -- Possible flood from user@host` | +| **+b** | Bot detections | `*** Notice -- Possible bot: user@host` | +| **+n** | Nick changes | `*** Notice -- Nick change: OldNick -> NewNick` | + +**Flag-ul +o** este cel care afișează notificări când cineva devine operator! ⭐ + +--- + +## 🔧 ALTE FLAG-URI DISPONIBILE + +| Flag | Ce Face | +|------|---------| +| **+d** | Debug messages | +| **+g** | G-lines (global bans) | +| **+l** | Local connections | +| **+u** | Unauthorized connections | +| **+x** | Extra debugging | +| **+y** | Stats requests | +| **+z** | Z-lines (IP bans) | + +--- + +## 🎮 CUM FUNCȚIONEAZĂ ÎN IRC + +### **CÂND TE LOGHEZI CA OPER:** + +```irc +/OPER youroper password + +# Vei vedea AUTOMAT: +[11:00] *** You are now an IRC Operator +[11:00] -irc.underchat.org- *** Notice -- You are now a global operator (O) + +# De acum, vei primi notificări pentru toate evenimentele! +``` + +### **CÂND ALT USER DEVINE OPER:** + +```irc +[11:02] -irc.underchat.org- *** Notice -- MuieChipes (~Raducu@188.24.5.202) is now a global operator (O) +``` + +### **CÂND CINEVA SE CONECTEAZĂ:** + +```irc +[11:05] -irc.underchat.org- *** Notice -- Client connecting: NewUser (~user@1.2.3.4) [class: Other] +``` + +### **CÂND CINEVA ÎȘI SCHIMBĂ NICK-UL:** + +```irc +[11:10] -irc.underchat.org- *** Notice -- Nick change: OldNick -> NewNick (user@host) +``` + +--- + +## 🎯 MODIFICĂRI FĂCUTE + +### **1. Decomentăm snomask:** +```conf +# ÎNAINTE: +# snomask = yes; + +# DUPĂ: + snomask = "+s +o +c +k +f +b +n"; # ✅ +``` + +### **2. Schimbăm hide_oper:** +```conf +# ÎNAINTE: + hide_oper = yes; # Ascuns din listele de useri + +# DUPĂ: + hide_oper = no; # Vizibil (pentru notificări) +``` + +**DE CE?** Dacă `hide_oper = yes`, s-ar putea să nu primești toate notificările! + +--- + +## 📋 PERSONALIZARE SNOMASK + +Poți modifica snomask-ul după preferință: + +### **Minim (doar operatori):** +```conf +snomask = "+o"; +``` + +### **Moderat (operatori + kills + g-lines):** +```conf +snomask = "+o +k +g"; +``` + +### **Complet (toate notificările):** +```conf +snomask = "+s +o +c +k +f +b +n +d +g +l +u +x +y +z"; +``` + +### **Recomandat (ce am activat noi):** +```conf +snomask = "+s +o +c +k +f +b +n"; +``` + +--- + +## 🚀 UPGRADE PE SERVER + +```bash +cd ~/ircu2 + +# Pull ultimele modificări +git pull origin main + +# Reinstalează pentru a aplica snomask: +./install.sh + +# Restart IRCd: +pkill ircd +/home/ircd/ircd/bin/ircd -f /home/ircd/ircd/lib/ircd.conf +``` + +--- + +## 🔍 VERIFICARE DUPĂ UPGRADE + +### **1. Verifică în ircd.conf:** +```bash +grep "snomask" /home/ircd/ircd/lib/ircd.conf +``` + +**Output așteptat:** +```conf + snomask = "+s +o +c +k +f +b +n"; +``` + +### **2. Test în IRC:** +```irc +# Loghează-te ca oper: +/OPER youroper password + +# Ar trebui să vezi: +[11:00] *** You are now an IRC Operator +[11:00] -irc.underchat.org- *** Notice -- YourNick (~user@host) is now a global operator (O) + +# De acum, primești notificări automat! + +# Test: Alt user devine oper: +# (pe alt client/connection) +/OPER anotheroper password + +# Pe primul oper ar trebui să vezi: +[11:02] -irc.underchat.org- *** Notice -- AnotherOper (~user@host) is now a global operator (O) +``` + +--- + +## 🎨 DEZACTIVARE TEMPORARĂ (dacă deranjează) + +Dacă notificările deranjează, le poți dezactiva temporar: + +### **În IRC:** +```irc +# Dezactivează toate notificările: +/MODE YourNick -s + +# Activează doar notificări pentru operatori: +/MODE YourNick +s +o + +# Activează toate notificările: +/MODE YourNick +s +o +c +k +f +b +n +``` + +### **Sau editează ircd.conf:** +```bash +nano /home/ircd/ircd/lib/ircd.conf + +# Găsește blocul Operator și modifică: +snomask = "+o"; # Doar notificări operatori + +# Sau comentează complet: +# snomask = "+s +o +c +k +f +b +n"; + +# Restart IRCd: +/home/ircd/ircd/bin/ircd -rehash +``` + +--- + +## 📊 COMPARAȚIE + +| Aspect | ÎNAINTE (fără snomask) | DUPĂ (cu snomask) | +|--------|------------------------|-------------------| +| **Notificare oper** | ❌ Nimic | ✅ `*** Notice -- User is now a global operator` | +| **Client connects** | ❌ Nimic | ✅ `*** Notice -- Client connecting: User` | +| **Nick changes** | ❌ Nimic | ✅ `*** Notice -- Nick change: Old -> New` | +| **Kills** | ❌ Nimic | ✅ `*** Notice -- Received KILL message` | +| **Flood** | ❌ Nimic | ✅ `*** Notice -- Possible flood from...` | +| **Server connects** | ❌ Nimic | ✅ `*** Notice -- Server connected` | +| **G-lines** | ❌ Nimic | ✅ `*** Notice -- G-line added for...` | + +--- + +## 🎯 SNOMASK vs FEATURES + +### **SNOMASK în Operator block:** +```conf +Operator { + snomask = "+s +o +c +k"; # Per operator +}; +``` + +### **SNOMASK_OPERDEFAULT în features:** +```conf +features { + "SNOMASK_OPERDEFAULT" = "1024"; # Default global pentru toți operii +}; +``` + +**DIFERENȚA:** +- `snomask` în Operator = **override** pentru operatorul specific +- `SNOMASK_OPERDEFAULT` în features = **default** pentru toți + +--- + +## 💡 TIPS & TRICKS + +### **1. Filtrare notificări:** +Dacă sunt prea multe notificări, activează doar ce te interesează: +```conf +snomask = "+o +k"; # Doar operatori și kills +``` + +### **2. Canal de notificări:** +Creează un canal #opers și pune acolo notificările: +- Operatorii văd notificările în canal +- Nu mai deranjează în query + +### **3. Bot de logging:** +Creează un bot care loghează toate notificările snomask: +- Istoric complet al evenimentelor +- Audit trail pentru investigații + +--- + +## 🎉 CONCLUZIE + +### **SNOMASK ACTIVAT! ✅** + +**Ce ai acum:** +- ✅ Notificări când cineva devine operator +- ✅ Notificări pentru conexiuni clienți +- ✅ Notificări pentru nick changes +- ✅ Notificări pentru kills +- ✅ Notificări pentru flood detection +- ✅ Monitoring complet al serverului! + +**Mesajul pe care îl vei vedea:** +``` +[11:02] -irc.underchat.org- *** Notice -- MuieChipes (~Raducu@188.24.5.202) is now a global operator (O) +``` + +**EXACT ca pe NodeAse!** ⭐✅ + +--- + +**Versiune**: v1.7.2 +**Data**: 15 Februarie 2026 +**Feature**: SNOMASK activat pentru operatori +**Status**: ✅ Notificări server complete +**Upgrade**: git pull && ./install.sh && restart IRCd + diff --git a/install.sh b/install.sh index 715a74c..2009b1e 100755 --- a/install.sh +++ b/install.sh @@ -728,10 +728,10 @@ Operator { # Permisiuni și notificări admin = yes; swhois = "The One That Was, The One That Is, The One That Will Be"; # Mesaj special în WHOIS pentru operatori - hide_oper = yes; # Ascunde prezenta operatorului în listele de utilizatori + hide_oper = no; # Afișează operatorul în listele de utilizatori (pentru a vedea notificările) hide_channels = yes; # Ascunde canalele la care este operatorul prezent whois_notice = yes; # Afișează notificare specială în WHOIS pentru operatori -# snomask = yes; # Afișează în server notice-uri pentru acțiunile operatorului (ex: +s pentru sethost) + snomask = "+s +o +c +k +f +b +n"; # Server notices: conectări, opers, clienți, kills, flood, bots, nick changes # privileges = "PRIV_WHOIS_NOTICE", "PRIV_HIDE_OPER", "PRIV_ADMIN"; };