Conviertete en todo un experto de Apache (II-II)

10:25 0 Comments A+ a-


Si no han leido la primera parte, se las recomentamos, ya que les ayudará a comprender esta otra: http://underc0de.org/foro/seguridad-en-servidores/conviertete-en-todo-un-experto-de-apache-(i-ii)

Continuamos con el fichero /etc/apache2/sites-available

ServerAdmin

Permite configurar la dirección del administrador del servidor web que se mostrará si el servidor genera una página de error.

  1. ServerAdmin blackdrake@underc0de.org

ServerName

Indica el nombre del servidor.

  1. ServerName www.underc0de.org:80

DocumentRoot
Indicamos el directorio raíz donde colocaremos las páginas web.

  1. DocumentRoot "/www/webs"

También es necesario cambiar la directiva Directory (que veremos más adelante)

  1. <Directory "/www/webs">

UserDir
Indica si se debe permitir que cada usuario de nuestro sistema tenga su propia carpeta personal en el servidor web.

  1. UserDir public_html

DirectoryIndex
Especifica la página por defecto que se buscará al acceder a un directorio de la jerarquía de nuestro sitio.

  1. DirectoryIndex index.html, index.htm, index.php, inicio.html

Si accedemos a un directorio que no contiene ninguno de los archivos especificados, Apache crea dinámicamente un archivo que lista los contenidos:


Esto lo podemos deshabilitar con la directiva (Dentro de <Directory>:

  1. Options -Indexes

Por lo que ahora saldrá Forbidden:

Alias
Permite crear alias para archivos o directorios

  1. Alias /icons/ "/var/www/icons/"
  2. <Directory "/var/www/icons"/>
  3. Options Indexes MultiViews
  4. AllowOverride None
  5. Order allow, deny
  6. Allow from all
  7. </Directory>
  8.  

Activando/Desactivando módulos en Apache2

Para activar un módulo usamos el comando a2enmod con el nombre del módulo:

  1. sudo a2enmod speling

Automáticamente nos informa de lo que está sucediendo:

  1. Enabling module speling.
  2. To activate the new configuration, you need to run:
  3. service apache2 restart

Para desactivarlo lo haremos igual pero con el comando a2dismod

  1. sudo a2dismod speling

Hosts Virtuales en Apache2

Apache puede servir varios sitios web desde un único servidor web. El cliente nunca diferenciará si son sitios en servidores diferentes o en la misma máquina.

La configuración del servidor virtual por defecto se puede consultar aquí:

  1. sudo nano /etc/apache2/sites-available/default

(En estas últimas versiones de apache puede ser que el archivo se llame 000-default.)


Como comenté antes, podemos desactivar el listado de los contenidos de una carpeta con la siguiente linea:

  1. Options -Indexes

Si queremos activarlo, utilizamos:

  1. Options Indexes

Accedemos a /etc/apache2/sites-available y creamos un nuevo archivo (se recomienda que tenga el nombre del dominio + .conf)

  1. <VirtualHost *:80>
  2.  
  3.         ServerAdmin blackdrake@underc0de.org
  4.  
  5.         ServerName  www.underc0de.org
  6.  
  7.         ServerAlias underc0de.org www.underc0de.org
  8.  
  9.         # Indexes + Directory Root.
  10.  
  11.         DirectoryIndex index.php
  12.  
  13.         DocumentRoot /var/www/underc0de
  14.  
  15. </VirtualHost>

Guardamos... y ejecutamos lo siguiente:

  1. sudo a2ensite underc0de.org.conf

Reiniciamos apache

  1. sudo /etc/init.d/apache2 reload

O bien podemos usar:

  1. sudo service apache2 restart

Y ya tendremos nuestro dominio funcionando y apuntando a ese directorio (obviamente las DNS del servidor tienen que estar correctamente configuradas), el directorio al que apunta (/var/www/underc0de) se puede crear antes o después.

En caso de querer desactivar el dominio..

  1. sudo a2dissite acceso.ovh

Y reiniciamos apache

  1. sudo /etc/init.d/apache2 reload

O bien podemos usar:

  1. sudo service apache2 restart