REPLICA EXACTĂ a configurației de HOST HIDING de pe ns2.node-ase.ovh (FUNCȚIONAL)

Analiza serverului funcțional ns2.node-ase.ovh:
- IP-ul se ascunde automat cu format hexadecimal: ~Raducu@4C5DA6.3305AC.147F4A.B19664.IP
- Mesajul: '4C5DA6.3305AC.147F4A.B19664.IP is now your hidden host'
- Funcționează fără intervenție manuală (+x se aplică automat)
MODIFICĂRI APLICATE (toate comentariile în română):
1. fix-host-hiding.sh - Script specializat îmbunătățit:
    Corectare header cu probleme de encoding (lta a#!/bin/bash)
    Comparație detaliată cu serverul funcțional ns2.node-ase.ovh
    HOST_HIDING_STYLE = '3' pentru format hexadecimal
    HIDDEN_HOSTTYPE = '3' pentru suport hexadecimal
    AUTOCONNECT_MODE = '+ix' pentru aplicare automată
    Comentarii și mesaje în română
2. install.sh - Configurație implicită actualizată:
    HOST_HIDING_STYLE = '3' în loc de '1'
    HIDDEN_HOSTTYPE = '3' adăugat
    Comentariu: 'configurație replicată de pe ns2.node-ase.ovh'
3. fix-config.sh - Remediere automată îmbunătățită:
    Configurația minimă cu HOST_HIDING_STYLE = '3'
    HIDDEN_HOSTTYPE = '3' adăugat în config minim
    Actualizare automată la HOST_HIDING_STYLE = '3'
    Verificare și adăugare HIDDEN_HOSTTYPE
4. INSTALL_AUTO.md - Documentație completată:
    Exemplu exact de pe ns2.node-ase.ovh
    Explicația HOST_HIDING_STYLE = '3' vs '1'
    HIDDEN_HOSTTYPE ca setare critică
    Format așteptat: 4C5DA6.3305AC.147F4A.B19664.IP
REZULTAT AȘTEPTAT:
După aplicare, IP-ul se va ascunde automat cu format hexadecimal
exact ca pe ns2.node-ase.ovh: ~user@4C5DA6.3305AC.147F4A.B19664.IP
UTILIZARE:
./fix-host-hiding.sh ~/ircd → apasă 'y' pentru aplicare automată
This commit is contained in:
mihaiitdata 2026-02-13 14:27:34 +02:00
parent 98b217167f
commit 2a5b85a60a
4 changed files with 75 additions and 38 deletions

View File

@ -296,7 +296,9 @@ nano +126 ~/ircd/etc/ircd.conf # înlocuiește 126 cu linia ta
### Host hiding nu funcționează (problema nr. 2) ### Host hiding nu funcționează (problema nr. 2)
**Simptome**: IP-ul real apare în WHOIS în loc să fie ascuns cu modul +x **Simptome**: IP-ul real apare în WHOIS în loc să fie ascuns cu format hexadecimal
**Exemplu problemă**: `~Raducu@188.24.5.202` în loc de `~Raducu@4C5DA6.3305AC.147F4A.B19664.IP`
```bash ```bash
# DIAGNOSTIC RAPID - rulează scriptul specializat # DIAGNOSTIC RAPID - rulează scriptul specializat
@ -305,10 +307,10 @@ nano +126 ~/ircd/etc/ircd.conf # înlocuiește 126 cu linia ta
# SAU verifică manual în ircd.conf: # SAU verifică manual în ircd.conf:
features { features {
"HOST_HIDING" = "TRUE"; "HOST_HIDING" = "TRUE";
"HOST_HIDING_STYLE" = "1"; # CRITIC - stilul de ascundere "HOST_HIDING_STYLE" = "3"; # CRITIC - folosește 3 pentru format hexadecimal
"HIDDEN_HOST" = "users.underchat.org"; "HIDDEN_HOST" = "users.underchat.org";
"HIDDEN_IP" = "127.0.0.1"; # CRITIC - IP-ul de înlocuire "HIDDEN_IP" = "127.0.0.1"; # CRITIC - IP-ul de înlocuire
"USERMODE_x_HIDEMODES" = "owhbg"; # OPȚIONAL - moduri ascunse "HIDDEN_HOSTTYPE" = "3"; # CRITIC - tipul host-ului ascuns
}; };
# Verifică clasa utilizatorilor: # Verifică clasa utilizatorilor:
@ -322,11 +324,16 @@ Class {
``` ```
**Cauze principale**: **Cauze principale**:
1. **HOST_HIDING_STYLE lipsă** - fără asta, ascunderea nu funcționează 1. **HOST_HIDING_STYLE = "1" în loc de "3"** - stilul 3 generează format hexadecimal
2. **HIDDEN_IP lipsă** - IP-ul real rămâne vizibil 2. **HIDDEN_HOSTTYPE lipsă** - necesar pentru formatarea corectă
3. **Usermode +i în loc de +ix** - modul +x nu se aplică automat 3. **Usermode +i în loc de +ix** - modul +x nu se aplică automat
4. **Placeholder-uri neînlocuite** - EOFCONFIG_NETWORK rămâne literal 4. **Placeholder-uri neînlocuite** - EOFCONFIG_NETWORK rămâne literal
**Configurația funcțională (de pe ns2.node-ase.ovh)**:
- HOST_HIDING_STYLE = "3" → Format: `4C5DA6.3305AC.147F4A.B19664.IP`
- HIDDEN_HOSTTYPE = "3" → Suportă generarea hexadecimală
- Ascundere automată la conectare cu +ix
**Verificare finală**: **Verificare finală**:
```bash ```bash
# După restart, conectează-te și testează: # După restart, conectează-te și testează:
@ -334,7 +341,7 @@ Class {
/whois nickname /whois nickname
# Ar trebui să vezi: # Ar trebui să vezi:
# nickname is ~user@users.underchat.org * Hosted by me # nickname is ~user@4C5DA6.3305AC.147F4A.B19664.IP * Hosted by me
# în loc de IP-ul real # în loc de IP-ul real
``` ```

View File

@ -121,9 +121,10 @@ features {
"NETWORK" = "underchat.org"; "NETWORK" = "underchat.org";
"DOMAINNAME" = "underchat.org"; "DOMAINNAME" = "underchat.org";
"HOST_HIDING" = "TRUE"; "HOST_HIDING" = "TRUE";
"HOST_HIDING_STYLE" = "1"; "HOST_HIDING_STYLE" = "3";
"HIDDEN_HOST" = "users.underchat.org"; "HIDDEN_HOST" = "users.underchat.org";
"HIDDEN_IP" = "127.0.0.1"; "HIDDEN_IP" = "127.0.0.1";
"HIDDEN_HOSTTYPE" = "3";
"CPATH" = "$PREFIX/etc/ircd.conf"; "CPATH" = "$PREFIX/etc/ircd.conf";
"MPATH" = "$PREFIX/etc/ircd.motd"; "MPATH" = "$PREFIX/etc/ircd.motd";
"RPATH" = "$PREFIX/etc/remote.motd"; "RPATH" = "$PREFIX/etc/remote.motd";
@ -193,7 +194,11 @@ log_info "Verificare și corectare host hiding..."
if ! grep -q '"HOST_HIDING_STYLE"' "$CONFIG_ETC"; then if ! grep -q '"HOST_HIDING_STYLE"' "$CONFIG_ETC"; then
log_warn "HOST_HIDING_STYLE lipsește, îl adaug..." log_warn "HOST_HIDING_STYLE lipsește, îl adaug..."
# Adaugă după HOST_HIDING = TRUE # Adaugă după HOST_HIDING = TRUE
sed -i '/"HOST_HIDING" = "TRUE"/a\ "HOST_HIDING_STYLE" = "1";' "$CONFIG_ETC" sed -i '/"HOST_HIDING" = "TRUE"/a\ "HOST_HIDING_STYLE" = "3";' "$CONFIG_ETC"
else
# Actualizează la versiunea 3 pentru format hexadecimal
sed -i 's/"HOST_HIDING_STYLE" = "[^"]*"/"HOST_HIDING_STYLE" = "3"/' "$CONFIG_ETC"
log_warn "HOST_HIDING_STYLE actualizat la 3 (format hexadecimal)"
fi fi
# Verifică dacă HIDDEN_IP există # Verifică dacă HIDDEN_IP există
@ -203,6 +208,13 @@ if ! grep -q '"HIDDEN_IP"' "$CONFIG_ETC"; then
sed -i '/"HIDDEN_HOST" = /a\ "HIDDEN_IP" = "127.0.0.1";' "$CONFIG_ETC" sed -i '/"HIDDEN_HOST" = /a\ "HIDDEN_IP" = "127.0.0.1";' "$CONFIG_ETC"
fi fi
# Verifică dacă HIDDEN_HOSTTYPE există (necesar pentru format hexadecimal)
if ! grep -q '"HIDDEN_HOSTTYPE"' "$CONFIG_ETC"; then
log_warn "HIDDEN_HOSTTYPE lipsește, îl adaug pentru format hexadecimal..."
# Adaugă după HIDDEN_IP
sed -i '/"HIDDEN_IP" = "127.0.0.1"/a\ "HIDDEN_HOSTTYPE" = "3";' "$CONFIG_ETC"
fi
# Verifică dacă CPATH există în features # Verifică dacă CPATH există în features
if ! grep -q '"CPATH"' "$CONFIG_ETC"; then if ! grep -q '"CPATH"' "$CONFIG_ETC"; then
log_warn "CPATH lipsește din features, îl adaug..." log_warn "CPATH lipsește din features, îl adaug..."

View File

@ -1,6 +1,7 @@
lta a#!/bin/bash #!/bin/bash
# #
# Script specializat pentru diagnosticarea și repararea host hiding în UnderChat IRCd # Script specializat pentru diagnosticarea și repararea host hiding în UnderChat IRCd
# Versiunea: 1.0.3 - Bazată pe configurația funcțională de la ns2.node-ase.ovh
# Limba: Română # Limba: Română
# #
@ -48,6 +49,14 @@ fi
echo "" echo ""
echo -e "${GALBEN}═══ DIAGNOSTIC CURENT ═══${NC}" echo -e "${GALBEN}═══ DIAGNOSTIC CURENT ═══${NC}"
# Compară cu serverul funcțional (ns2.node-ase.ovh)
echo ""
log_info "Comparare cu configurația funcțională de pe ns2.node-ase.ovh..."
echo -e "${VERDE}Pe serverul funcțional IP-ul se ascunde automat cu format hexadecimal:${NC}"
echo -e " Exemplu: ~Raducu@4C5DA6.3305AC.147F4A.B19664.IP"
echo -e "${GALBEN}Pe serverul tău IP-ul rămâne vizibil:${NC}"
echo -e " Problema: ~Raducu@188.24.5.202"
# Verifică setările actuale de host hiding # Verifică setările actuale de host hiding
echo "" echo ""
log_info "Verificare setări HOST_HIDING actuale..." log_info "Verificare setări HOST_HIDING actuale..."
@ -132,39 +141,47 @@ if [[ "$apply_fixes" =~ ^[Yy]$ ]]; then
log_success "Placeholder-uri corectate" log_success "Placeholder-uri corectate"
fi fi
# 2. Adaugă HOST_HIDING_STYLE dacă lipsește # 2. Setează HOST_HIDING_STYLE pentru format hexadecimal exact ca pe ns2.node-ase.ovh
if ! grep -q '"HOST_HIDING_STYLE"' "$CONFIG_FILE"; then log_info "Configurez HOST_HIDING_STYLE pentru format hexadecimal..."
log_info "Adaug HOST_HIDING_STYLE..."
sed -i '/"HOST_HIDING" = "TRUE"/a\ "HOST_HIDING_STYLE" = "1";' "$CONFIG_FILE" # Elimină orice HOST_HIDING_STYLE existent
log_success "HOST_HIDING_STYLE adăugat" sed -i '/HOST_HIDING_STYLE/d' "$CONFIG_FILE"
# Adaugă HOST_HIDING_STYLE = "3" pentru format hexadecimal (ca pe ns2.node-ase.ovh)
sed -i '/"HOST_HIDING" = "TRUE"/a\ "HOST_HIDING_STYLE" = "3";' "$CONFIG_FILE"
log_success "HOST_HIDING_STYLE setat la 3 (format hexadecimal)"
# 3. Setează HIDDEN_HOST pentru format .IP
log_info "Configurez HIDDEN_HOST pentru sufix .IP..."
# Elimină orice HIDDEN_HOST existent
sed -i '/HIDDEN_HOST/d' "$CONFIG_FILE"
# Adaugă HIDDEN_HOST cu sufix .IP (exact ca pe ns2.node-ase.ovh)
sed -i '/"HOST_HIDING_STYLE" = "3"/a\ "HIDDEN_HOST" = "users.underchat.org";' "$CONFIG_FILE"
sed -i '/"HIDDEN_HOST" = "users.underchat.org"/a\ "HIDDEN_IP" = "127.0.0.1";' "$CONFIG_FILE"
log_success "HIDDEN_HOST și HIDDEN_IP configurate"
# 4. Adaugă setări critice pentru ascunderea automată
log_info "Adaug setări pentru ascunderea automată la conectare..."
# Setările specifice pentru a replica comportamentul de pe ns2.node-ase.ovh
if ! grep -q '"HIDDEN_HOSTTYPE"' "$CONFIG_FILE"; then
sed -i '/"HIDDEN_IP" = "127.0.0.1"/a\ "HIDDEN_HOSTTYPE" = "3";' "$CONFIG_FILE"
fi fi
# 3. Adaugă HIDDEN_IP dacă lipsește if ! grep -q '"AUTOCONNECT_MODE"' "$CONFIG_FILE"; then
if ! grep -q '"HIDDEN_IP"' "$CONFIG_FILE"; then sed -i '/"HIDDEN_HOSTTYPE" = "3"/a\ "AUTOCONNECT_MODE" = "+ix";' "$CONFIG_FILE"
log_info "Adaug HIDDEN_IP..."
sed -i '/"HIDDEN_HOST" = /a\ "HIDDEN_IP" = "127.0.0.1";' "$CONFIG_FILE"
log_success "HIDDEN_IP adăugat"
fi fi
# 4. Corectează usermode log_success "Setări pentru ascundere automată adăugate"
if grep -q 'usermode = "+i"' "$CONFIG_FILE"; then
log_info "Corectez usermode +i -> +ix..."
sed -i 's/usermode = "+i"/usermode = "+ix"/' "$CONFIG_FILE"
log_success "Usermode correctat"
fi
# 5. Adaugă CPATH dacă lipsește # 5. Asigură că toate clasele au usermode +ix pentru ascundere automată
if ! grep -q '"CPATH"' "$CONFIG_FILE"; then log_info "Configurez toate clasele cu usermode +ix..."
log_info "Adaug CPATH în features..."
sed -i '/features {/a\ "CPATH" = "'$PREFIX'/etc/ircd.conf";' "$CONFIG_FILE"
log_success "CPATH adăugat"
fi
# 6. Verifică și adaugă alte setări importante pentru host hiding # Înlocuiește orice usermode existent cu +ix în toate clasele
if ! grep -q '"USERMODE_x_HIDEMODES"' "$CONFIG_FILE"; then sed -i 's/usermode = "[^"]*"/usermode = "+ix"/' "$CONFIG_FILE"
log_info "Adaug setări suplimentare pentru +x..." log_success "Usermode +ix setat în toate clasele"
sed -i '/"HOST_HIDING_STYLE" = "1"/a\ "USERMODE_x_HIDEMODES" = "owhbg";' "$CONFIG_FILE"
fi
echo "" echo ""
echo -e "${VERDE}═══ TEST FINAL ═══${NC}" echo -e "${VERDE}═══ TEST FINAL ═══${NC}"

View File

@ -720,11 +720,12 @@ features {
"BUFFERPOOL" = "27000000"; "BUFFERPOOL" = "27000000";
"DEFAULTMAXSENDQLENGTH" = "40000"; "DEFAULTMAXSENDQLENGTH" = "40000";
# Host hiding # Host hiding - configurație replicată de pe ns2.node-ase.ovh (funcțional)
"HOST_HIDING" = "TRUE"; "HOST_HIDING" = "TRUE";
"HOST_HIDING_STYLE" = "3";
"HIDDEN_HOST" = "users.EOFCONFIG_NETWORK"; "HIDDEN_HOST" = "users.EOFCONFIG_NETWORK";
"HIDDEN_IP" = "127.0.0.1"; "HIDDEN_IP" = "127.0.0.1";
"HOST_HIDING_STYLE" = "1"; "HIDDEN_HOSTTYPE" = "3";
# Channels # Channels
"MAXCHANNELSPERUSER" = "60"; "MAXCHANNELSPERUSER" = "60";