Problema de configuración de Apache2: denegar desde IP externa, permitir por nombre de host

Problema de configuración de Apache2: denegar desde IP externa, permitir por nombre de host

He estado jugando con esto durante un par de días y parece que no puedo hacerlo funcionar. Tengo 2 sitios habilitados a través de sus propios archivos de configuración. sitio1.conf y sitio2.conf

Cada sitio tiene reglas de reescritura de Let's Encrypt que los dirigen al sitio*-le-ssl.conf

Tengo un problema en el que cuando ingreso mi IP pública en el navegador se carga el sitio1 y quiero tener un error como prohibido o algo más que cargar mi sitio1.

El sitio 2 parece cargarse sólo cuando lo especifica su nombre de host.

site1.conf es

<VirtualHost *:80>
     ServerAdmin [email protected]
     ServerName site1.mydomian.com
     ServerAlias site1.mydomian.com
     DocumentRoot /var/www/site1
     <Directory /var/www/site1>
         Options FollowSymLinks
         AllowOverride All
         Require all granted
         Header always set X-Frame-Options "SAMEORIGIN"
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/site1_error.log
     CustomLog ${APACHE_LOG_DIR}/site1_access.log combined

     RewriteEngine on
     RewriteCond %{SERVER_NAME} =site1.mydomian.com
     RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

site1-le-ssl.conf es

<IfModule mod_ssl.c>
<VirtualHost *:443>
     ServerAdmin [email protected]
     ServerName site1.mydomian.com
     ServerAlias site1.mydomian.com
     DocumentRoot /var/www/site1/
     <Directory /var/www/site1>
         Options FollowSymLinks
         AllowOverride All
         Require all granted
         Header always set X-Frame-Options "SAMEORIGIN"
     </Directory>

        ErrorLog ${APACHE_LOG_DIR}/site1_error.log
        CustomLog ${APACHE_LOG_DIR}/site1_access.log combined

        SSLCertificateFile /etc/letsencrypt/live/site1.mydomian.com/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/site1.mydomian.com/privkey.pem
        Include /etc/letsencrypt/options-ssl-apache.conf

</VirtualHost>

</IfModule>

Incluso cuando deshabilité site1.conf usando a2dissite site1y recargué Apache, este sitio aún se cargaba cuando se accedía por IP pública.

En mi archivo apache2.conf cambié esto a Requerir todo denegado, pero todavía estaba cargando el sitio1.

<Directory /var/www/>
        Options FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

Cuando cambié el nombre de /var/www/site1 a /var/www/site1.old y luego accedí a una IP pública, obtuve una página Prohibida, que es lo que esperaría al acceder desde una IP.

¿Alguna idea de cómo habilitar el sitio1 y acceder a él mediante el nombre de host sitio1.midominio.com y no mediante una IP pública?

información relacionada