GNU/Linux >> Tutoriales Linux >  >> Linux

Permitir el acceso a un servidor virtual Apache solo desde la red local

Las personas que lleguen a esta respuesta, tengan en cuenta que esto es específico para Apache 2.2.

Apache 2.4 ha dejado de usar estas directivas.

La nueva forma es usando el módulo mod_authz_host y el Require directivas. (enlace)

En Apache 2.4 deberías hacer

<Directory /var/www/ncp-web/>
  Require host localhost
  Require ip 127.0.0.1
  Require ip 192.168
  Require ip 10
</Directory>

y elimine todas las directivas Permitir.


Fácil. Simplemente configure algo como esto dentro de su configuración principal o su configuración virtual:

<Directory /var/www/path/to/your/web/documents>

  Order Deny,Allow
  Deny from all
  Allow from 127.0.0.1 ::1
  Allow from localhost
  Allow from 192.168
  Allow from 10
  Satisfy Any

</Directory>

El <Directory></Directory> La declaración básicamente dice:“Use estas reglas para cualquier cosa en este directorio. Y por “este directorio” que se refiere al /var/www/path/to/your/web/documents que configuré en este ejemplo, pero que debe cambiarse para que coincida con la ruta del directorio local de su sitio.

Siguiente dentro del <Directory></Directory> área en la que está cambiando el comportamiento predeterminado de Apache que Allow todo por defecto es Order Deny,Allow . A continuación, establece Deny from all from deniega el acceso a todos. A continuación están los Allow from declaraciones que permiten el acceso desde 127.0.0.1 ::1 (dirección IP del host local), localhost (el servidor local en sí). Eso es todo lo estándar. Desde acceso desde localhost es necesario para muchos procesos internos del sistema.

Lo que sigue es lo que te importa.

El Allow from para 192.168 así como 10 permitirá el acceso desde cualquiera/todas las direcciones de red dentro del rango de red que tiene el prefijo de esos números.

Así que indicando 192.168 eso básicamente significa que si un usuario tiene una dirección como 192.168.59.27 o 192.168.1.123 podrán ver el sitio web.

Y de manera similar usando el Allow from para el 10 prefijo asegura que si alguien tiene una dirección IP de 10.0.1.2 o incluso 10.90.2.3 podrán ver el contenido.

Prácticamente todas las redes internas del mundo usan el 192.168 rango o algo en el 10 rango. Nada externo. Por lo tanto, usar este combo logrará su objetivo de bloquear el acceso al mundo exterior, pero solo permitirá el acceso desde su red local.


Agregue esta sección dentro de su directiva de host virtual:

<Location /mypathurl>
    Order deny,allow
    Deny from all
    Allow from 192.168.1.10
</Location>

Reemplace su IP arriba. Esto no debe usarse para seguridad de nivel financiero, FYI.


Linux
  1. ¿Cómo acceder a Internet desde una máquina virtual en Gnome Boxes?

  2. Cómo configurar el host virtual apache en ubuntu

  3. ¿Obtener direcciones de interfaz de red local usando solo proc?

  4. Cómo acceder al servidor web que se ejecuta en WSL (Subsistema de Windows para Linux) desde la red local

  5. SSH:en una red privada, cómo acceder a la máquina remota desde la máquina de origen sin usar la clave pública ssh

Configuraciones de host virtual de Apache:Linux

Ssh Port Forward para acceder a la máquina doméstica desde cualquier lugar?

Cómo configurar servidores virtuales Apache en Ubuntu 20.04

Resolución de problemas de red desde la línea de comandos con TShark

Cómo configurar la configuración de host virtual de Apache (con ejemplos)

¿Cómo permitir ssh al usuario root solo desde la red local?