# 🎭 STEALTH OPER MODE - Operator Invizibil

**Data**: 23 Februarie 2026  
**Feature**: Stealth Oper (Operator Invizibil)  
**Status**: ✅ **IMPLEMENTAT ÎN INSTALL.SH**

---

## 🎯 CE ESTE STEALTH OPER?

**Stealth Oper Mode** = Ești operator cu toate privilegiile, dar **NIMENI nu știe** că ești staff!

### Operator VIZIBIL (standard):
```
/whois Raducu
Raducu is ~Raducu@Raducu.Staff.UnderChat.org * Raducu
Raducu is an UnderChat Founder
Raducu is an UnderChat Staff Member
```
👆 **Toată lumea vede că ești staff!**

### Operator INVIZIBIL (stealth):
```
/whois Raducu
Raducu is ~Raducu@4C5DA6.3305AC.147F4A.B19664.IP * Raducu
Raducu on #CService
```
👆 **Pari un user normal!**

---

## ✅ BENEFICII STEALTH MODE

### Pentru Tine:

1. ✅ **Monitorizare discretă**
   - Observi comportamentul real al utilizatorilor
   - Nu se comportă diferit când te văd staff

2. ✅ **Fără target pentru atacuri**
   - Trolls nu știu pe cine să ataceze
   - Reducere spam/flood către tine

3. ✅ **Privacy complet**
   - Hostname normal (nu Staff.Network)
   - Canalele tale rămân private
   - Fără notice când primești /WHOIS

4. ✅ **Toate privilegiile de oper!**
   - /KILL, /GLINE, /REHASH - TOT funcționează
   - Doar că nimeni nu știe că le ai

### Pentru Rețea:

1. ✅ **Securitate îmbunătățită**
   - Staff undercover pentru investigații
   - Detectare abuse fără să fie observat

2. ✅ **Moderare eficientă**
   - Verifici comportament REAL, nu când știu că ești staff

---

## 🎮 CUM FUNCȚIONEAZĂ

### La Instalare (Interactive):

```bash
./install.sh

# ...configurare server...

═══════════════════════════════════════
MOD OPERATOR
═══════════════════════════════════════

Alege modul de operator:

1) VIZIBIL (standard, recomandat)
   - Apare în /WHOIS: 'is an UnderChat Staff Member'
   - Hostname: username.Staff.UnderChat.org
   - Vizibil în /STATS o

2) INVIZIBIL (stealth mode)
   - NU apare mesaj staff în /WHOIS
   - Hostname NORMAL ca un user obișnuit
   - Ascuns din /STATS o
   - Păstrezi TOATE privilegiile de oper!

Alege [1-2] [1]: 2  ← Tu alegi 2 pentru stealth!
```

### Config Generat (Stealth):

```conf
# Operator INVIZIBIL (Stealth Mode)
# NU apare în /WHOIS ca staff, hostname normal ca user obișnuit
Operator {
    name = "YourUsername";
    password = "$5$hash...";
    host = "*@*";
    class = "Opers";
    admin = yes;
    snomask = 157445;
    # FĂRĂ swhois = NU apare "is an UnderChat Staff Member"
    hide_oper = yes;        # Ascunde din /STATS o
    hide_channels = yes;    # Ascunde canalele în /WHOIS
    whois_notice = no;      # NU trimite notice când primești /WHOIS
};
```

### Config Generat (Vizibil):

```conf
# Operator VIZIBIL (Standard Mode)
# Apare în /WHOIS ca staff, hostname Staff.Network
Operator {
    name = "YourUsername";
    password = "$5$hash...";
    host = "*@*";
    class = "Opers";
    admin = yes;
    snomask = 157445;
    swhois = "is an UnderChat Staff Member";
    hide_oper = no;         # Vizibil în /STATS o
    hide_channels = yes;    # Ascunde canalele în /WHOIS
    whois_notice = yes;     # Trimite notice când primești /WHOIS
};
```

---

## 📊 DIFERENȚE DETALIATE

| Aspect | VIZIBIL | INVIZIBIL |
|--------|---------|-----------|
| **Mesaj în /WHOIS** | ✅ "is an UnderChat Staff Member" | ❌ Fără mesaj |
| **Hostname** | `Raducu.Staff.UnderChat.org` | `A5F8B9.CD8514.147F4A.B19664.IP` |
| **În /STATS o** | ✅ Apare | ❌ Ascuns |
| **Canale în /WHOIS** | ❌ Ascunse (hide_channels) | ❌ Ascunse |
| **Notice la /WHOIS** | ✅ Primești notice | ❌ NU primești notice |
| **Comenzi oper** | ✅ Toate | ✅ Toate (identic!) |
| **Privilegii** | ✅ Admin complet | ✅ Admin complet |
| **Kill users** | ✅ Da | ✅ Da |
| **GLINE/KLINE** | ✅ Da | ✅ Da |
| **REHASH** | ✅ Da | ✅ Da |
| **Mode +o pe canale** | ✅ Da | ✅ Da |

**Concluzie**: **Toate privilegiile sunt identice!** Doar vizibilitatea diferă.

---

## 🎭 EXEMPLE UTILIZARE

### Scenario 1: Staff Undercover

```
# Tu (stealth oper):
/oper StealthUser password
# Nimeni nu vede că te-ai făcut oper

# Join canal cu probleme:
/join #problema

# Observi comportament:
# Users vorbesc NORMAL, nu se "prefac"

# Verifici abuse:
/whois TrollUser

# Dacă e nevoie, acționezi:
/kill TrollUser :Abuse detected

# Exit discret:
/part #problema
```

### Scenario 2: Investigație Discret

```
# Te faci oper fără să știe nimeni:
/oper InvestigatorUser password

# Monitorizezi canal suspect:
/join #suspect

# Verifici logs:
/check SuspectUser

# Dacă găsești probleme:
/gline *@suspect-host :Network abuse

# Nimeni nu știe cine a făcut gline!
```

### Scenario 3: Test Server ca User Normal

```
# Te conectezi ca user normal:
/server underchat.org
/nick TestUser

# Te faci oper când e nevoie:
/oper TestUser password

# Testezi features ca oper:
/rehash
/stats u

# Dar în /WHOIS pari user normal!
# Perfect pentru debugging production!
```

---

## 🔧 CONFIGURARE MANUALĂ

### Dacă vrei să schimbi un oper existent:

```conf
# Editează ircd.conf:
nano /home/anope/ircd/lib/ircd.conf

# Găsește blocul Operator:
Operator {
    name = "YourOper";
    password = "$5$...";
    host = "*@*";
    class = "Opers";
    admin = yes;
    snomask = 157445;
    
    # Pentru STEALTH, schimbă:
    # swhois = "is an UnderChat Staff Member";  ← ȘTERGE sau comentează
    hide_oper = yes;         ← TRUE
    hide_channels = yes;     ← TRUE
    whois_notice = no;       ← FALSE
};

# Restart IRCd:
killall ircd
/home/anope/ircd/bin/ircd -f /home/anope/ircd/lib/ircd.conf
```

### Adaugă un al doilea oper stealth:

```conf
# În ircd.conf, după primul Operator block:

# Operator stealth secundar
Operator {
    name = "SecretAdmin";
    password = "$PLAIN$secretpass";  # Schimbă cu hash MD5!
    host = "*@*";
    class = "Opers";
    admin = yes;
    snomask = 157445;
    hide_oper = yes;
    hide_channels = yes;
    whois_notice = no;
};
```

---

## 🎯 CÂND SĂ FOLOSEȘTI FIECARE MOD

### Folosește VIZIBIL când:

- ✅ Vrei să fii recunoscut ca staff oficial
- ✅ User support (users să știe că pot cere ajutor)
- ✅ Moderare publică (prezență vizibilă descurajează abuse)
- ✅ Managementul rețelei (clear authority)

### Folosește INVIZIBIL când:

- ✅ Investigații undercover
- ✅ Monitorizare comportament real
- ✅ Testing ca user normal
- ✅ Nu vrei să fii target pentru trolls/spam
- ✅ Privacy personală (când nu ești "on duty")

---

## 🐛 TROUBLESHOOTING

### Problemă: Tot apar mesaje în /WHOIS

**Cauză 1**: Config nu salvat corect.

**Soluție**:
```bash
# Verifică config:
grep -A 10 "name = \"YourOper\"" /home/anope/ircd/lib/ircd.conf

# Ar trebui să vezi:
# hide_oper = yes;
# whois_notice = no;
# Fără swhois = "..."
```

**Cauză 2**: Nu ai făcut restart.

**Soluție**:
```bash
killall ircd
sleep 3
/home/anope/ircd/bin/ircd -f /home/anope/ircd/lib/ircd.conf
```

### Problemă: Tot am hostname Staff.Network

**Cauză**: Feature `OPERHOST_HIDING` e TRUE.

**Soluție**:
```conf
# În ircd.conf, secțiunea features:
features {
    # ...
    "OPERHOST_HIDING" = "FALSE";  # Dezactivează hostname special pentru opers
    # ...
};
```

**Sau** doar nu te autentifica la X înainte de /oper (hostname-ul de la X va fi normal).

### Problemă: Apar în /STATS o

**Cauză**: `hide_oper = no` sau nu e setat.

**Soluție**:
```conf
Operator {
    # ...
    hide_oper = yes;  # OBLIGATORIU pentru stealth!
};
```

---

## ✅ VERIFICARE POST-CONFIGURARE

### Test stealth mode:

```bash
# 1. Conectează IRC client:
/server underchat.org
/nick TestUser

# 2. Fă-te oper:
/oper YourStealthOper password

# 3. Verifică /WHOIS (de pe alt client sau alt user):
/whois YourStealthOper

# Ar trebui să vezi DOAR:
# YourStealthOper is ~user@hostname * Real Name
# YourStealthOper on #channels
# YourStealthOper using server.network The Network
# End of /WHOIS

# FĂRĂ:
# ❌ "is an UnderChat Staff Member"
# ❌ Hostname Staff.Network

# 4. Verifică că ești oper:
/rehash
# Ar trebui să funcționeze!

# 5. Verifică /STATS o (de pe alt user):
/stats o
# NU ar trebui să apari în listă!
```

---

## 📚 FEATURES FOLOSITE

### Setări Operator Block:

| Setare | Vizibil | Invizibil | Funcție |
|--------|---------|-----------|---------|
| `swhois` | "is an..." | ABSENT | Mesaj custom în /WHOIS |
| `hide_oper` | no | **yes** | Ascunde din /STATS o |
| `hide_channels` | yes | yes | Ascunde canale în /WHOIS |
| `whois_notice` | yes | **no** | Notice când primești /WHOIS |

### Features Related:

```conf
features {
    "OPERHOST_HIDING" = "FALSE";  # Dezactivează hostname Staff.Network
    "OPER_HIDE" = "TRUE";         # Permite hide_oper = yes
};
```

---

## 🎉 CONCLUZIE

**Stealth Oper Mode** e perfect pentru:

- 🎭 **Investigații undercover**
- 🔍 **Monitorizare discretă**
- 🛡️ **Protecție împotriva target-ării**
- 🧪 **Testing ca user normal**

**Păstrezi TOATE privilegiile de oper**, doar că nimeni nu știe! 🤫

---

**Implementat de**: Senior Software Architect  
**Data**: 23 Februarie 2026  
**Feature Status**: ✅ **PRODUCTION READY**

---

**🎭 ACUM POȚI FI OPER INVIZIBIL! 🎭**

