diff --git a/es_ES.ISO8859-1/books/handbook/security/chapter.sgml b/es_ES.ISO8859-1/books/handbook/security/chapter.sgml index edde585f60..b9a23516a9 100755 --- a/es_ES.ISO8859-1/books/handbook/security/chapter.sgml +++ b/es_ES.ISO8859-1/books/handbook/security/chapter.sgml @@ -1,194 +1,325 @@ Matthew Dillon Gran parte de este capítulo ha sido tomado del manual de security(7) por Seguridad seguridad Sinópsis Este capítulo proveera una introducción básica - a los conceptos de seguridad de sistema y algunos temas avanzados en &os;. - Muchos de los temas se pueden aplicar a la seguridad del sistema asi como - también a la de Internet en general. El Internet ya no es un lugar - amistoso en el cual cada quién desea ser un buen - vecino. Asegurar su sistema es imprecindible para proteger sus datos, - característica intelectual, tiempo, y mucho mas de las manos de - hackers y similares. + a los conceptos de seguridad de sistema y algunos temas avanzados en + &os;. Muchos de los temas se pueden aplicar a la seguridad del sistema + asi como también a la de Internet en general. Internet ya no es + un lugar amistoso en el cual cada quién desea ser + un buen vecino. Asegurar su sistema es imprecindible para proteger sus + datos, característica intelectual, tiempo, y mucho mas de las + manos de hackers y similares. FreeBSD proporciona un arcenal de utilidades y mecanisimos para asegurar la integridad y la seguridad de su sistema y red. - Después de leer este capítulo, usted sabrá: + Después de leer este capítulo, usted sabrá: + - Conceptos básicos de seguridad, con respecto a &os;. + Conceptos básicos de seguridad, con respecto a &os;. + Sobre algunos mecanisimos de encriptación disponibles en &os;, como DES y MD5. Como instalar KerberosIV en versiones anteriores a 5.0. Como instalar Kerberos5 en versiones posteriores a 5.0. Como crear cortafuegos usando IPFW. Como configurar IPsec y crear un VPN entre computadoras &os;/&windows;. Como configurar y usar OpenSSH, implementación de SSH en &os;. - Como configurar y cargar los modulos de extensión de control - de acceso usando TrustedBSD MAC Framework. + Como configurar y cargar los modulos de extensión de + control de acceso usando TrustedBSD MAC + Framework. Que sistema de archivos ACLs son y como usarlos. Como utilizar las publicaciones de advertencias de seguridad en &os;. Antes de leer este capítulo, usted debe saber: Conceptos básicos de &os; y el Internet. Introducción La seguridad es una función que comienza y termina con el administrador de sistema. Mientras que los sistemas multi-usuario BSD &unix; tienen una inherente seguridad, el trabajo de construir y mantener mecanismos de seguridad adicionales para mantener a los usuarios de manera honesta es probablemente una de las unicas tareas del administrador del sistema. Los sistemas son tan seguros como uno los haga, los problemas de seguridad compiten con la necesidad humana de conveniencia. Los sistemas &unix; en general, son capaces de correr una gran cantidad de procesos simultáneos, de los cuales muchos de estos son servidores – lo que significa que entidades externas pueden conectarse y hablar con ellos. Asi como las mini-computadoras del ayer se convirtieron en los ahora escritorios de trabajo, y las computadoras se interconectaron, la seguridad cada ves se hace un problema mas grande. La seguridad es mejor implementada como cebolla en capas. Basicamente, lo que se quiere hacer es crear la mayor cantidad posible de convenientes capas de seguridad para luego cuidadosamente monitorear el sistema para detectar intrusos. No es conveniente sobreconstruir la seguridad, ya que esta interferira con el aspecto de detección, y la detección es uno de los mas importantes aspectos de cualquier mecanismo de seguridad. Por ejemplo, no tiene mucho sentido usar los flags de schg (ver &man.chflags.1;) en cada sistema binario, ya que mientras este puede protejer los binarios temporalmente, hace que el algun cambio hecho por un atacante sea difícil de detectar y puede resultar que el mecanismo de seguridad no detecte al atacante en lo absoluto. La seguridad del sistema depende también de estar preparado para diferentes formas de ataque, incluyendo intentos de quebrar el sistema, o hacer un sistema inservible, pero no intentos de comprometer al usuario root (quebrar root). Los problemas de seguridad estan separados en diferentes categorias: Ataques de Negación de servicio (DoS). Compromisos en cuentas de usuarios. Compromisos de root por medio de servidores accesibles. Compromisos de root por medio de cuentas de usuarios. Creación de puertas de entrada. Ataques DoS Negación de servicio (DoS) security Ataques DoS Negación de servicio (DoS) Negación de servicio (DoS) - Un ataque de negación de servicio es una acción que priva - al sistema de los recursos requeridos. Generalmente, los ataques DoS son - mecanismos de fuerza bruta que intentan quebrar el sistema forzando sus - servidores. Algunos ataques DoS intentan aprovecharse de bugs en la red - para quebrar el sistema con un solo paquete. Esto puede ser solucionado - aplicando en el kernel una actualización que arregle el bug. - Los ataques en servidores muchas veces pueden ser solucionados aplicando - opciones apropiadas para limitar la carga del sistema en condiciones - adversas. Los ataques de fuerza bruta en redes son mas complicados. - Los ataques con paquetes enmascarados, por ejemplo, son casi imposible de - detener, el cual puede desconectar el sistema de Internet. Pueden no - quebrar el sistema, pero saturaran la conexión a Internet. + Un ataque de negación de servicio es una acción que + priva al sistema de los recursos requeridos. Generalmente, los ataques + DoS son mecanismos de fuerza bruta que intentan quebrar el sistema + forzando sus servidores. Algunos ataques DoS intentan aprovecharse de + bugs en la red para quebrar el sistema con un solo paquete. Esto puede + ser solucionado aplicando en el kernel una actualización que + arregle el bug. Los ataques en servidores muchas veces pueden ser + solucionados aplicando opciones apropiadas para limitar la carga del + sistema en condiciones adversas. Los ataques de fuerza bruta en redes + son mas complicados. Los ataques con paquetes enmascarados, por + ejemplo, son casi imposible de detener, el cual puede desconectar el + sistema de Internet. Pueden no quebrar el sistema, pero saturaran la + conexión a Internet. + + + + + Asegurando FreeBSD + + seguridad + asegurando FreeBSD + + + + Comando vs. Protocolo + A través de este documento usaremos el texto en + negrita para referirnos a un comando o + aplicación. Esto se utiliza para casos tales como ssh, puesto + que es tanto un protocolo como un comando. + + + Las siguientes secciones cubrirán los métodos para + asegurar su sistema FreeBSD que fueron mencionados en la + sección anterior a este + capítulo. + + + Asegurando la cuenta <username>root</username> y las cuentas de + staff + + su + + + Antés que nada, no se preocupe en asegurar las cuentas + del staff si aun no ha asegurado la cuenta root. + La mayor parte de los sistemas tienen asignada una clave de acceso + a la cuenta root. Lo primero que usted debe + asumir es que la contraseña siempre + está comprometida. Esto no significa que tenga que + eliminar la contraseña. La contraseña es casi siempre + necesaria para el acceso a la cónsola de la computadora. Esto + significa que usted no debe permitir utilizar la contraseña + fuera de la cónsola o usarla posiblemente con el comando + &man.su.1;. Por ejemplo, cerciorese de que sus ptys sean + correctamente especificados como inseguros en el archivo + /etc/ttys para rechazar conexiones directas a + root vía telnet o + rlogin. Si se usan otros servicios tales como + sshd, asegurese de que las conexiones + directas a root estén deshabilitadas. Es + posible hacer esto editando el fichero + /etc/ssh/sshd_config, asegurando que + PermitRootLogin esté fijado como + NO. Considere cada método de acceso + - Servicios como FTP puedes tener problemas de seguridad. Las + conexiones directas a root deben ser sólo + permitidas físicamente en la cónsola de sistema. + + wheel + + + Por supuesto, como administrador de sistema usted debe poder + acceder como root, y nosotros tenemos algunas + formas de conseguirlo. Nos aseguraremos de que éstas formas + tengan autenticación adicional. Una de las formas de hacer + root accesible es agregar cuentas apropiadas del + staff al grupo wheel (en + /etc/group). Se permite a los miembros del + staff puestos en el grupo wheel usar el + comando su para acceder root. + Nunca debe dar a miembros del staff acceso nativo a + wheel cuando se crea la cuenta. Las cuentas + del staff deben estar colocadas en grupos de + staff, para después agregar a aquellos + deseados al grupo wheel en el fichero + /etc/group. Solamente a aquellos que realmente + se necesiten en este grupo deben ser agregados. Es también + posible usar un método de autentificación tal como + Kerberos, utilizar el fichero .k5login en la + cuenta root para permitir a &man.ksu.1; que + root no necesite a nadie en el grupo + wheel. Esta puede ser una mejor + solución puesto que el mecanismo de + wheel todavía permite al intruso romper + root, si el intruso ha conseguido quebrar el + archivo de contraseñas y el grupo del staff. Mientrás + que usar el mecanismo de wheel es mejor que no + tener nada en lo absoluto, no es necesariamente la opción mas + segura. + + Una manera indirecta de asegurar las cuentas del staff y usar el + acceso a root de ultima instancia es usar un + método de acceso alternativo conocido como + starring. Este método marca las + contraseñas cifradas con un solo + *. Este comando actualizará + fichero de /etc/master.passwd y la base de datos + de usuario/contraseña para desabilitar los logins con + autentificación de contraseña. + + Una cuenta del staff como esta: + + foobar:R9DT/Fa1/LV9U:1000:1000::0:0:Foo Bar:/home/foobar:/usr/local/bin/tcsh + + Debe ser cambiada a: + + foobar:*:1000:1000::0:0:Foo Bar:/home/foobar:/home/local/bin/tcsh + + Este cambio evitará que las conexiones normales ocurran, + ya que la contraseña cifrada nunca coincidirá con + *. Habiendo hecho esto, los + miembros del staff deberán usar otros métodos de + autentificación como &man.kerberos.1; o &man.ssh.1;, usando + pares de claves públicas/privadas. Al usar algo como + Kereberos, uno debe asegurar generalmente las máquinas que + corran los servidores Kereberos, asi como también su + estación de trabajo. Al usar pares de claves + públicas/privadas con ssh, uno debe asegurar generalmente la + máquina usada para hacer el login (generalmente una + estación de trabajo). Una capa adicional de protección + se puede agregar a los pares de claves + públicas/privadas protegiendolas con contraseña en el + momento de crearlas con &man.ssh-keygen.1;. Pudiendo + marcar las contraseñas de las cuentas del staff + también garantiza que los miembros del staff solamente pueden + acceder al sistema por medio de un método seguro. Esto fuerza + a los miembros del staff a acceder al sistema usando solamente formas + seguras y conexiones cifradas para todas sus sesiones, lo que + protege de una de las vulnerabilidades más usadas por + los intrusos.