ircu2/SNOMASK_EXPLAINED.md

327 lines
7.4 KiB
Markdown

# 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