¿Es una buena práctica prohibir el acceso IP al puerto 80?

2

Veo que algunos sitios han bloqueado el puerto 80 (o 443) al que se accede por IP.
Cuando accede por IP, aparece una página prohibida por Nginx (con la versión del sistema operativo existente). Mi pregunta es: ¿afecta a cualquier aspecto de la seguridad de ese servidor y de la aplicación web que se ejecuta en él de manera positiva? Si depende del sistema operativo, por favor provisto para Ubuntu.

    
pregunta Mehi Shokri 08.04.2016 - 17:52
fuente

1 respuesta

5
  

Veo que algunos sitios han bloqueado el puerto 80 (o 443) al que se accede por IP.

Supongo que quiere decir que el acceso a http://hostname funciona mientras que http://ip-adress/ no funciona. En el nivel TCP, al host todavía se accede mediante una dirección IP, pero la solicitud HTTP se ve diferente porque el nombre dado en la URL está contenido en la solicitud HTTP, por ejemplo,

 GET /some-page HTTP/1.1
 Host: hostname

La razón principal para tener el nombre de host dentro de la solicitud HTTP es que a menudo tiene múltiples servidores virtuales con diferentes nombres de host en la misma dirección IP. Estas tienen configuraciones diferentes y el servidor debe poder distinguir qué configuración debe usarse. Si le asigna un nombre de host que no tiene una configuración especial, se usa alguna configuración predeterminada y, a menudo, solo muestra una página de error (¿qué otra cosa debería hacer?).

Y esto es exactamente lo que sucede cuando se da una dirección IP en lugar del nombre de host. Como no hay una configuración especial para Host: IP address , se utilizará la configuración predeterminada que muestra el error.

Aparte de eso, tiene sentido comprobar correctamente el nombre de host, incluso si es un solo sitio en esta dirección IP, ya que aceptar un nombre de host arbitrario puede llevar a DNS rebinding y ataques similares.

    
respondido por el Steffen Ullrich 08.04.2016 - 18:14
fuente

Lea otras preguntas en las etiquetas