From bea8675c84787349927942873511f3624d97141f Mon Sep 17 00:00:00 2001 From: mihaiitdata Date: Mon, 23 Feb 2026 21:34:58 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20Add=20fix=20guide=20for=20WHOIS?= =?UTF-8?q?=20Founder=20in=20stealth=20mode?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FIX_WHOIS_FOUNDER_STEALTH.md | 289 +++++++++++++++++++++++++++++++++++ install.sh | 27 +++- 2 files changed, 312 insertions(+), 4 deletions(-) create mode 100644 FIX_WHOIS_FOUNDER_STEALTH.md diff --git a/FIX_WHOIS_FOUNDER_STEALTH.md b/FIX_WHOIS_FOUNDER_STEALTH.md new file mode 100644 index 0000000..c3cb8fc --- /dev/null +++ b/FIX_WHOIS_FOUNDER_STEALTH.md @@ -0,0 +1,289 @@ +# 🔧 FIX URGENT - "is an UnderChat Founder" în Stealth Mode + +**Data**: 23 Februarie 2026 +**Problema**: Tot apare "is an UnderChat Founder" în /WHOIS cu stealth mode +**Status**: ✅ **FIX GATA & PUSHED** + +--- + +## 🐛 PROBLEMA + +Ai selectat **INVIZIBIL** (stealth mode) dar în /WHOIS tot apare: + +``` +n1 is an UnderChat Founder +``` + +### Cauza: + +**Features `WHOIS_ADMIN` și `WHOIS_OPER` sunt GLOBALE!** + +Ele afișează mesaje pentru **TOȚI operatorii** cu `admin = yes`, **INDIFERENT** de `swhois` din Operator block! + +--- + +## ✅ FIX MANUAL RAPID (2 minute) + +### Pas 1: Editează Config + +```bash +# Conectează SSH: +ssh user@underchat.org + +# Editează config: +nano /home/anope/ircd/lib/ircd.conf +``` + +### Pas 2: Găsește și Comentează Features + +**Caută în config** (CTRL+W): +``` +WHOIS_OPER +``` + +**Ar trebui să găsești**: +```conf +features { + # ...alte features... + + "WHOIS_OPER" = "is an UnderChat Staff Member"; + "WHOIS_ADMIN" = "is an UnderChat Founder"; + + # ...alte features... +}; +``` + +**Comentează-le** (adaugă # la început): +```conf +features { + # ...alte features... + + # WHOIS messages DEZACTIVATE pentru stealth mode + # "WHOIS_OPER" = "is an UnderChat Staff Member"; + # "WHOIS_ADMIN" = "is an UnderChat Founder"; + + # ...alte features... +}; +``` + +### Pas 3: Salvează + +``` +CTRL+O (save) +ENTER +CTRL+X (exit) +``` + +### Pas 4: Restart IRCd + +```bash +killall ircd && sleep 3 && /home/anope/ircd/bin/ircd -f /home/anope/ircd/lib/ircd.conf +``` + +--- + +## ✅ VERIFICARE + +### Test în IRC: + +``` +/whois n1 + +Ar trebui să vezi: +n1 is ~hide@AC4C07.303BCF.787BA0.5E01D0.IP * Global Transit NET +n1 on #CService +n1 using Test.UnderChat.org The UnderCHat.org Network +n1 is actually ~hide@10.1.100.2 [10.1.100.2] +End of /WHOIS list. + +FĂRĂ: +❌ "is an UnderChat Founder" +❌ "is an UnderChat Staff Member" +``` + +--- + +## 📊 CE FEATURES COMENTEZI + +### Pentru Stealth Mode (Invizibil): + +```conf +features { + # DEZACTIVATE pentru stealth: + # "WHOIS_OPER" = "is an UnderChat Staff Member"; + # "WHOIS_ADMIN" = "is an UnderChat Founder"; + + # PĂSTREAZĂ acestea (nu le atinge): + "WHOIS_SERVICE" = "is an UnderChat Network Service"; + "OPERMOTD" = "TRUE"; + "OMPATH" = "/path/to/lib/ircd.opermotd"; +}; +``` + +### Pentru Mod Vizibil (Normal): + +```conf +features { + # ACTIVE pentru vizibil: + "WHOIS_OPER" = "is an UnderChat Staff Member"; + "WHOIS_ADMIN" = "is an UnderChat Founder"; + + "WHOIS_SERVICE" = "is an UnderChat Network Service"; + "OPERMOTD" = "TRUE"; + "OMPATH" = "/path/to/lib/ircd.opermotd"; +}; +``` + +--- + +## 🎯 DIFERENȚA + +### ÎNAINTE (cu WHOIS_ADMIN activ): + +``` +/whois n1 +n1 is an UnderChat Founder ← APARE (GREȘIT pentru stealth!) +``` + +### DUPĂ (cu WHOIS_ADMIN comentat): + +``` +/whois n1 +# NU mai apare "is an UnderChat Founder" ← CORECT pentru stealth! +``` + +--- + +## 🔍 DE CE SE ÎNTÂMPLA + +### Operator Block vs Features: + +**Operator block** (ircd.conf): +```conf +Operator { + name = "n1"; + admin = yes; ← Activează WHOIS_ADMIN + # FĂRĂ swhois aici + hide_oper = yes; +}; +``` + +**Features** (ircd.conf): +```conf +features { + "WHOIS_ADMIN" = "is an UnderChat Founder"; ← Afișează pentru TOȚI cu admin=yes +}; +``` + +**Rezultat**: Chiar dacă NU ai `swhois` în Operator block, feature-ul `WHOIS_ADMIN` tot afișează mesaj pentru că ai `admin = yes`! + +**Soluție**: Comentează feature-ul pentru stealth mode! + +--- + +## 🚀 FIX AUTOMAT (Pentru Viitor) + +### Instalări Noi: + +Am actualizat `install.sh` în Gitea: + +- **Alegi VIZIBIL** (1) → WHOIS_ADMIN și WHOIS_OPER active +- **Alegi INVIZIBIL** (2) → WHOIS_ADMIN și WHOIS_OPER comentate automat + +### Pull Noua Versiune: + +```bash +cd underchat-ircd +git pull origin main +./install.sh +# Alege opțiunea 2 (INVIZIBIL) +# Config generat CORECT din prima! +``` + +--- + +## 🐛 TROUBLESHOOTING + +### Problemă: Tot apare după restart + +**Cauză**: Config nu salvat sau fișier greșit. + +**Soluție**: +```bash +# Verifică că features sunt comentate: +grep -A 2 "WHOIS_ADMIN" /home/anope/ircd/lib/ircd.conf + +# Ar trebui să vezi: +# # "WHOIS_ADMIN" = "is an UnderChat Founder"; + +# Dacă NU e comentat, editează din nou și salvează +``` + +### Problemă: Nu găsesc WHOIS_ADMIN în config + +**Cauză**: Config vechi sau lipsă features. + +**Soluție**: +```bash +# Caută în tot fișierul: +grep -n "WHOIS" /home/anope/ircd/lib/ircd.conf + +# Dacă nu găsești, adaugă în secțiunea features: +features { + # ... + # WHOIS messages DEZACTIVATE pentru stealth mode + # "WHOIS_OPER" = "is an UnderChat Staff Member"; + # "WHOIS_ADMIN" = "is an UnderChat Founder"; + # ... +}; +``` + +--- + +## 📚 DOCUMENTE RELATED + +- **STEALTH_OPER_MODE.md** - Documentație completă stealth mode +- **install.sh** - Template actualizat cu fix automat + +--- + +## ✅ CHECKLIST FIX + +- [ ] **Editează** `/home/anope/ircd/lib/ircd.conf` +- [ ] **Comentează** `"WHOIS_OPER" = "...";` +- [ ] **Comentează** `"WHOIS_ADMIN" = "...";` +- [ ] **Salvează** (CTRL+O, ENTER, CTRL+X) +- [ ] **Restart** IRCd (killall + start) +- [ ] **Test** /whois (NU mai apare "Founder") +- [ ] **Enjoy** stealth mode complet! 🎭 + +--- + +## 🎉 REZULTAT FINAL + +**WHOIS va arăta**: +``` +n1 is ~hide@AC4C07.303BCF.787BA0.5E01D0.IP * Global Transit NET +n1 on #CService +n1 using Test.UnderChat.org The UnderCHat.org Network +n1 is actually ~hide@10.1.100.2 [10.1.100.2] +End of /WHOIS list. +``` + +**FĂRĂ**: +- ❌ "is an UnderChat Founder" +- ❌ "is an UnderChat Staff Member" + +**CU TOATE PRIVILEGIILE**: +- ✅ /KILL, /GLINE, /REHASH, TOT! + +--- + +**Fixed by**: Senior Software Architect +**Data**: 23 Februarie 2026 +**Status**: ✅ **FIX PUSHED & READY** + +--- + +**🎭 ACUM VEI FI CU ADEVĂRAT INVIZIBIL! 🤫** + diff --git a/install.sh b/install.sh index 05a9595..40762f0 100755 --- a/install.sh +++ b/install.sh @@ -1163,9 +1163,8 @@ features { "OPER_HIDE" = "TRUE"; # Operatori - Mesaje Custom - "WHOIS_OPER" = "is an UnderChat Staff Member"; + EOFCONFIG_WHOIS_MESSAGES "WHOIS_SERVICE" = "is an UnderChat Network Service"; - "WHOIS_ADMIN" = "is an UnderChat Founder"; "OPERMOTD" = "TRUE"; "OMPATH" = "$PREFIX/lib/ircd.opermotd"; @@ -1186,6 +1185,8 @@ EOFCONFIG # Generare bloc Operator (vizibil sau invizibil) local operator_block="" + local whois_messages="" + if [ "$oper_stealth" = "yes" ]; then # Operator INVIZIBIL (stealth mode) operator_block="# Operator INVIZIBIL (Stealth Mode) @@ -1200,8 +1201,13 @@ Operator { # 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 = yes; # NU trimite notice când primești /WHOIS + whois_notice = no; # NU trimite notice când primești /WHOIS };" + + # Mesaje WHOIS goale pentru stealth (comentate pentru claritate) + whois_messages="# WHOIS messages DEZACTIVATE pentru stealth mode + # \"WHOIS_OPER\" = \"is an UnderChat Staff Member\"; + # \"WHOIS_ADMIN\" = \"is an UnderChat Founder\";" else # Operator VIZIBIL (standard) operator_block="# Operator VIZIBIL (Standard Mode) @@ -1216,8 +1222,12 @@ Operator { swhois = \"is an UnderChat Staff Member\"; hide_oper = no; # Vizibil în /STATS o hide_channels = yes; # Ascunde canalele în /WHOIS - whois_notice = no; # Trimite notice când primești /WHOIS + whois_notice = yes; # Trimite notice când primești /WHOIS };" + + # Mesaje WHOIS active pentru vizibil + whois_messages="\"WHOIS_OPER\" = \"is an UnderChat Staff Member\"; + \"WHOIS_ADMIN\" = \"is an UnderChat Founder\";" fi # Înlocuiește placeholder-ele @@ -1244,6 +1254,15 @@ Operator { { print } ' "$config_file" > "$config_file.tmp" && mv "$config_file.tmp" "$config_file" + # Înlocuire mesaje WHOIS cu awk + awk -v whois="$whois_messages" ' + /EOFCONFIG_WHOIS_MESSAGES/ { + print whois + next + } + { print } + ' "$config_file" > "$config_file.tmp" && mv "$config_file.tmp" "$config_file" + sed -i "s|EOFCONFIG_OPER_USER|$oper_user|g" "$config_file" sed -i "s|EOFCONFIG_OPER_PASS|$oper_pass|g" "$config_file"