Activer Ping dans le pare-feu Windows Server?

23

Je viens d'installer Windows Server 2008 sur un serveur et je peux me connecter via Remote Desktop mais je ne peux pas faire de ping. Dois-je ouvrir un port spécial sur le pare-feu pour pouvoir envoyer une requête ping à un serveur?

holiveira
la source

Réponses:

34

Par défaut, Windows 2008 ne répond pas aux pings. Autoriser:

Outils administratifs

Pare-feu Windows avec sécurité avancée

Règles entrantes

Partage de fichiers et d'imprimantes (demande d'écho - ICMPv4-IN)

Activer la règle

Vous devriez maintenant être en mesure d'envoyer une requête ping à votre serveur à partir du LAN.

sh-beta
la source
4
Et IPv6? Quelqu'un ne pense-t-il pas à IPv6!?!
Mark Brackett
Je peux ajouter que pour autoriser le ping depuis l'extérieur du sous-réseau, j'ai dû activer "Tous les profils" pour la règle, pas seulement "public".
Zitrax
1
Ouais. c'est le groupe le plus stupide de tous les temps - Partage de fichiers et d'imprimantes pour ICMP;) Je suis tombé sur celui-là aussi;) Tout le monde à qui je dis ça rit.
TomTom
1
Ce qui est plus stupide, c'est que la règle est désactivée pour le profil de domaine, mais activée pour les profils publics et privés. Certes, la plupart des profils de domaine sont sur des réseaux avec un niveau de sécurité existant plus élevé que ceux que vous pourriez considérer comme privés ou même publics ...
dunxd
@MarkBrackett vous êtes peut-être bien maintenant. Néanmoins, la portée par défaut de cette règle limite les choses au sous-réseau local . Remplacez-le par any, et vous pourrez envoyer une requête ping avec ICMPv6 à votre PC depuis l'extérieur de votre WAN.
mlt
12

Activez le ping via le pare-feu Windows sur la ligne de commande comme suit:

netsh firewall set icmpsetting 8

Apparemment, cela a changé dans Windows Server 2008 R2 et versions ultérieures, pour:

netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request"
    protocol=icmpv4:8,any dir=in action=allow

C'est ... euh ... une bouchée.

Jeff Atwood
la source
technet.microsoft.com/en-us/library/cc737845(WS.10).aspx a la liste de toutes les valeurs, recherchez "set icmpsetting" dans la page.
Luke Quinane
9

en PowerShell, vous pouvez utiliser:

# allow-icmp.ps1
# Sets up windows firewall to allow inbound ICMP - using PowerShell
# Thomas Lee - [email protected]

#create firewall manager object
$FWM=new-object -com hnetcfg.fwmgr

# Get current profile
$pro=$fwm.LocalPolicy.CurrentProfile

# Check Profile
if ($pro.IcmpSettings.AllowInboundEchoRequest) {
    "Echo Request already allowed"
} else {
    $pro.icmpsettings.AllowInboundEchoRequest=$true
}

# Display ICMP Settings
"Windows Firewall - current ICMP Settings:"
"-----------------------------------------"
$pro.icmpsettings
Alban
la source
Agréable. +1 pour la qualité de PowerShell.
HopelessN00b
8

Vous souhaiterez autoriser le passage des paquets ICMP. Ping n'utilise pas TCP, il n'y a donc pas de port à ouvrir.

Justin Scott
la source
7
Le fait que "ping n'utilise pas TCP" est un peu trompeur. Puisqu'il existe d'autres protocoles qui utilisent des ports, il est peut-être plus utile de dire «ping utilise ICMP, qui est un protocole sans couche de couche 3, donc vous activez ICMP pour autoriser ping, pas ouvrir un port». Certains pare-feu vous permettent de filtrer le type de message, vous devez donc autoriser «demande d'écho» et «réponse d'écho» pour permettre au ping de fonctionner.
jj33
er, "... pour permettre au ping de fonctionner si vous ne vouliez pas autoriser tous les types de messages pour une raison quelconque".
jj33
2

Une autre façon de résoudre ce problème:

netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow
whizkid
la source
0

Faites attention à utiliser les bons guillemets. Certains sites Web remplacent les guillemets par des symboles similaires qui provoquent des erreurs de syntaxe. Cf entrer la description du lien ici

bernd_k
la source
0

Exécutez ces 2 dans l'admin PowerShell, il active les pings entrants ipv6 et ipv4 sur tous les réseaux (public / privé / domaine):

Set-NetFirewallRule -DisplayName "File and Printer Sharing (Echo Request - ICMPv4-In)" -enabled True
Set-NetFirewallRule -DisplayName "File and Printer Sharing (Echo Request - ICMPv6-In)" -enabled True

Il est équivalent à ce /server//a/6049/147813

CMCDragonkai
la source