Crear dominio y subdominio en apache2 pata CTF's

Dominio con apache2

Primero vamos a crear los archivos correspondientes paso a paso para que esto funcione.

Vamos a crear el archivo de configuracion del dominio llamandolo en mi caso mi_dominio.

sudo nano /etc/apache2/sites-available/mi_dominio.conf

#Dentro del nano
<VirtualHost *:80>
    ServerName mi_dominio.local
    DocumentRoot /var/www/mi_dominio

    <Directory /var/www/mi_dominio>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/mi_dominio_error.log
    CustomLog ${APACHE_LOG_DIR}/mi_dominio_access.log combined
</VirtualHost>

Ahi especificamos dentro del nano como queremos que sea nuestro dominio y donde queremos que este dicha carpeta, en mi caso todo sera dentro de /www las carpetas para que no haya confusiones.

Crearemos la carpeta del dominio con un index.html en su interior para ver que funciona.

sudo mkdir -p /var/www/mi_dominio
echo "<html><body><h1>Bienvenido a mi dominio</h1></body></html>" | sudo tee /var/www/mi_dominio/index.html

Despues habilitamos el dominio de la siguiente manera.

sudo a2ensite mi_dominio.conf

Antes de reiniciar el apache2 haremos que les redirija al dominio directamente para que no les redirija al index.html del que viene por defecto en /www/html/, haciendo lo siguiente.

sudo nano /etc/apache2/sites-available/000-default-ip.conf

#Dentro del nano
<VirtualHost *:80>
    # Este VirtualHost captura cualquier solicitud hecha directamente a la IP
    ServerName default
    DocumentRoot /var/www/html

    # Redirige todas las solicitudes a tu dominio principal
    Redirect permanent / http://mi_dominio.local/
</VirtualHost>

Y ahi especificamos que sea a ese dominio que nosotros tenemos creado, por lo que cada vez que metan la IP les redirigira a nuestro dominio creado con nuestro index.

Lo establecemos para que funcione.

sudo a2ensite 000-default-ip.conf

Y por precaucion desactivaremos el que te redirija al /html/ que viene por defecto en apache2.

sudo a2dissite 000-default.conf

Ahora si reiniciamos el apache2.

service apache2 restart

Si ahora lo comprobamos con la siguiente URL, tendria que redirigirnos al dominio en cuestion y para poder ver el contenido de la pagina web del dominio tendremos que editar el archivo hosts de la siguiente forma.

URL = http://<IP>/
nano /etc/hosts

#Dentro del nano
<IP>       mi_dominio.local

Lo guardamos y ahora si deberiamos de ver su contenido.

Subdominio con apache2

El proceso sera similar al anterior, crearemos el archivo de configuracion que tendra el subdominio.

sudo nano /etc/apache2/sites-available/subdominio.mi_dominio.conf

#Dentro del nano
<VirtualHost *:80>
    ServerName subdominio.mi_dominio.local
    DocumentRoot /var/www/subdominio

    <Directory /var/www/subdominio>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/subdominio_error.log
    CustomLog ${APACHE_LOG_DIR}/subdominio_access.log combined
</VirtualHost>

Aqui lo adaptaremos a nuestras necesidades y crearemos la carpeta en la que pusimos que va a estar nuestro subdominio, para que cuando pongamos nuestro subdominio nos redirija a ese index.html.

sudo mkdir -p /var/www/subdominio
echo "<html><body><h1>Bienvenido al subdominio</h1></body></html>" | sudo tee /var/www/subdominio/index.html

Una vez creado todo lo anterior, habilitaremos el subdominio de la siguiente forma.

sudo a2ensite subdominio.mi_dominio.conf

Y reiniciaremos el apache2 de la siguiente forma.

service apache2 restart

Ahora lo comprobaremos poniendo nuestro subdominio en el archivo hosts.

nano /etc/hosts

#Dentro del nano
<IP>       mi_dominio.local subdominio.mi_dominio.local

Lo guardamos y si ponemos en la URL el subdominio tendria que aparecernos la pagina web del subdominio.

URL = http://subdominio.mi_dominio.local/

Last updated