From e8ec7aa8e38a93f5b034ac74cebce5de23710317 Mon Sep 17 00:00:00 2001 From: hongbotian Date: Mon, 30 Nov 2015 01:45:08 -0500 Subject: upload http JIRA: BOTTLENECK-10 Change-Id: I7598427ff904df438ce77c2819ee48ac75ffa8da Signed-off-by: hongbotian --- .../httpd-2.0.64/docs/manual/howto/auth.html.es | 374 +++++++++++++++++++++ 1 file changed, 374 insertions(+) create mode 100644 rubbos/app/httpd-2.0.64/docs/manual/howto/auth.html.es (limited to 'rubbos/app/httpd-2.0.64/docs/manual/howto/auth.html.es') diff --git a/rubbos/app/httpd-2.0.64/docs/manual/howto/auth.html.es b/rubbos/app/httpd-2.0.64/docs/manual/howto/auth.html.es new file mode 100644 index 00000000..f2839d77 --- /dev/null +++ b/rubbos/app/httpd-2.0.64/docs/manual/howto/auth.html.es @@ -0,0 +1,374 @@ + + + +Autentificación, Autorización y Control de Acceso - Servidor HTTP Apache + + + + + +
<-
+

Autentificación, Autorización y Control de Acceso

+
+

Idiomas disponibles:  en  | + es  | + ja  | + ko 

+
+
Esta traducción podría estar + obsoleta. Consulte la versión en inglés de la + documentación para comprobar si se han producido cambios + recientemente.
+ +

La autentificación es cualquier proceso mediante el cual se + verifica que alguien es quien dice ser. La autorización es + cualquier proceso por el cual a alguien se le permite estar donde + quiere ir, o tener la información que quiere tener.

+
+ +
top
+
top
+
+

Introducción

+

Si en su sitio web tiene información sensible o dirigida + sólo a un pequeño grupo de personas, las técnicas + explicadas en éste artículo le ayudarán a + asegurarse de que las personas que ven esas páginas son las + personas que usted quiere que las vean.

+ +

Este artículo cubre la manera "estándar" de proteger + partes de su sitio web que la mayoría de ustedes van a usar.

+
top
+
+

Los Prerrequisitos

+

Las directivas tratadas en éste artículo necesitarán + ir en el archivo de configuración principal de su servidor + (típicamente en una sección del tipo + <Directory>), + o en archivos de configuración por directorios (archivos + .htaccess).

+ +

Si planea usar archivos .htaccess, necesitará + tener una configuración en el servidor que permita poner directivas + de autentificación en estos archivos. Esto se logra con la + directiva AllowOverride, + la cual especifica cuáles directivas, en caso de existir, pueden + ser colocadas en los archivos de configuración por directorios.

+ +

Ya que se está hablando de autentificación, necesitará + una directiva AllowOverride como + la siguiente:

+ +

+ AllowOverride AuthConfig +

+ +

O, si sólo va a colocar directivas directamente en el principal + archivo de configuración del servidor, por supuesto necesitará + tener permiso de escritura a ese archivo.

+ +

Y necesitará saber un poco acerca de la estructura de + directorios de su servidor, con la finalidad de que sepa dónde + están algunos archivos. Esto no debería ser muy + difícil, y trataré de hacerlo sencillo cuando lleguemos a + ese punto.

+
top
+
+

Puesta en funcionamiento

+

Aquí está lo esencial en cuanto a proteger con + contraseña un directorio de su servidor.

+ +

Necesitará crear un archivo de contraseñas. Éste + archivo debería colocarlo en algún sitio no accesible + mediante la Web. Por ejemplo, si sus documentos son servidos desde + /usr/local/apache/htdocs usted podría querer colocar + el(los) archivo(s) de contraseñas en + /usr/local/apache/passwd.

+ +

Para crear un archivo de contraseñas, use la utilidad + htpasswd que viene con Apache. + Ésta utilidad puede encontrarla en el directorio bin + de cualquier sitio en que haya instalado Apache. Para crear el + archivo, escriba:

+ +

+ htpasswd -c /usr/local/apache/passwd/passwords rbowen +

+ +

htpasswd le pedirá la contraseña, y luego se + la volverá a pedir para confirmarla:

+ +

+ # htpasswd -c /usr/local/apache/passwd/passwords rbowen
+ New password: mypassword
+ Re-type new password: mypassword
+ Adding password for user rbowen +

+ +

Si htpasswd no está en su ruta, por supuesto + tendrá que escribir la ruta completa al archivo para ejecutarlo. + En mi servidor, éste archivo está en + /usr/local/apache/bin/htpasswd

+ +

El siguiente paso es configurar el servidor para que solicite una + contraseña y decirle al servidor a qué usuarios se les + permite el acceso. Puede hacer esto editando el archivo + httpd.conf o usando un archivo .htaccess. + Por ejemplo, si desea proteger el directorio + /usr/local/apache/htdocs/secret, puede usar las siguientes + directivas, ya sea colocándolas en el archivo + /usr/local/apache/htdocs/secret/.htaccess, + o en httpd.conf dentro de una sección <Directory + /usr/local/apache/apache/htdocs/secret>.

+ +

+ AuthType Basic
+ AuthName "Restricted Files"
+ AuthUserFile /usr/local/apache/passwd/passwords
+ Require user rbowen +

+ +

Vamos a examinar cada una de estas directivas por separado. La + directiva AuthType selecciona + el método que se va a usar para autentificar al usuario. El + método más común es Basic, y éste + método está implementado en mod_auth. Es importante + ser consciente, sin embargo, de que la autentificación Básica + envía la contraseña desde el cliente hasta el navegador sin + encriptar. Por lo tanto, este método no debería ser usado + para información altamente sensible. Apache soporta otro método + de autentificación: AuthType Digest. Este método + está implementado en mod_auth_digest y es mucho más + seguro. Sólo las versiones más recientes de clientes soportan + la autentificación del tipo Digest.

+ +

La directiva AuthName establece + el Dominio (Realm) a usar en la + autentificación. El dominio (realm) cumple + dos funciones importantes. Primero, el cliente frecuentemente presenta + esta información al usuario como parte del cuatro de diálogo + para la contraseña. Segundo, es usado por el cliente para determinar + qué contraseña enviar para un área autentificada dada.

+ +

Así, por ejemplo, una vez que el cliente se haya autentificado en + el área "Restricted Files", + automáticamente se volverá a tratar de usar la misma + contraseña en cualquier área del mismo servidor que esté + marcado con el Dominio (Realm) "Restricted Files". Por lo tanto, + puede evitar que se le pida al usuario la contraseña + más de una vez permitiendo compartir el mismo dominio (realm) + para múltiples áreas restringidas. Por supuesto, por + razones de seguridad, el cliente siempre necesitará pedir de + nuevo la contraseña cuando cambie el nombre de la + máquina del servidor.

+ +

La directiva AuthUserFile + establece la ruta al archivo de contraseña que acabamos de crear + con htpasswd. Si tiene un gran número de usuarios, + sería bastante lento buscar por medio de un archivo en texto plano + para autentificar al usuario en cada solicitud. Apache también tiene + la capacidad de almacenar la información del usuario en + archivos rápidos de bases de datos. El módulo mod_auth_dbm + proporciona la directiva AuthDBMUserFile. Estos archivos pueden + ser creados y manipulados con el programa + dbmmanage. Muchos otros tipos + de opciones de autentificación están disponibles en módulos + de terceras partes en la Base de + datos de Módulos de Apache.

+ +

Finalmente, la directiva Require + proporciona la parte de la autorización del proceso estableciendo + el usuario al que se le permite acceder a ese área del servidor. + En la próxima sección, discutimos varias formas de usar la + directiva Require.

+
top
+
+

Permitir el acceso a más +de una persona

+

Las directivas anteriores sólo permiten que una persona + (específicamente alguien con un nombre de usuario de + rbowen) acceda al directorio. En la mayoría de los + casos, usted querrá permitir el acceso a más de una persona. + Aquí es donde entra la directiva AuthGroupFile.

+ +

Si desea permitir la entrada a más de una persona, necesitará + crear un archivo de grupo que asocie nombres de grupo con una lista + de usuarios perteneciente a ese grupo. El formato de este archivo es muy sencillo, + y puede crearlo con su editor favorito. El contenido del archivo + será parecido a este:

+ +

+ GroupName: rbowen dpitts sungo rshersey +

+ +

Esto es solo una lista de miembros del grupo escritos en una + línea separados por espacios.

+ +

Para agregar un usuario a un archivo de contraseñas ya existente, + escriba:

+ +

+ htpasswd /usr/local/apache/passwd/passwords dpitts +

+ +

Obtendrá la misma respuesta que antes, pero el nuevo usuario será agregado + al archivo existente, en lugar de crear un nuevo archivo. + (Es la opción -c la que se cree un nuevo archivo + de contraseñas).

+ +

Ahora, necesita modificar su archivo .htaccess para que + sea como el siguiente:

+ +

+ AuthType Basic
+ AuthName "By Invitation Only"
+ AuthUserFile /usr/local/apache/passwd/passwords
+ AuthGroupFile /usr/local/apache/passwd/groups
+ Require group GroupName +

+ +

Ahora, cualquiera que esté listado en el grupo GroupName, + y figure en el archivo password, se le permitirá + el acceso, si escribe la contraseña correcta.

+ +

Existe otra manera de permitir entrar a múltiples usuarios que + es menos específica. En lugar de crear un archivo de grupo, puede + usar sólo la siguiente directiva:

+ +

+ Require valid-user +

+ +

Usando eso en vez de la línea Require user rbowen, + le permitirá el acceso a cualquiera que esté listado en el + archivo de contraseñas y que haya introducido correctamente su + contraseña. Incluso puede emular el comportamiento del grupo + aquí, sólo manteniendo un archivo de contraseña para + cada grupo. La ventaja de esta técnica es que Apache sólo + tiene que verificar un archivo, en vez de dos. La desventaja es que + usted tiene que mantener un grupo de archivos de contraseña, y + recordar referirse al correcto en la directiva AuthUserFile.

+
top
+
+

Posibles Problemas

+

Por la manera en la que la autentificación básica está + especificada, su nombre de usuario y contraseña debe ser verificado + cada vez que se solicita un documento del servidor. Incluso si está + recargando la misma página, y por cada imagen de la página + (si vienen de un directorio protegido). Como se puede imaginar, esto + retrasa un poco las cosas. El retraso es proporcional al + tamaño del archivo de contraseña, porque se tiene que abrir ese + archivo, y recorrer la lista de usuarios hasta que encuentre su nombre. + Y eso se tiene que hacer cada vez que se cargue la página.

+ +

Una consecuencia de esto es que hay un límite práctico + de cuántos usuarios puede colocar en un archivo de contraseñas. + Este límite variará dependiendo del rendimiento de su equipo + servidor en particular, pero puede esperar observar una disminución + una vez que inserte unos cientos de entradas, y puede que entonces considere + un método distinto de autentificaciên.

+
top
+
+

¿Qué otra cosa +sencilla y efectiva puedo hacer?

+

La autentificación por nombre de usuario y contraseña es + sólo parte del cuento. Frecuentemente se desea permitir el acceso + a los usuarios basandose en algo más que quiénes son. Algo como de + dónde vienen.

+ +

Las directivas Allow y + Deny posibilitan permitir + y rechazar el acceso dependiendo del nombre o la dirección de la + máquina que solicita un documento. La directiva Order va de la mano con estas dos, y le + dice a Apache en qué orden aplicar los filtros.

+ +

El uso de estas directivas es:

+ +

+ Allow from address +

+ +

donde address es una dirección IP (o una + dirección IP parcial) o un nombre de dominio completamente + cualificado (o un nombre de dominio parcial); puede proporcionar + múltiples direcciones o nombres de dominio, si lo desea.

+ +

Por ejemplo, si usted tiene a alguien que manda mensajes no deseados + a su foro, y quiere que no vuelva a acceder, podría hacer lo + siguiente:

+ +

+ Deny from 205.252.46.165 +

+ +

Los visitantes que vengan de esa dirección no podrán + ver el contenido afectado por esta directiva. Si, por el + contrario, usted tiene un nombre de máquina pero no una + dirección IP, también puede usarlo.

+ +

+ Deny from host.example.com +

+ +

Y, si le gustaría bloquear el acceso de un dominio entero, + puede especificar sólo parte de una dirección o nombre de + dominio:

+ +

+ Deny from 192.101.205
+ Deny from cyberthugs.com moreidiots.com
+ Deny from ke +

+ +

Usar Order le permitirá + estar seguro de que efectivamente está restringiendo el acceso + al grupo al que quiere permitir el acceso, combinando una directiva + Deny y una Allow:

+ +

+ Order deny,allow
+ Deny from all
+ Allow from dev.example.com +

+ +

Usando sólo la directiva Allow no haría lo que desea, porque + le permitiría entrar a la gente proveniente de esa máquina, y + adicionalmente a cualquier persona. Lo que usted quiere es dejar entrar + sólo aquellos.

+
top
+
+

Más información

+

También debería leer la documentación de + mod_auth y mod_access que + contiene más información acerca de cómo funciona todo esto.

+
+
+

Idiomas disponibles:  en  | + es  | + ja  | + ko 

+
+ \ No newline at end of file -- cgit 1.2.3-korg