¿Por qué el Firewall de Windows bloquea las conexiones LAN entrantes a httpd, a pesar de una regla de firewall?


2

(Similar a esta pregunta , lo sé, sin embargo, la respuesta no fue una solución).

Instalé recientemente Apache 2.4 como un servicio en Windows 7 Professional y lo configuré correctamente, sin embargo, solo es accesible desde clientes LAN si desactivo el Firewall de Windows. (Los clientes de LAN caducan si se está ejecutando Firewall de Windows) Debido a que el problema no está presente al deshabilitar el Firewall de Windows, no presumo que sea un error en la configuración de httpd. Habilitar el registro de paquetes descartados con Firewall de Windows activado me deja con un archivo de registro en blanco, lo que me deja perplejo. Si Windows Firewall está bloqueando / soltando paquetes entrantes al puerto 80, ¿por qué no registraría esto? Mejor aún, ¿por qué Firewall de Windows continuaría bloqueando las conexiones a pesar de mi regla de firewall?

He implementado una regla de firewall entrante con las siguientes opciones: Action: Allow the connection. Service: Apache2.4. TCP Port: 80. Local IP: Any. Remote IP: Local Subnet.He verificado que la regla se aplica a todas las ubicaciones de red. Esto no resuelve el problema. No creo que la regla sea inválida.

La ejecución netstat -aoarrojó el siguiente resultado relevante con Firewall de Windows activado o desactivado. 10.0.0.76es el host en el que estoy ejecutando httpd:

Active Connections
Proto  Local Address          Foreign Address        State           PID
TCP    10.0.0.76:80           Traxus-GD65:0          LISTENING       9104

Si httpd realmente funciona, debería ver un LISTENestado en IP 10.0.0.76:80para PID 9104(PID de httpd en el momento de ejecutar el comando), y de hecho está allí. Se verifica que el servidor Apache funciona correctamente, reduciendo la causa del problema al Firewall de Windows.

Aquí está el resultado de la ejecución netsh advfirewall firewall show rule name="Apache HTTP Server" dir=in:

Rule Name:                            Apache HTTP Server
----------------------------------------------------------------------
Enabled:                              Yes
Direction:                            In
Profiles:                             Domain,Private,Public
Grouping:
LocalIP:                              Any
RemoteIP:                             LocalSubnet
Protocol:                             TCP
LocalPort:                            80
RemotePort:                           All
Edge traversal:                       No
Action:                               Allow
Ok.

Además, aquí está el resultado relevante de ejecutar netstat /bncon Firewall de Windows deshabilitado:

Active Connections
  Proto  Local Address          Foreign Address        State
  TCP    10.0.0.76:80           10.0.0.209:49019       ESTABLISHED
 [httpd.exe]
  TCP    10.0.0.76:80           10.0.0.209:49020       ESTABLISHED
 [httpd.exe]

La 10.0.0.209dirección es mi cliente LAN. Estas dos conexiones solo aparecen cuando Firewall de Windows está desactivado y después de haber conectado el cliente.


¿Puede darnos un netsh advfirewall firewall show rule name=all dir=in ? Puede usar name=Apacheo algo así si conoce el nombre de su regla.
Ryan Ries

He agregado el resultado a la pregunta.
Floofies

Intente cambiarlo a puerto remoto = cualquiera.
Ryan Ries

Cambiar "Puerto remoto" a "Todos los puertos" no fue efectivo.
Floofies

¿Cuál es la parte relevante de la salida de netstat /bn? Compruebe también que el PID que encontró es el PID real del servicio Apache.
Ben N
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.