meta data de esta página
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| linux:apache2 [2013/04/09 22:49] – lc | linux:apache2 [2014/04/16 10:33] (actual) – borrado lc | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ====== Apache 2 ====== | ||
| - | |||
| - | * Para instalar el Apache2 < | ||
| - | * Para arrancar el apache < | ||
| - | * Para recargar la configuración del apache < | ||
| - | * Para ver el estado del servidor apache < | ||
| - | |||
| - | < | ||
| - | |||
| - | ===== Restricción de acceso | ||
| - | |||
| - | Podremos restringir el acceso de dos maneras: Por usuario y por IP | ||
| - | |||
| - | Para restringir por usuario, añadimos lo siguiente a la configuración del apache | ||
| - | < | ||
| - | < | ||
| - | |||
| - | AuthType Basic | ||
| - | |||
| - | AuthName " | ||
| - | |||
| - | AuthUserFile / | ||
| - | |||
| - | Require valid-user | ||
| - | |||
| - | </ | ||
| - | </ | ||
| - | De esa manera cerramos el acceso a [[http:// | ||
| - | |||
| - | Para hacerlo a mano, sólo hay que tener en cuenta que el formato que sigue el fichero es nombreusuario: | ||
| - | |||
| - | Con el htpasswd, bastaría con htpasswd -mb / | ||
| - | |||
| - | Para restringir por IPs, usaremos 3 directivas: Order, Deny y Allow. Por ejemplo, para cerrar el acceso a todos y que sólo entren los de la subred 10.1.2.0/ | ||
| - | < | ||
| - | Order Allow,Deny | ||
| - | |||
| - | Allow from 10.1.2.0/24 | ||
| - | |||
| - | Deny from all | ||
| - | </ | ||
| - | Tanto las restricciones por IP como las de usuarios tienen que ir dentro de un < | ||
| - | |||
| - | ===== Usar conexiones seguras con SSL ===== | ||
| - | |||
| - | * Habilitamos el módulo ssl: | ||
| - | < | ||
| - | |||
| - | * Ejecutamos un script para crear nuestro certificado de seguridad para el servidor (estará autofirmado). | ||
| - | < | ||
| - | |||
| - | Nos hará una serie de preguntas… | ||
| - | < | ||
| - | |||
| - | < | ||
| - | creating selfsigned certificate | ||
| - | |||
| - | replace it with one signed by a certification authority (CA) | ||
| - | |||
| - | enter your ServerName at the Common Name prompt | ||
| - | |||
| - | If you want your certificate to expire after x days call this programm | ||
| - | |||
| - | with -days x | ||
| - | |||
| - | Generating a 1024 bit RSA private key | ||
| - | |||
| - | ........++++++ | ||
| - | |||
| - | ....................++++++ | ||
| - | |||
| - | writing new private key to '/ | ||
| - | |||
| - | ----- | ||
| - | |||
| - | You are about to be asked to enter information that will be incorporated | ||
| - | |||
| - | into your certificate request. | ||
| - | |||
| - | What you are about to enter is what is called a Distinguished Name or a DN. | ||
| - | |||
| - | There are quite a few fields but you can leave some blank | ||
| - | |||
| - | For some fields there will be a default value, | ||
| - | |||
| - | If you enter ' | ||
| - | |||
| - | ----- | ||
| - | |||
| - | Country Name (2 letter code) [GB]:ES | ||
| - | |||
| - | State or Province Name (full name) [Some-State]: | ||
| - | |||
| - | Locality Name (eg, city) []:Las Palmas de Gran Canaria | ||
| - | |||
| - | Organization Name (eg, company; recommended) []:mi empresa | ||
| - | |||
| - | Organizational Unit Name (eg, section) []:mi empresa | ||
| - | |||
| - | server name (eg. ssl.domain.tld; | ||
| - | |||
| - | Email Address []: | ||
| - | </ | ||
| - | * Dependiendo de nuestra configuración podemos hacer que la comunicación de nuestro sitio sea por defecto bajo SSL o crear otro sitio | ||
| - | **Si lo queremos por defecto la configuración sería de la siguiente forma:** | ||
| - | |||
| - | Puesto que se va a usar para una aplicación, | ||
| - | |||
| - | - Pondremos la línea NameVirtualHost *:443 al principio | ||
| - | - Dejamos la linea de VirtualHost como < | ||
| - | - Añadimos las siguientes líneas, por ejemplo debajo de Serversignature on | ||
| - | < | ||
| - | |||
| - | SSLCertificateFile / | ||
| - | |||
| - | **Si no lo queremos por defecto, crearemos la configuración de “el sitio” para el servidor seguro basándonos en la que lleva por defecto:** | ||
| - | |||
| - | < | ||
| - | < | ||
| - | |||
| - | / | ||
| - | < | ||
| - | NameVirtualHost *:443 | ||
| - | |||
| - | < | ||
| - | |||
| - | ServerAdmin webmaster@localhost | ||
| - | |||
| - | DocumentRoot / | ||
| - | |||
| - | < | ||
| - | |||
| - | Options FollowSymLinks | ||
| - | |||
| - | AllowOverride None | ||
| - | |||
| - | </ | ||
| - | |||
| - | < | ||
| - | </ | ||
| - | |||
| - | En / | ||
| - | < | ||
| - | NameVirtualHost *:80 | ||
| - | |||
| - | < | ||
| - | |||
| - | ServerAdmin webmaster@localhost | ||
| - | |||
| - | DocumentRoot / | ||
| - | |||
| - | < | ||
| - | |||
| - | Options FollowSymLinks | ||
| - | |||
| - | AllowOverride None | ||
| - | |||
| - | </ | ||
| - | |||
| - | < | ||
| - | |||
| - | </ | ||
| - | |||
| - | Por último, sólo basta añadir dentro del fichero “/ | ||
| - | < | ||
| - | SSLEngine On | ||
| - | |||
| - | SSLCertificateFile / | ||
| - | </ | ||
| - | |||
| - | * Después hay que indicarle al apache que escuche peticiones por https y use ese certificado. | ||
| - | Para ello añadir al fichero / | ||
| - | < | ||
| - | Listen 443 | ||
| - | </ | ||
| - | * Hay que asegurarse también de que el módulo para SSL está cargado. Para ello, miramos en el directorio / | ||
| - | < | ||
| - | |||
| - | ln -s ../ | ||
| - | </ | ||
| - | |||
| - | |||
| - | * Y por último, reiniciamos apache2: | ||
| - | < | ||
| - | |||
| - | ===== Configuración por directorios con .htaccess | ||
| - | |||
| - | Podemos colocar la configuración a los dentro del propio directorio, a través de los ficheros .htaccess. | ||
| - | |||
| - | Primero hay que colocar un AllowOverride en el < | ||
| - | |||
| - | El AllowOverride define qué parámetros de configuración se pueden modificar desde los .htaccess. Lo más habitual será ponerle un All para poder cambiar cualquier cosa o un None para que no se pueda cambiar nada. | ||
| - | < | ||
| - | < | ||
| - | |||
| - | AllowOverride All | ||
| - | |||
| - | ... | ||
| - | |||
| - | </ | ||
| - | </ | ||
| - | Dentro de los .htaccess podremos poner casi cualquier directiva que se puede poner en un < | ||
| - | |||
| - | |||
| - | |||
| - | ==== Referencias ==== | ||
| - | Blog de jHernandez [[http:// | ||
| - | |||