CH-J Server Managermanagementul serverului peste SSH
Meniu
Toate ghidurile și articolele →

ping eșuează, dar SSH și HTTPS funcționează: de ce și este o problemă?

De ce un server poate ignora ping și totuși să funcționeze normal, cum testezi direct serviciile și când blocarea ICMP provoacă defecțiuni reale.

De ce se întâmplă acest lucru

ping folosește ICMP, în timp ce SSH și HTTPS folosesc porturi TCP. Sunt tipuri de trafic separate, iar un firewall poate elimina unul și îl poate permite pe celălalt. Multe rețele și grupuri de securitate din cloud blochează implicit ICMP echo. Prin urmare, lipsa unui răspuns nu înseamnă că serverul este oprit, iar un răspuns nu dovedește că serviciile lui funcționează.

Testează serviciul, nu ping

Verifică porturile și protocoalele de care ai cu adevărat nevoie. Dacă aceste teste reușesc, serverul este accesibil pentru acele servicii, iar eșecul ping indică doar un filtru undeva pe traseu.

nc -vz -w 5 server.example 22
nc -vz -w 5 server.example 443
curl -sSI https://server.example/

Urmărește traseul cu TCP

Un traceroute clasic poate afișa doar asteriscuri când ICMP sau UDP este filtrat. Cu TCP către un port deschis, poți adesea ajunge mai departe. Ai nevoie de drepturi root și poate fi necesar să instalezi mai întâi traceroute, deoarece sistemele minimale nu îl includ.

sudo traceroute -T -p 443 server.example

Caută filtrul pe serverul tău

Dacă administrezi serverul, verifică firewallul lui și setarea din nucleu care ignoră cererile echo. Reține că blocarea poate fi și în afara serverului, într-un grup de securitate sau într-un router, și că un furnizor poate filtra ICMP în rețeaua sa fără să vezi vreo regulă.

sysctl net.ipv4.icmp_echo_ignore_all
sudo nft list ruleset | grep -i icmp
sudo ufw status verbose

Când blocarea ICMP chiar provoacă defecțiuni

Blocarea echo este în general inofensivă, dar blocarea întregului trafic ICMP nu este. Descoperirea MTU pe traseu se bazează pe mesajele care semnalează un pachet prea mare. Fără ele, schimburile mici de date funcționează, iar cele mari se blochează, de exemplu, o autentificare SSH care reușește, dar apoi se blochează la afișarea unui volum mare de date. IPv6 depinde și mai mult de ICMPv6. A doua comandă testează un traseu pentru un MTU de 1500 de octeți pe Linux.

ip route get 192.0.2.10
ping -M do -s 1472 -c 3 192.0.2.10

Comparație în CH-J Server Manager

Server Diagnostics rulează ping prin instrumentul sistemului, fără drepturi root, alături de teste separate pentru TCP, identificare SSH, HTTP și TLS, astfel încât eșecul ping să poată fi interpretat în context. Un ping eșuat aici înseamnă că nu a sosit niciun răspuns. Nu arată unde a fost eliminat pachetul, iar nici traceroute nu poate oferi întotdeauna răspunsul.

Documentație detaliată

RFC 4890: ICMPv6 filtering →

man: ping →

Deblocare biometrică și securitate →