• No results found

Implementacion Servidores Linux pdf

N/A
N/A
Protected

Academic year: 2020

Share "Implementacion Servidores Linux pdf"

Copied!
684
0
0

Loading.... (view fulltext now)

Full text

(1)

Implementación De Servidores Con GNU/Linux

Implementación De Servidores Con GNU/Linux

Edición

Edición

Marzo 2011

Marzo 2011

24 De Marzo De 2011 24 De Marzo De 2011

(2)
(3)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Si este libro le ha sido de utilidad, puede contribuir al desarrollo de éste a través de suscripciones voluntarias a nuestro portal. Sus aportaciones nos ayudarán a crecer y desarrollar más y mejor contenido en el sitio de red y para mejorar este libro.

http://www.alcancelibre.org/staticpages/index.php/suscripciones

Alcance Libre ofrece soporte técnico gratuito exclusivamente a través de nuestros foros localizados en:

http://www.alcancelibre.org/forum/

Para cualquier consulta a través de otros medios, como correo electrónico, teléfono o mensajería instantánea, ofrecemos un servicio comercial de consultoría.

Alcance Libre ofrece los siguientes productos y servicios basados sobre Software Libre, gracias a los cuales financia sus operaciones. Para mayor información, estamos disponibles a través del número telefónico (52) (55) 5677-7130 de la ciudad de México, a través de nuestro Formulario de contacto o bien directamente en nuestras oficinas centrales en Alumnos #34, Colonia San Miguel Chapultepec, delegación Miguel Hidalgo, México, D.F., C.P. 11850, México.

• Capacitación (cursos) • Conferencias y pláticas • Consultoría

• Implementaciones (Servidores) • Soporte Técnico

(4)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

A mi difunto padre, a quien debo reconocer jamás supe comprender y a quien jamás le dí la oportunidad de entenderme.

Blanca, eres el amor de mi vida y gracias a ti inicié mi gusto por escribir. Te agradezco el haberme permitido escribirte todas esas cosas hace tantos años. Siempre tendrás un lugar muy especial en mi corazón y mis pensamientos.

A mi hijo, Joel Alejandro Barrios Caullieres.

(5)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Conformación.

(6)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Acerca de Joel Barrios Dueñas.

Hay poco que decir respecto de mí. Solía ser médico veterinario zootecnista, dedicado principalmente a la atención médica de pequeñas especies y otras mascotas (perros, gatos, peces y tortugas) y a la venta de alimentos y accesorios para mascotas. Trabajo activamente con computadoras personales desde 1990, con las cuales siempre he tenido gran facilidad. Mi primera computadora, fue una Apple IIe que me prestó un amigo, y que eventualmente me vendió. Curiosamente, salvo por una clase que tomé en tercero de secundaria, durante la cual nos impartieron una introducción a la programación en BASIC y el uso general de computadoras Comodore 16, jamás he tomado un curso o capacitación relacionada con la informática o computación. Siempre he sido auto-didáctica.

Utilizo GNU/Linux desde Febrero de 1998, y desde Junio de 1999 como única plataforma en mi trabajo diario. Creo que es más que evidente que equivoque de carrera.

Gran parte de las razones de mi incursión en el mundo de la informática fueron verdaderamente incidentales. En 1997, nunca hubiera imaginado que me estaría ganado la vida en un ámbito completamente distinto al que me dedicaba durante ese tiempo. Yo ya tenía un consultorio veterinario y negocio pequeño de distribución de alimentos para mascotas, los cuales me aseguraban un ingreso regular y constante. Lamentablemente las condiciones del mercado durante el siguiente año repercutieron de forma importante en mis ingresos, y fue entonces que empecé a buscar alternativas. Durante 1999 me estuve dedicando a la venta de equipo de cómputo y algo de diseño de sitios de red. Fueron algunos meses durante los cuales pude sobrevivir gracias a mis ahorros y a la suerte de contar un con talento poco común con las computadoras.

¿Cómo empecé este proyecto?

A mediados de 1999, mientras visitaba a un buen amigo mío, tuve un encuentro amistoso de unos 10 minutos con quien fue, en algún momento, la persona más importante que ha habido en mi vida, Blanca.

Yo subía por un elevador, divagando en mis pensamientos con sutilezas y otros menesteres relacionados con mi profesión de veterinario. Salí del ascensor y me dirigí hacia la puerta de mi amigo. Me detuve unos instantes antes de pulsar el botón del timbre. Había una extraña sensación que circundaba mi mente, como un aroma familiar que no era posible recordar. Mi amigo tenía una reunión con varias personas, algunas de las cuales yo conocía desde hacía algunos años pero que por diversas circunstancias no frecuentaba, así que supuse que era solo la sensación de volver a ver a personas después de mucho tiempo. Toque el timbre y un instante después mi amigo abrió la puerta. Le saludé con un apretón de manos y tras saludarle de la acostumbrada forma cortés, quedé mudo al ver que la chica de la que me había enamorado durante mis años de preparatoria, estaba presente. Frente a mi, sonriendo y mirándome.

(7)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

alguna forma jamás olvidé. Fue así que tras pasar muchas semanas planeando y tratando de dar forma a las ideas, el proyecto de comunidad que inicié con Linux Para Todos un 27 de agosto de 1999 y que hoy en día continuo con Alcance Libre. Surgió como un sueño, se materializó, se desarrollo y creció más allá de lo que hubiera imaginado.

Es irónico que años después, mi reencuentro con Blanca, quien es hoy en día mi esposa y madre de mi hijo Joel Alejandro, coincidiera con el fin del ciclo de Linux Para Todos, aunque también coincide con el inicio de otros proyectos y una nueva etapa con Alcance Libre.

Esta obra, que ahora comparto con los lectores, constituye la culminación del trabajo de más de 10 años de investigación y experiencias. Mucho del material que le compone fue escrito durante diferentes etapas de mi ciclo mientras fui propietario y administrador de Linux Para Todos. El fin de dicho ciclo me da la oportunidad de explorar otras áreas de la informática desde un diferente enfoque, mismo que se verá reflejado en el material actualizado que compone esta obra. Nunca me ha interesado ser famoso o un millonario.

(8)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Currículo.

Datos personales

• Nombre: Joel Barrios Dueñas.

• Año y lugar de nacimiento: 1970, México, Distrito Federal. • Sexo: masculino.

• Estado civil: Unión Libre.

Escolaridad

• Secundaria: Colegio México (Acoxpa). 1982-1985 • Preparatoria: Instituto Centro Unión. 1985-1988

• Facultad de Medicina Veterinaria y Zootecnia, U.N.A.M. 1989-1993

Empleos en los que me he desempeñado.

• 1993-1999

• Mi propia sub-distribuidora de alimentos y accesorios para mascotas. Dirección

general.

• Visitador Médico y asesor en informática. Distribuidora de Alimentos para Pequeñas

Especies (Dialpe). Junio 1997 - Noviembre 1997.

• Consultor externo de Dialpe 1998 – 1999. • 1999 a 2006:

• Fui el creador, director y administrador LinuxParaTodos.net. Dicho dominio fue

tomado hostilmente por mi ex-socio quien se quedó con todo y literalmente me dejó en la calle. Dicha empresa continua comercializando mi trabajo violando la licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1, la cual explícitamente prohíbe la explotación comercial de material sin la autorización del autor.

• Asesoría y consultoría en GNU/Linux. • Capacitación en GNU/Linux.

• 2002 - 2003:

• Director Operativo Grupo MPR S.A. de C.V. (Actualmente Buytek Network Solutions) • 2002 a 2006:

• Director del proyecto LPT Desktop. • 2004 a 2006:

• Director Operativo de la unidad Linux de Factor Evolución S.A. de C.V. • 2007 a la fecha:

• Director de proyecto AL Desktop (descartado). • Director de proyecto AL Server.

• Director de proyecto ALDOS.

• Fundador y director de proyecto de AlcanceLibre.org • Director General Alcance Empresarial, S.A. De C.V.

Capacidades

• Inglés 97.5%

(9)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Índice de contenido

1.¿Que es GNU/Linux?...34

1.1.Requerimientos del sistema...35

2.Estándar de Jerarquía de Sistema de Ficheros...36

2.1.Introducción... 36

2.2.Estructura de directorios...36

2.3.Particiones recomendadas para instalar GNU/Linux...38

3.Instalación en modo texto de CentOS 5...39

3.1.Procedimientos... 39

4.Instalación en modo gráfico de CentOS 5...56

4.1.Procedimientos... 56

5.Cómo iniciar el modo de rescate en CentOS...75

5.1.Procedimientos... 75

6.Iniciando el sistema en nivel de ejecución 1 (nivel mono-usuario)...81

6.1.Introducción... 81

6.2.Procedimientos... 81

7.Cómo compilar el núcleo (kernel) de GNU/Linux en CentOS...85

7.1.Introducción... 85

7.1.1.Un ejemplo del porque conviene recompilar el núcleo...85

7.2.Procedimientos... 86

7.2.1.Determinar el sustento físico y controladores...86

7.2.2.Instalación el equipamiento lógico necesario...88

7.2.3.Obtener el código fuente del núcleo... 89

7.2.4.Configuración del núcleo... 92

8.Cómo gestionar espacio de memoria de intercambio (swap) en GNU/Linux...98

8.1.Introducción... 98

8.1.1.Algo de historia... 98

8.1.2.¿Qué es y como funciona el espacio de intercambio?...98

8.1.3.Circunstancias en las que se requiere aumentar la cantidad de memoria de intercambio...98

Procedimientos... 99

(10)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

10.Cómo optimizar el sistema de ficheros ext3...107

10.1.Introducción... 107

10.1.1.Acerca de Ext3... 107

10.1.2.Acerca del registro por diario (journaling)...107

10.2.Procedimientos... 107

10.2.1.Utilizando el mandato e2fsck... 108

10.2.2.Opciones de montado... 108

10.2.3.Convirtiendo particiones de Ext3 a Ext4 en CentOS 5...111

10.2.4.Eliminando el registro por diario (journal) de Ext4...112

11.Cómo configurar y utilizar Sudo...114

11.1.Introducción... 114

11.1.1.Historia... 114

11.2.Equipamiento lógico necesario...115

11.2.1.Instalación a través de yum... 115

11.2.2.Instalación a través de Up2date... 115

11.3.Fichero /etc/sudoers... 115

11.3.1.Cmnd_Alias... 115

11.3.2.User_Alias... 116

11.3.3.Host_Alias... 116

11.3.4.Runas_Alias... 116

11.4.Candados de seguridad...116

11.5.Lo que no se recomienda...117

11.6.Facilitando la vida a través de ~/.bash_profile...117

12.Cómo crear cuentas de usuario...119

12.1.Introducción... 119

12.2.Procedimientos... 119

12.2.1.Creando una cuenta en el modo de texto: useradd y passwd...119

12.2.2.Eliminar una cuenta de usuario... 121

12.3.Manejo de grupos... 122

12.3.1.Alta de grupos... 122

12.3.2.Alta de grupos de sistema... 122

12.3.3.Baja de grupos... 122

12.3.4.Asignación de usuarios existentes a grupos existentes...122

12.4.Comentarios finales acerca de la seguridad...122

12.5.Apéndice: Configurando valores predefinidos para el alta de cuentas de usuario...124

12.5.1.Fichero /etc/default/useradd para definir variables utilizadas por el mandato useradd...124

12.5.2.Directorio /etc/skel como molde para crear los directorios de inicio de los usuarios...125

12.6.Apéndice: Ejercicio: Creando cuentas de usuario...126

12.6.1.Introducción... 126

12.6.2.Procedimientos... 126

13.Breve lección de mandatos básicos...128

13.1.Introducción... 128

13.2.Procedimientos... 128

13.2.1.Visualizando contenido de ficheros...132

(11)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

14.2.1.Instalación y paquetes adicionales...139

14.3.Conociendo vi... 139

14.4.Otras combinaciones de teclas...152

14.5.Más allá de las funciones básicas...153

15.Introducción a sed...154

15.1.Introducción... 154

15.1.1.Acerca de sed... 154

15.2.Procedimientos... 154

15.3.Bibliografía... 158

16.Introducción a AWK...159

16.1.Introducción... 159

16.1.1.Acerca de AWK... 159

16.1.2.Estructura de los programas escritos en AWK...159

16.2.Procedimientos... 160

17.Permisos del Sistema de Ficheros...165

17.1.Introducción... 165

17.2.Notación simbólica... 165

17.3.Notación octal... 166

17.3.1.Permisos adicionales... 166

17.4.Ejemplos... 167

17.4.1.Ejemplos de permisos regulares... 167

17.4.2.Ejemplos de permisos especiales... 168

17.5.Uso de chmod... 168

17.5.1.Opciones de chmod... 169

17.5.2.El mandato chmod y los enlaces simbólicos...169

18.Cómo utilizar el mandato chattr...170

18.1.Introducción... 170

18.1.1.Acerca del mandato chattr... 170

18.2.Opciones... 170

18.3.Operadores... 170

18.4.Atributos... 171

18.5.Utilización... 171

18.5.1.Ejemplos... 171

19.Creando depósitos yum...173

19.1.Introducción... 173

19.2.Procedimientos... 173

(12)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

21.1.1.Acerca de RPM... 178

21.2.Procedimientos... 178

21.2.1.Reconstrucción de la base de datos de RPM...178

21.2.2.Consulta de paquetería instalada en el sistema...178

21.2.3.Instalación de paquetes... 181

21.2.4.Desinstalación de paquetes... 187

22.Cómo crear paquetería con rpmbuild...189

22.1.Introducción... 189

22.2.Instalación del equipamiento lógico necesario...189

22.3.Procedimientos... 190

22.3.1.Creación de la clave GnuPG... 190

22.3.2.Configuración y creación de una jaula para rpmbuild...190

22.3.3.Creación de los ficheros*.spec... 192

22.3.4.Uso del mandato rpmbuild... 195

22.4.Ejercicios... 197

22.4.1.Paquete RPM binario y el paquete *.src.rpm correspondiente creando el fichero *.spec necesario... 197

22.4.2.Paquete RPM binario y el paquete *.src.rpm correspondiente realizando limpieza de directorio, firma digital... 198

23.Cómo instalar y utilizar ClamAV en CentOS...199

23.1.Introducción... 199

23.1.1.Acerca de ClamAV... 199

23.2.Equipamiento lógico necesario...199

23.2.1.Creación del usuario para ClamAV... 199

23.2.2.Instalación a través de yum... 200

23.3.Procedimientos... 200

23.3.1.SELinux y el servicio clamav-milter...200

23.3.2.Configuración de Freshclam... 200

23.3.3.Uso básico del mandato clamscan... 201

24.Cómo asignar cuotas de disco...203

24.1.Introducción... 203

24.2.Equipamiento lógico necesario...203

24.2.1.Instalación a través de yum... 203

24.2.2.Instalación a través de Up2date... 203

24.3.Procedimientos... 203

24.3.1.Edquota... 204

24.4.Comprobaciones... 206

25.Introducción a TCP/IP...208

25.1.Introducción... 208

25.2.Niveles de pila... 208

25.2.1.Modelo TCP/IP... 209

25.2.2.Modelo OSI... 214

(13)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

27.Cómo configurar correctamente los parámetros de red...220

27.1.Introducción... 220

27.2.Procedimientos... 220

27.2.1.Detección y configuración del sustento físico (hardware)...220

27.2.2.Asignación de parámetros de red... 221

27.2.3.Agregar encaminamientos (rutas) adicionales...222

27.2.4.Función de Reenvío de paquetes para IP versión 4...222

27.2.5.Comprobaciones... 223

27.2.6.Alta de direcciones IP virtuales... 223

27.2.7.La función Zeroconf... 224

Desactivando el soporte para IPv6... 225

27.3.Ejercicios... 226

27.3.1.Encaminamientos estáticos... 226

27.3.2.Direcciones IP virtuales... 228

28.Cómo configurar acoplamiento de tarjetas de red (bonding)...233

28.1.Introducción... 233

28.2.Procedimientos... 233

28.2.1.Fichero de configuración /etc/modprobe.conf...233

28.2.2.Fichero de configuración /etc/sysconfig/network-scripts/bond0...235

28.2.3.Iniciar, detener y reiniciar el servicio network...236

28.3.Comprobaciones... 236

28.4.Bibliografía... 237

29.Cómo conectarse a una red Wifi desde la terminal...238

29.1.Introducción... 238

29.1.1.Preparativos... 238

29.1.2.Autenticando en el punto de acceso...239

29.1.3.Asigando parámetros de red a la interfaz...240

30.Cómo utilizar lsof...241

30.1.Introducción... 241

30.1.1.Acerca de lsof... 241

30.2.Procedimientos... 241

31.Cómo utilizar Netcat (nc)...244

31.1.Introducción... 244

31.1.1.Acerca de Netcat... 244

31.2.Equipamiento lógico necesario...244

31.2.1.Instalación a través de yum... 244

31.2.2.Instalación a través de Up2date... 244

31.3.Procedimientos... 244

31.3.1.Conexiones simples... 244

31.3.2.Revisión de puertos... 245

(14)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

34.Introducción a IPTABLES...255

34.1.Introducción... 255

34.1.1.Acerca de Iptables y Netfilter... 255

34.2.Equipamiento lógico necesario...255

34.2.1.Instalación a través de yum... 255

34.2.2.Instalación a través de up2date... 255

34.3.Procedimientos... 256

34.3.1.Cadenas... 256

34.3.2.Reglas de destino... 256

34.3.3.Políticas por defecto... 256

34.3.4.Limpieza de reglas específicas... 256

34.3.5.Reglas específicas... 256

Ejemplos de reglas... 257

34.3.6.Eliminar reglas... 258

34.3.7.Mostrar la lista de cadenas y reglas... 258

34.3.8.Iniciar, detener y reiniciar el servicio iptables...260

34.3.9.Agregar el servicio iptables al arranque del sistema...260

34.4.Bibliografía... 260

35.Cómo utilizar CBQ...262

35.1.Introducción... 262

35.1.1.Acerca de cbq... 262

35.2.Comprendiendo la velocidad binaria (bit rate)...262

35.3.Equipamiento lógico necesario...263

35.3.1.Instalación a través de yum... 263

35.3.2.Instalación a través de up2date... 263

35.4.Preparativos... 263

35.4.1.Parámetro DEVICE... 263

35.4.2.Parámetro de clase WEIGHT... 264

35.4.3.Parámetro de clase PRIO... 264

35.4.4.Parámetro de clase PARENT... 264

35.4.5.Parámetro de clase LEAF... 265

35.4.6.Parámetro de clase BOUNDED... 266

35.4.7.Parámetro de clase ISOLETED... 266

35.4.8.Parámetros de filtración... 266

35.5.Procedimientos... 268

35.5.1.CBQ sin compartir ancho de banda entre clases...269

35.5.2.CBQ compartiendo ancho de banda entre clases...270

35.5.3.Iniciar, detener y reiniciar el servicio cbq...270

35.5.4.Agregar el servicio cbq al arranque del sistema...271

36.Introducción a SELinux en CentOS 5 y Fedora...272

36.1.Introducción... 272

36.2.¿Qué es SELinux?... 272

36.3.Mandato getsebool... 272

36.4.Mandato setsebool... 273

36.4.1.Servicios de FTP... 273

36.4.2.OpenVPN... 274

(15)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

37.2.2.Instalación a través de up2date... 278

37.3.Procedimientos... 278

37.3.1.SELinux y el servicio dhcpd... 278

37.3.2.Fichero de configuración /etc/dhcpd.conf...278

37.3.3.Fichero de configuración /etc/sysconfig/dhcpd...279

37.3.4.Iniciar, detener y reiniciar el servicio dhcpd...280

37.3.5.Agregar el servicio dhcpd al arranque del sistema...280

37.4.Comprobaciones desde cliente DHCP...280

37.5.Modificaciones necesarias en el muro cortafuegos...281

38.Cómo configurar vsftpd (Very Secure FTP Daemon)...282

38.1.Introducción... 282

38.1.1.Acerca del protocolo FTP... 282

38.1.2.Acerca del protocolo FTPS... 282

38.1.3.Acerca de RSA... 282

38.1.4.Acerca de OpenSSL... 283

38.1.5.Acerca de X.509... 283

38.1.6.Acerca de vsftpd... 283

38.2.Equipamiento lógico necesario...283

38.2.1.Instalación a través de yum... 283

38.3.Ficheros de configuración...283

38.4.Procedimientos... 284

38.4.1.SELinux y el servicio vsftpd... 284

38.4.2.Fichero /etc/vsftpd/vsftpd.conf... 284

38.4.3.Parámetro anonymous_enable... 284

38.4.4.Parámetro local_enable... 285

38.4.5.Parámetro write_enable... 285

38.4.6.Parámetro anon_upload_enable... 285

38.4.7.Parámetro anon_mkdir_write_enable... 285

38.4.8.Parámetro ftpd_banner... 285

38.4.9.Estableciendo jaulas para los usuarios: parámetros chroot_local_user y chroot_list_file...285

38.4.10.Control del ancho de banda... 286

38.4.11.Soporte SSL/TLS para VFSTPD... 286

38.4.12.Iniciar, detener y reiniciar el servicio vsftpd...289

38.4.13.Agregar el servicio al arranque del sistema...289

38.5.Modificaciones necesarias en el muro cortafuegos...290

38.6.Ejercicio VSFTPD... 290

39.Cómo configurar OpenSSH...293

39.1.Introducción... 293

39.1.1.Acerca de SSH... 293

39.1.2.Acerca de SFTP... 293

39.1.3.Acerca de SCP... 293

39.1.4.Acerca de OpenSSH... 293

39.2.Equipamiento lógico necesario...294

39.3.Ficheros de configuración...294

(16)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

40.Cómo utilizar OpenSSH con autenticación a través de firma digital...299

40.1.Introducción... 299

40.2.Procedimientos... 299

40.2.1.Modificaciones en el Servidor remoto... 299

40.2.2.Modificaciones en el cliente... 299

40.2.3.Comprobaciones... 300

41.Cómo configurar OpenSSH con Chroot...301

41.1.Introducción... 301

41.2.Equipamiento lógico necesario...301

41.3.Procedimientos... 303

41.3.1.Componentes mínimos para la jaula... 303

41.3.2.Ficheros /etc/passwd y /etc/group... 304

41.3.3.Dispositivos de bloque... 304

41.4.Ejemplo práctico... 304

41.4.1.Crear las cuentas de los usuarios... 304

41.4.2.Ejemplo aplicado a sitio de red virtual con Apache...305

42.Cómo configurar NTP...307

42.1.Introducción... 307

42.1.1.Acerca de NTP... 307

42.1.2.Acerca de UTC... 308

42.2.Equipamiento lógico necesario...308

42.2.1.Instalación a través de yum... 308

42.2.2.Instalación a través de up2date... 308

42.3.Procedimientos... 308

42.3.1.Herramienta ntpdate... 308

42.3.2.Fichero de configuración /etc/ntp.conf...308

42.3.3.Iniciar, detener y reiniciar el servicio ntpd...309

42.3.4.Agregar el servicio ntpd al arranque del sistema...310

42.4.Modificaciones necesarias en el muro cortafuegos...310

43.Cómo configurar el sistema para sesiones gráficas remotas...311

43.1.Introducción... 311

43.2.Sesión gráfica remota con GDM...311

43.2.1.Procedimiento... 311

44.Cómo configurar un servidor NFS...314

44.1.Introducción... 314

44.2.Procedimientos... 314

44.2.1.Instalación del equipamiento lógico necesario...314

44.3.Configurando la seguridad...314

44.3.1.Compartir un volumen NFS... 315

44.3.2.Configurando las máquinas clientes... 316

44.4.Instalación de GNU/Linux a través de un servidor NFS...317

(17)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

45.3.3.El fichero lmhosts... 321

45.3.4.Parámetros principales del fichero smb.conf...322

45.3.5.Parámetro remote announce... 323

45.3.6.Impresoras en Samba... 323

45.3.7.Compartiendo directorios a través de Samba...323

45.4.Iniciar el servicio y añadirlo al arranque del sistema...326

45.5.Comprobaciones... 327

45.5.1.Modo texto... 327

45.5.2.Modo gráfico... 328

46.Cómo configurar Samba denegando acceso a ciertos ficheros...329

46.1.Introducción... 329

46.2.Procedimientos... 329

46.3.Aplicando los cambios...329

46.4.Comprobaciones... 330

47.Cómo configurar Samba con Papelera de Reciclaje...331

47.1.Introducción... 331

47.2.Procedimientos... 331

47.3.Aplicando los cambios...333

47.4.Comprobaciones... 333

48.Cómo instalar y configurar Samba-Vscan en CentOS 5...336

48.1.Introducción... 336

48.2.Acerca de Samba-Vscan...336

48.3.Instalación de equipamiento lógico necesario...336

48.4.Procedimientos... 336

49.Cómo configurar Samba como cliente o servidor WINS...340

49.1.Introducción... 340

49.2.Procedimientos... 340

49.2.1.Parámetros wins server y wins support... 340

49.2.2.Parámetro name resolve order... 341

49.2.3.Parámetro wins proxy... 341

49.2.4.Parámetro dns proxy... 341

49.2.5.Parámetro max ttl... 341

49.2.6.Parámetros max wins ttl y min wins ttl... 341

49.3.Aplicando los cambios...342

50.La ingeniería social y los [incorrectos] hábitos del usuario...343

50.1.Introducción... 343

(18)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

51.5.Incrementando las capacidades de filtrado de Spamassasin...351

51.5.1.Optimizando Spamassassin... 352

51.5.2.¿Por qué Perl-Mail-SPF, Perl-Razor-Agent, Pyzor y Spamassassin-FuzzyOcr?...352

52.Configuración básica de Sendmail...354

52.1.Introducción... 354

52.1.1.Acerca de Sendmail... 354

52.1.2.Acerca de Dovecot... 354

52.1.3.Acerca de SASL y Cyrus SASL... 354

52.1.4.Protocolos utilizados... 355

52.2.Equipamiento lógico necesario...357

52.2.1.Instalación a través de yum... 358

52.2.2.Instalación a través de Up2date... 358

52.3.Procedimientos... 358

52.3.1.Alta de cuentas de usuario y asignación de claves de acceso...358

52.3.2.Dominios a administrar... 359

52.3.3.Control de acceso... 360

52.3.4.Alias de la cuenta de root... 361

52.3.5.Configuración de funciones de Sendmail... 361

52.3.6.Usuarios Virtuales... 363

52.3.7.Control del correo chatarra (Spam) a través de DNSBLs...364

52.3.8.Protocolos para acceder hacia el correo... 364

52.3.9.Reiniciando servicio... 365

52.4.Encaminamiento de dominios...365

52.4.1.Redundancia del servidor de correo...365

52.4.2.Servidor de correo intermediario... 366

52.5.Verificando el servicio...367

52.6.Pruebas para el envío de correo...368

52.6.1.Utilizando telnet... 368

52.6.2.Utilizando mutt... 370

52.7.Referencias... 370

53.Opciones avanzadas de seguridad para Sendmail...372

53.1.Introducción... 372 53.2.Funciones... 372 53.2.1.confMAX_RCPTS_PER_MESSAGE... 372 53.2.2.confBAD_RCPT_THROTTLE... 372 53.2.3.confPRIVACY_FLAGS... 372 53.2.4.confMAX_HEADERS_LENGTH... 373 53.2.5.confMAX_MESSAGE_SIZE... 373 53.2.6.confMAX_DAEMON_CHILDREN... 373 53.2.7.confCONNECTION_RATE_THROTTLE... 373

54.Cómo configurar Sendmail y Dovecot con soporte SSL/TLS...374

54.1.Introducción... 374

54.1.1.Acerca de DSA... 374

54.1.2.Acerca de RSA... 374

54.1.3.Acerca de X.509... 374

(19)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

55.Cómo instalar y configurar Postfix y Dovecot con soporte para TLS y

autenticación...385

55.1.Introducción... 385

55.1.1.Acerca de Postfix... 385

55.1.2.Acerca de Dovecot... 385

55.1.3.Acerca de SASL y Cyrus SASL... 385

55.1.4.Acerca de DSA... 386

55.1.5.Acerca de RSA... 386

55.1.6.Acerca de X.509... 386

55.1.7.Acerca de OpenSSL... 386

55.2.Equipamiento lógico necesario...386

55.2.1.Definiendo Postfix como agente de transporte de correo predeterminado...386

55.3.Procedimientos... 387

55.3.1.SELinux y Postfix... 387

55.3.2.Configuración de Postfix... 390

55.3.3.Configuración de Dovecot en CentOS 5 y Red Hat Enterprise Linux 5...392

55.3.4.Configuración de Dovecot en CentOS 6 y Red Hat Enterprise Linux 6...393

55.3.5.Iniciar servicios y añadir éstos al arranque del sistema...393

55.3.6.Soporte para LMTP... 394

55.3.7.Modificaciones necesarias en el muro cortafuegos...394

55.3.8.Requisitos en la zona de reenvío en el servidor DNS...395

55.4.Comprobaciones... 395

55.4.1.A través de terminal... 395

55.4.2.A través de clientes de correo electrónico...396

55.5.Modificaciones necesarias en el muro cortafuegos...399

56.Cómo instalar y configurar Amavisd-new con Postfix en CentOS 5...400

56.1.Introducción... 400

56.1.1.Acerca de Amavisd-new... 400

56.2.Equipamiento lógico necesario. ...400

56.2.1.Creación del usuario para ClamAV... 400

56.2.2.Configuración de depósitos YUM para CentOS 5 y Red Hat Enterprise Linux 5...401

56.3.Procedimientos... 401

56.3.1.Configuración de SELinux... 401

56.3.2.Configuración de Amavisd-new... 402

56.3.3.Configuración de Postfix... 402

56.3.4.Iniciar, detener y reiniciar el servicio spamass-milter...403

56.3.5.Postfix con dominios virtuales y Amavisd-new...404

57.Cómo configurar Postfix en CentOS 5 para utilizar dominios virtuales con

usuarios del sistema...405

57.1.Introducción... 405

57.2.Procedimientos... 405

57.2.1.Configuración de SELinux... 405

57.2.2.Configuración de Postfix... 407

(20)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

59.Instalación y configuración de SquirrelMail (correo a través de interfaz HTTP )..

415

59.1.Introducción... 415

59.2.Procedimientos... 415

59.2.1.Instalación del equipamiento lógico necesario...415

59.2.2.Configuración de SquirrelMail... 415

59.3.Finalizando configuración...418

59.4.Ajustes en php.ini para optimizar el uso de Squirrelmail...419

60.Cómo instalar GroupOffice en CentOS...421

60.1.¿Qué es Group Office?...421

60.2.Equipamiento lógico necesario...422

60.2.1.Configuración de depósitos YUM para CentOS 5 y Red Hat Enterprise Linux 5...422

60.3.Procedimientos... 422

60.3.1.Ajustes posteriores a la instalación... 425

61.Apéndice: Enviar correo a todos los usuarios del sistema...432

61.1.Procedimientos... 432

61.2.Acerca de la seguridad...432

62.Cómo instalar y configurar el programa vacation para responder avisos

automáticos en vacaciones...433

62.1.Intrucción... 433

62.2.Equipamiento lógico necesario...433

62.2.1.Instalación a través de yum... 433

62.2.2.Instalación a través de up2date... 433

62.3.Procedimientos... 434

63.Cómo configurar clamav-milter...436

63.1.Introducción... 436

63.1.1.Acerca de clamav-milter... 436

63.1.2.Acerca de ClamAV... 436

63.2.Equipamiento lógico necesario...437

63.2.1.Creación del usuario para ClamAV... 437

63.2.2.Instalación a través de yum... 437

63.3.Procedimientos... 437

63.3.1.SELinux y el servicio clamav-milter...437

63.3.2.Requisitos previos... 438

63.3.3.Fichero /etc/mail/sendmail.mc... 438

63.3.4.Configuración... 438

63.3.5.Iniciar, detener y reiniciar el servicio clamav-milter...438

64.Cómo configurar spamass-milter...440

64.1.Introducción... 440

64.1.1.Requisitos previos... 440

(21)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

65.Cómo configurar un servidor NIS...446

65.1.Introducción... 446

65.2.Procedimientos... 446

Instalación del equipamiento lógico necesario en el servidor NIS...446

65.2.2.Configuración del servidor NIS... 447

65.2.3.Instalación del equipamiento lógico necesario en el cliente NIS...449

65.2.4.Configuración del cliente NIS... 449

66.Cómo configurar OpenLDAP como servidor de autenticación...452

66.1.Introducción... 452

66.2.Equipamiento lógico necesario...452

66.2.1.Instalación a través de yum... 452

66.2.2.Instalación a través de up2date... 452

66.3.Procedimientos... 453

66.3.1.SELinux y el servicio ldap... 453

66.3.2.Creación de directorios... 453

66.3.3.Generación de claves de acceso para LDAP...453

66.3.4.Fichero de configuración /etc/openldap/slapd.conf...453

66.3.5.Inicio del servicio ldap... 454

66.3.6.Migración de cuentas existentes en el sistema...454

66.4.Comprobaciones... 455

66.5.Configuración de clientes...456

66.5.1.authconfig (modo-texto)... 457

66.5.2.authconfig-tui (modo texto)... 457

66.5.3.authconfig-gtk (modo gráfico)... 458

66.6.Administración... 459

66.7.Respaldo de datos... 459

66.8.Restauración de datos...460

66.9.Modificaciones necesarias en el muro cortafuegos...460

67.Cómo configurar OpenLDAP como libreta de direcciones...461

67.1.Introducción... 461

67.2.Equipamiento lógico necesario...461

67.2.1.Instalación a través de yum... 461

67.2.2.Instalación a través de up2date... 461

67.3.Procedimientos... 461

67.3.1.SELinux y el servicio ldap... 461

67.3.2.Creación de directorios... 462

67.3.3.Generación de claves de acceso para LDAP...462

67.3.4.Fichero de esquemas... 462

67.3.5.Fichero de configuración /etc/openldap/slapd.conf...462

67.3.6.Inicio del servicio ldap... 463

67.3.7.Añadir datos al directorio... 463

67.4.Configuración de clientes...465

67.4.1.Novell Evolution... 465

(22)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

68.2.Procedimientos... 471

68.2.1.Generando clave y certificado... 471 68.2.2.Parámetros de /etc/openldap/slapd.conf...472 68.2.3.Comprobación... 472 68.2.4.Configuración de GNOME Evolution... 472 68.2.5.Configuración de Mozilla Thunderbird...473 68.2.6.Configuración LDAP Browser... 474 68.2.7.Configuración LDAP Administration Tool...474

68.3.Modificaciones necesarias en el muro cortafuegos...475

69.Cómo instalar y configurar MySQL™...476

69.1.Introducción... 476

69.1.1.Acerca de MySQL™... 476

69.2.Equipamiento lógico necesario...476

69.2.1.Instalación a través de yum... 476 69.2.2.Instalación a través de up2date... 476

69.3.Procedimientos... 477

69.3.1.SELinux y el servicio mysqld... 477 69.3.2.Iniciar, detener y reiniciar el servicio mysqld...477 69.3.3.Agregar el servicio mysqld al arranque del sistema...477 69.3.4.Asignación de clave de acceso al usuario root...477

69.4.Creando y destruyendo bases de datos...479 69.5.Otorgando permisos a los usuarios...479 69.6.Modificaciones necesarias en el muro cortafuegos...480

70.Configuración básica de Apache...482

70.1.Introducción... 482

70.1.1.Acerca del protocolo HTTP... 482 70.1.2.Acerca de Apache... 482

70.2.Equipamiento lógico necesario...482

70.2.1.Instalación a través de yum... 482 70.2.2.Instalación a través de Up2date... 483

70.3.Iniciar servicio y añadir el servicio al arranque del sistema...483 70.4.Procedimientos... 484

70.4.1.SELinux y Apache... 484 70.4.2.UTF-8 y codificación de documentos... 485 70.4.3.Ficheros de configuración... 486 70.4.4.Directorios virtuales... 486 70.4.5.Redirección de directorios... 487 70.4.6.Tipos de MIME... 487 70.4.7.Soporte para CGI con extensión *.cgi... 487 70.4.8.Robo de imágenes... 489

70.5.Modificaciones necesarias en el muro cortafuegos...489 70.6.Apéndice: Configuración de Sitios de Red virtuales en Apache...489

71.Cómo habilitar los ficheros .htaccess y SSI )Server Side Includes) en Apache

2.x...491

(23)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

72.1.4.Acerca de X.509... 496 72.1.5.Acerca de OpenSSL... 496 72.1.6.Acerca de mod_ssl... 496

72.2.Requisitos... 496 72.3.Equipamiento lógico necesario...496

72.3.1.Instalación a través de yum... 496

72.4.Procedimientos... 497

72.4.1.Generando firma digital y certificado... 497 72.4.2.Configuración de Apache... 498 72.4.3.Comprobación... 499 72.4.4.Modificaciones necesarias en el muro cortafuegos...499

73.Cómo configurar un servidor de nombres de dominio (DNS)...501

73.1.Introducción... 501

73.1.1.Bind (Berkeley Internet Name Domain)... 501 73.1.2.DNS (Domain Name System)... 501 73.1.3.NIC (Network Information Center)... 501 73.1.4.FQDN (Fully Qualified Domain Name)...502 73.1.5.Componentes de un DNS... 502 73.1.6.Herramientas de búsqueda y consulta... 504

73.2.Equipamiento lógico necesario...506

73.2.1.Instalación a través de yum... 506 73.2.2.Instalación a través de Up2date... 506

73.3.Procedimientos... 506

73.3.1.SELinux y el servicio named... 506 73.3.2.Preparativos... 507 73.3.3.Creación de los ficheros de zona... 508 73.3.4.Seguridad adicional en DNS para uso público...511 73.3.5.Seguridad adicional en DNS para uso exclusivo en red local...515 73.3.6.Las zonas esclavas... 515 73.3.7.Seguridad adicional para transferencias de zona...517 73.3.8.Reiniciar servicio y depuración de configuración...519

74.Cómo configurar Squid: Parámetros básicos para Servidor Intermediario

(Proxy)...521

74.1.Introducción... 521

74.1.1.¿Qué es Servidor Intermediario (Proxy)?... 521 74.1.2.Acerca de Squid... 522

74.2.Equipamiento lógico necesario...523

74.2.1.Instalación a través de yum... 523 74.2.2.Instalación a través de up2date... 523 74.2.3.Otros componentes necesarios... 523

74.3.SELinux y el servicio squid...524 74.4.Antes de continuar... 524 74.5.Configuración básica...524

(24)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

74.8.Iniciando, reiniciando y añadiendo el servicio al arranque del sistema...533 74.9.Depuración de errores...533 74.10.Ajustes para el muro corta-fuegos...534

74.10.1.Re-direccionamiento de peticiones a través de iptables y Firestarter...534 74.10.2.Re-direccionamiento de peticiones a través de la opción REDIRECT en Shorewall...534

75.Cómo configurar Squid: Acceso por autenticación...535

75.1.Introducción... 535 75.2.Equipamiento lógico necesario...535 75.3.Eligiendo el módulo de autenticación...535

75.3.1.Autenticación a través del módulo LDAP...535 75.3.2.Autenticación a través del módulo NCSA... 536

75.4.Listas y reglas de control de acceso...537

75.4.1.Finalizando procedimiento... 538

76.Cómo configurar Squid: Restricción de acceso a Sitios de Red...539

76.1.Introducción... 539 76.2.Equipamiento lógico necesario...539 76.3.Definiendo patrones comunes...539 76.4.Parámetros en /etc/squid/squid.conf...540

76.4.1.Permitiendo acceso a sitios inocentes incidentalmente bloqueados...540 76.4.2.Finalizando procedimiento... 541

77.Cómo configurar Squid: Restricción de acceso a contenido por extensión....542

77.1.Introducción... 542 77.2.Software requerido... 542 77.3.Definiendo elementos de la Lista de Control de Acceso...542 77.4.Parámetros en /etc/squid/squid.conf...543

77.4.1.Finalizando procedimiento... 544

78.Cómo configurar Squid: Restricción de acceso por horarios...545

78.1.Introducción... 545 78.2.Equipamiento lógico necesario...545 78.3.Procedimientos... 545

78.3.1.Más ejemplos... 546 78.3.2.Finalizando procedimiento... 547

79.Cómo configurar squid con soporte para direcciones MAC...548

79.1.Introducción... 548

79.1.1.Acerca de Squid... 548

79.2.Equipamiento lógico necesario...548

79.2.1.Instalación a través de yum... 548

79.3.Procedimientos... 549

Fichero /etc/squid/listas/macsredlocal... 549 79.3.1.Fichero /etc/squid/squid.conf... 550

(25)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

82.Cómo configurar un muro cortafuegos con Shorewall y tres interfaces de red...

558

82.1.Introducción... 558

82.1.1.Acerca de Shorewall... 558 82.1.2.Acerca de Iptables y Netfilter... 558 82.1.3.Acerca de Iproute... 558 82.1.4.Requisitos... 559

82.2.Conceptos requeridos...559

82.2.1.¿Qué es una zona desmilitarizada?... 559 82.2.2.¿Que es una Red Privada?... 559 82.2.3.¿Qué es un NAT?... 560 82.2.4.¿Qué es un DNAT?... 560

82.3.Procedimientos... 560

82.3.1.Equipamiento lógico necesario... 560 82.3.2.Fichero de configuración /etc/shorewall/shorewall.conf...560 82.3.3.Fichero de configuración /etc/shorewall/zones...561 82.3.4.Fichero de configuración /etc/shorewall/interfaces...561 82.3.5.Fichero de configuración /etc/shorewall/policy...562 82.3.6.Fichero de configuración /etc/shorewall/masq...563 82.3.7.Fichero de configuración /etc/shorewall/rules...563

82.4.Iniciar el cortafuegos y añadirlo a los servicios de arranque del sistema...566

83.Cómo configurar un servidor de OpenVPN en CentOS 5...567

83.1.Introducción... 567

83.1.1.Acerca de OpenVPN... 567 83.1.2.Breve explicación de lo que se logrará con este documento...567

83.2.Instalación del equipamiento lógico necesario...568

83.2.1.Instalación en CentOS 5... 568

83.3.Procedimientos... 569

83.3.1.Configuración de muro cortafuegos con Shorewall...573 83.3.2.Configuración de clientes Windows... 574 83.3.3.Clientes GNU/Linux... 576

83.4.Bibiliografía... 582

84.Cómo configurar SNMP...583

84.1.Introducción... 583

84.1.1.Acerca de SNMP... 583 84.1.2.Acerca de Net-SNMP... 583

84.2.Equipamiento lógico necesario...583

84.2.1.Instalación a través de yum... 583 84.2.2.Instalación a través de up2date... 583

84.3.Procedimientos... 584

(26)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

86.Cómo configurar Freeradius con MySQL en CentOS 5...591

86.1.Introducción... 591

86.1.1.Acerca de RADIUS... 591 86.1.2.Acerca de Freeradius... 591 86.1.3.Acerca de Daloradius... 592

86.2.Procedimientos... 592

86.2.1.Instalar Daloradius para administración a través de HTTP...596

86.3.Bibliografía... 597

87.Cómo instalar Java 1.6 en CentOS 5...599

87.1.Introducción... 599 87.2.Instalación del equipamiento lógico necesario...599

87.2.1.Instalación a través de yum... 599

87.3.Procedimientos... 599

87.3.1.Creación de usuario para utilizar rpmbuild...599 87.3.2.Creación de estructura de directorios para rpmbuild...599

88.Cómo instalar la complemento (plug-in) Flash Player para Firefox y otros

navegadores...603

88.1.Introducción... 603 88.2.Procedimientos... 603

88.2.1.Fedora, CentOS 5 y Red Hat Enterprise Linux 5...603 88.2.2.CentOS 4 y Red Hat Enterprise Linux 4...604

88.3.Comprobaciones... 604

89.Cómo configurar escáner en red...606

89.1.Introducción... 606

89.1.1.Acerca de SANE... 606 89.1.2.Acerca de Xsane... 606

89.2.Equipamiento lógico necesario...607

89.2.1.Instalación del servicio saned... 607 89.2.2.Instalación del cliente Xsane... 607

89.3.Procedimientos... 607

89.3.1.Configuración del servicio saned... 607 89.3.2.Configuración del cliente Xsane... 609

90.Cómo configurar un servidor de respaldos con BackupPC en CentOS 5...610

90.1.Introducción... 610 90.2.Instalación del equipamiento lógico necesario...610

90.2.1.Instalación en CentOS 5... 610

90.3.Procedimientos... 611

90.3.1.Configuración de Apache... 611 90.3.2.Configuración de BackupPC... 612 90.3.3.Configuración de los sistemas GNU/Linux a respaldar...613 90.3.4.Configuración de los sistemas Windows a respaldar...615

(27)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

92.Usando Smartd para anticipar los desastres de disco duro...630

92.1.Introducción... 630 92.2.Procedimientos... 630

93.Cómo crear un disco con instalación personalizada de CentOS 5...632

93.1.Instalación de equipamiento lógico necesario...632 93.2.Procedimientos... 632

93.2.1.Creación de fichero de configuración de instalación personalizada...632 93.2.2.Creación del directorio de trabajo y contenido del mismo...633 93.2.3.Añadir equipamiento lógico adicional... 635 93.2.4.Creación de la imagen ISO... 636

94.Ejercicios...638

94.1.Ejercicio NFS... 638

94.1.1.Introducción... 638 94.1.2.Procedimientos... 638

94.2.Ejercicio SAMBA... 640

94.2.1.Procedimientos... 640

94.3.Ejercicio Apache® y VSFTPD...643

94.3.1.Procedimientos... 643 94.3.2.Comprobaciones... 644

94.4.Ejercicio: Cuotas de disco, Apache, VSFTPD y DNS...646

94.4.1.Procedimientos... 646 94.4.2.Comprobaciones... 649

94.5.Ejercicio: Servidor Intermediario (Proxy)...651

94.5.1.Introducción... 651 Procedimientos... 651

95.Ejercicio: Servidor DNS Dinámico y Servidor DHCP...657

95.1.Introducción... 657 95.2.Equipamiento lógico necesario...657 95.3.Procedimientos... 657

95.3.1.Modificación de la interfaz de acceso hacia Internet...657 Configuración de servidor DNS... 658 Configuración de servidor DHCP... 662

96.Ejercicio: Servidor Intermediario (Proxy) y cortafuegos con Shorewall...664

96.1.Introducción... 664

96.1.1.Política: cerrar todo y abrir solo lo necesario...664

96.2.Equipamiento lógico necesario...665 96.3.Procedimientos... 665

(28)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Información de Derechos reservados

de esta publicación.

Reconocimiento-NoComercial-CompartirIgual 2.1 Usted es libre de:

● copiar, distribuir y comunicar públicamente la obra ● hacer obras derivadas

Bajo las condiciones siguientes:

Reconocimiento. Debe reconocer y citar al autor original.

No comercial. No puede utilizar esta obra para fines comerciales.

Compartir bajo la misma licencia. Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta.

● Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de

esta obra.

● Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los

derechos de autor

Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior.

Reconocimiento-NoComercial-CompartirIgual 2.1

(29)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

ESTA LICENCIA. EL LICENCIADOR LE CEDE LOS DERECHOS CONTENIDOS EN ESTA LICENCIA, SIEMPRE QUE USTED ACEPTE LOS PRESENTES TÉRMINOS Y CONDICIONES.

1. Definiciones

a. La "obra" es la creación literaria, artística o científica ofrecida bajo los términos de esta licencia. b. El "autor" es la persona o la entidad que creó la obra.

c. Se considerará "obra conjunta" aquella susceptible de ser incluida en alguna de las siguientes categorías:

i. "Obra en colaboración", entendiendo por tal aquella que sea resultado unitario de la colaboración de varios autores. d. "Obra colectiva", entendiendo por tal la creada por la iniciativa y bajo la coordinación de una persona natural o jurídica que la

modifique y divulgue bajo su nombre y que esté constituida por la reunión de aportaciones de diferentes autores cuya contribución personal se funde en una creación única y autónoma, para la cual haya sido concebida sin que sea posible atribuir separadamente a cualquiera de ellos un derecho sobre el conjunto de la obra realizada.

e. "Obra compuesta e independiente", entendiendo por tal la obra nueva que incorpore una obra preexistente sin la colaboración del autor de esta última.

f. Se considerarán "obras derivadas" aquellas que se encuentren basadas en una obra o en una obra y otras preexistentes, tales como: las traducciones y adaptaciones; las revisiones, actualizaciones y anotaciones; los compendios, resúmenes y extractos; los arreglos musicales y, en general, cualesquiera transformaciones de una obra literaria, artística o científica, salvo que la obra resultante tenga el carácter de obra conjunta en cuyo caso no será considerada como una obra derivada a los efectos de esta licencia. Para evitar la duda, si la obra consiste en una composición musical o grabación de sonidos, la sincronización temporal de la obra con una imagen en movimiento ("synching") será considerada como una obra derivada a los efectos de esta licencia.

g. Tendrán la consideración de "obras audiovisuales" las creaciones expresadas mediante una serie de imágenes asociadas, con o sin sonorización incorporada, así como las composiciones musicales, que estén destinadas esencialmente a ser mostradas a través de aparatos de proyección o por cualquier otro medio de comunicación pública de la imagen y del sonido, con independencia de la naturaleza de los soportes materiales de dichas obras.

h. El "licenciador" es la persona o la entidad que ofrece la obra bajo los términos de esta licencia y le cede los derechos de explotación de la misma conforme a lo dispuesto en ella.

i. "Usted" es la persona o la entidad que ejercita los derechos cedidos mediante esta licencia y que no ha violado previamente los términos de la misma con respecto a la obra, o que ha recibido el permiso expreso del licenciador de ejercitar los derechos cedidos mediante esta licencia a pesar de una violación anterior.

j. La "transformación" de una obra comprende su traducción, adaptación y cualquier otra modificación en su forma de la que se derive una obra diferente. Cuando se trate de una base de datos según se define más adelante, se considerará también transformación la reordenación de la misma. La creación resultante de la transformación de una obra tendrá la consideración de obra derivada.

(30)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

como las antologías y las bases de datos propiamente dichas que por la selección o disposición de sus contenidos constituyan creaciones intelectuales, sin perjuicio, en su caso, de los derechos que pudieran subsistir sobre dichos contenidos.

p. Los "elementos de la licencia" son las características principales de la licencia según la selección efectuada por el licenciador e indicadas en el título de esta licencia: Reconocimiento de autoría (Reconocimiento), Sin uso comercial (NoComercial), Compartir de manera igual (CompartirIgual).

2. Límites y uso legítimo de los derechos. Nada en esta licencia pretende reducir o restringir cualesquiera límites legales de los derechos exclusivos del titular de los derechos de propiedad intelectual de acuerdo con la Ley de Propiedad Intelectual o cualesquiera otras leyes aplicables, ya sean derivados de usos legítimos, tales como el derecho de copia privada o el derecho a cita, u otras limitaciones como la derivada de la primera venta de ejemplares.

3. Concesión de licencia. Conforme a los términos y a las condiciones de esta licencia, el licenciador concede (durante toda la vigencia de los derechos de propiedad intelectual) una licencia de ámbito mundial, sin derecho de remuneración, no exclusiva e indefinida que incluye la cesión de los siguientes derechos:

a. Derecho de reproducción, distribución y comunicación pública sobre la obra;

b. Derecho a incorporarla en una o más obras conjuntas o bases de datos y para su reproducción en tanto que incorporada a dichas obras conjuntas o bases de datos;

c. Derecho para efectuar cualquier transformación sobre la obra y crear y reproducir obras derivadas;

d. Derecho de distribución y comunicación pública de copias o grabaciones de la obra, como incorporada a obras conjuntas o bases de datos;

e. Derecho de distribución y comunicación pública de copias o grabaciones de la obra, por medio de una obra derivada.

Los anteriores derechos se pueden ejercitar en todos los medios y formatos, tangibles o intangibles, conocidos o por conocer. Los derechos mencionados incluyen el derecho a efectuar las modificaciones que sean precisas técnicamente para el ejercicio de los derechos en otros medios y formatos. Todos los derechos no cedidos expresamente por el licenciador quedan reservados, incluyendo, a título enunciativo pero no limitativo, los establecidos en la sección 4(e).

4. Restricciones. La cesión de derechos que supone esta licencia se encuentra sujeta y limitada a las restricciones siguientes:

a. Usted puede reproducir, distribuir o comunicar públicamente la obra solamente bajo términos de esta licencia y debe incluir una copia de la misma, o su Identificador Uniforme de Recurso (URI), con cada copia o grabación de la obra que usted reproduzca, distribuya o comunique públicamente. Usted no puede ofrecer o imponer ningún término sobre la obra que altere o restrinja los términos de esta licencia o el ejercicio de sus derechos por parte de los cesionarios de la misma. Usted no puede sublicenciar la obra. Usted debe mantener intactos todos los avisos que se refieran a esta licencia y a la ausencia de garantías. Usted no puede reproducir, distribuir o comunicar públicamente la obra con medidas tecnológicas que controlen el acceso o uso de la obra de una manera contraria a los términos de esta licencia. Lo anterior se aplica a una obra en tanto que incorporada a una obra conjunta o base de datos, pero no implica que éstas, al margen de la obra objeto de esta licencia, tengan que estar sujetas a los términos de la misma. Si usted crea una obra conjunta o base de datos, previa comunicación del licenciador, usted deberá quitar de la obra conjunta o base de datos cualquier referencia a dicho licenciador o al autor original, según lo que se le requiera y en la medida de lo posible. Si usted crea una obra derivada, previa comunicación del licenciador, usted deberá quitar de la obra derivada cualquier referencia a dicho licenciador o al autor original, lo que se le requiera y en la medida de lo posible.

(31)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

original si es facilitado; el título de la obra si es facilitado; de manera razonable, el Identificador Uniforme de Recurso (URI), si existe, que el licenciador especifica para ser vinculado a la obra, a menos que tal URI no se refiera al aviso sobre propiedad intelectual o a la información sobre la licencia de la obra; y en el caso de una obra derivada, un aviso que identifique el uso de la obra en la obra derivada (e.g., "traducción francesa de la obra de Autor Original," o "guión basado en obra original de Autor Original"). Tal aviso se puede desarrollar de cualquier manera razonable; con tal de que, sin embargo, en el caso de una obra derivada, conjunta o base datos, aparezca como mínimo este aviso allá donde aparezcan los avisos correspondientes a otros autores y de forma comparable a los mismos.

e. Para evitar la duda, sin perjuicio de la preceptiva autorización del licenciador, y especialmente cuando la obra se trate de una obra audiovisual, el licenciador se reserva el derecho exclusivo a percibir, tanto individualmente como mediante una entidad de gestión de derechos, o varias, (por ejemplo: SGAE, Dama, VEGAP), los derechos de explotación de la obra, así como los derivados de obras derivadas, conjuntas o bases de datos, si dicha explotación pretende principalmente o se encuentra dirigida hacia la obtención de un beneficio mercantil o la remuneración monetaria privada.

f. En el caso de la inclusión de la obra en alguna base de datos o recopilación, el propietario o el gestor de la base de datos deberá renunciar a cualquier derecho relacionado con esta inclusión y concerniente a los usos de la obra una vez extraída de las bases de datos, ya sea de manera individual o conjuntamente con otros materiales.

5. Exoneración de responsabilidad

A MENOS QUE SE ACUERDE MUTUAMENTE ENTRE LAS PARTES, EL LICENCIADOR OFRECE LA OBRA TAL CUAL (ON AN "AS-IS" BASIS) Y NO CONFIERE NINGUNA GARANTÍA DE CUALQUIER TIPO RESPECTO DE LA OBRA O DE LA PRESENCIA O AUSENCIA DE ERRORES QUE PUEDAN O NO SER DESCUBIERTOS. ALGUNAS JURISDICCIONES NO PERMITEN LA EXCLUSIÓN DE TALES GARANTÍAS, POR LO QUE TAL EXCLUSIÓN PUEDE NO SER DE APLICACIÓN A USTED.

6. Limitación de responsabilidad.

SALVO QUE LO DISPONGA EXPRESA E IMPERATIVAMENTE LA LEY APLICABLE, EN NINGÚN CASO EL LICENCIADOR SERÁ RESPONSABLE ANTE USTED POR CUALQUIER TEORÍA LEGAL DE CUALESQUIERA DAÑOS RESULTANTES, GENERALES O ESPECIALES (INCLUIDO EL DAÑO EMERGENTE Y EL LUCRO CESANTE), FORTUITOS O CAUSALES, DIRECTOS O INDIRECTOS, PRODUCIDOS EN CONEXIÓN CON ESTA LICENCIA O EL USO DE LA OBRA, INCLUSO SI EL LICENCIADOR HUBIERA SIDO INFORMADO DE LA POSIBILIDAD DE TALES DAÑOS.

7. Finalización de la licencia

a. Esta licencia y la cesión de los derechos que contiene terminarán automáticamente en caso de cualquier incumplimiento de los términos de la misma. Las personas o entidades que hayan recibido obras derivadas, conjuntas o bases de datos de usted bajo esta licencia, sin embargo, no verán sus licencias finalizadas, siempre que tales personas o entidades se mantengan en el cumplimiento íntegro de esta licencia. Las secciones 1, 2, 5, 6, 7 y 8 permanecerán vigentes pese a cualquier finalización de esta licencia.

b. Conforme a las condiciones y términos anteriores, la cesión de derechos de esta licencia es perpetua (durante toda la vigencia de los derechos de propiedad intelectual aplicables a la obra). A pesar de lo anterior, el licenciador se reserva el derecho a divulgar o publicar la obra en condiciones distintas a las presentes, o de retirar la obra en cualquier momento. No obstante, ello no supondrá dar por concluida esta licencia (o cualquier otra licencia que haya sido concedida, o sea necesario ser concedida, bajo los términos de esta licencia), que continuará vigente y con efectos completos a no ser que haya finalizado conforme a lo establecido anteriormente.

8. Miscelánea

a. Cada vez que usted explote de alguna forma la obra, o una obra conjunta o una base datos que la incorpore, el licenciador original ofrece a los terceros y sucesivos licenciatarios la cesión de derechos sobre la obra en las mismas condiciones y términos que la licencia concedida a usted.

(32)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

o especiales (incluido el daño emergente y el lucro cesante), fortuitos o causales, en conexión con esta licencia. A pesar de las dos (2) oraciones anteriores, si Creative Commons se ha identificado expresamente como el licenciador, tendrá todos los derechos y obligaciones del licenciador.

Salvo para el propósito limitado de indicar al público que la obra está licenciada bajo la CCPL, ninguna parte utilizará la marca registrada "Creative Commons" o cualquier marca registrada o insignia relacionada con "Creative Commons" sin su consentimiento por escrito. Cualquier uso permitido se hará de conformidad con las pautas vigentes en cada momento sobre el uso de la marca registrada por "Creative Commons", en tanto que sean publicadas su página web (website) o sean proporcionadas a petición previa.

(33)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Otras notas acerca de esta publicación.

La información contenida en este manual se distribuye con la esperanza de que sea de utilidad, y se proporciona tal cual es pero SIN GARANTÌA ALGUNA, aún sin la garantía implícita de comercialización o adecuamiento para un propósito en particular, y el autor o autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de esta.

(34)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

1. ¿Que es GNU/Linux?

Autor: Joel Barrios Dueñas

Correo electrónico: darkshram en gmail punto com

Sitio de Red: http://www.alcancelibre.org/

Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1

© 1999-2011 Joel Barrios Dueñas. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales. c) Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos.

GNU es un acrónimo recursivo que significa GNU No es Unix (GNU is Not Unix). Este proyecto fue iniciado por Richard Stallman, y anunciado el 27 de septiembre de 1983, con el objetivo de crear un sistema operativo completamente libre.

GNU/Linux® es un poderoso y sumamente versátil sistema operativo con licencia libre y que implemente el estándar POSIX (acrónimo de Portable Operating System Interface, que se traduce como Interfaz de Sistema Operativo Portable). Fue creado en 1991 por Linus Torvalds, siendo entonces un estudiante de la Universidad de Helsinski, Finlandia. En 1992, el núcleo

Linux> fue combinado con el sistema GNU. El Sistema Operativo formado por esta combinación se conoce como GNU/Linux.

GNU/Linux es equipamiento lógico libre o Software Libre. Esto significa que el usuario tiene la libertad de redistribuir y modificar a de acuerdo a necesidades específicas, siempre que se incluya el código fuente, como lo indica la Licencia Pública General GNU (acrónimo de GNU is Not

Unix), que es el modo que ha dispuesto la Free Software Foundation (Fundación de equipamiento lógico libre). Esto también incluye el derecho a poder instalar el núcleo de GNU/Linux® en cualquier número de ordenadores o equipos de cómputo que el usuario desee.

GNU/Linux® no es equipamiento lógico gratuito (comúnmente denominado como Freeware), se trata de equipamiento lógico libre o Software Libre. Cuando nos referirnos a libre, lo hacemos en relación a la libertad y no al precio. La GPL (acrónimo de General Public Licence, que se traduce como Licencia Pública General), a la cual Linus Torvalds incorporó a Linux, está diseñada para asegurar que el usuario tenga siempre la libertad de distribuir copias del equipamiento lógico (y cobrar por el servicio si así lo desea). La GPL tiene como objetivo garantizar al usuario la libertad de compartir y cambiar equipamiento lógico libre, es decir, asegurarse de que el equipamiento lógico siempre permanezca libre para todos los usuarios. La

GPL es aplicable a la mayoría del equipamiento lógico de la Free Software Foundation así como a cualquier otro programa cuyos autores se comprometan a usarlo.

(35)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Microsystems, han encontrado en GNU/Linux una plataforma con un muy amplio mercado, y se han volcado al desarrollo de versiones para Linux de sus más importantes aplicaciones. Grandes corporaciones, como Compaq, Dell, Hewlett Packard, IBM y muchos más, llevan varios años distribuyendo equipos con GNU/Linux® como sistema operativo.

Gracias a sus características, la constante evolución de los ambientes gráficos para X Window®, que cada vez son de más fácil uso, como es el caso de GNOME y KDE, al trabajo de cientos de programadores y usuarios fieles alrededor del mundo, Linux ha dejado de ser un sistema operativo poco atractivo y complicado de utilizar para convertirse en una alternativa real para quienes buscan un sistema operativo confiable y poderoso, ya sea para una servidor, estación de trabajo o la computadora personal de un usuario intrépido.

1.1. Requerimientos del sistema

Se debe contar con la suficiente cantidad de memoria y un microprocesador en buen estado. Con casi cualquier distribución comercial de Linux, el ambiente gráfico necesitará al menos 192 MB RAM, y 650-800 MB de espacio en disco duro para la instalación mínima. Para contar con la menor cantidad de aplicaciones prácticas, se requieren al menos 800 MB adicionales de espacio en disco duro, repartido en al menos 2 particiones. Se recomienda un microprocesador 80586 (pentium o equivalente) a 200 MHz. Sin ambiente gráfico, como es el caso de un servidor, o bien solamente aplicaciones para modo de texto, 64MB RAM y un microprocesador 80586 a 100 MHz serán suficientes.

El servidor de vídeo puede funcionar con sólo 64 MB RAM; pero su desempeño será mucho muy lento. Algunas aplicaciones para modo gráfico pueden necesitar escalar 64 MB, 128 MB o 256 MB de RAM adicional. El mínimo recomendado para utilizar GNOME 2.x es de 192 MB RAM; se recomiendan 256 MB. El óptimo es de 512 MB RAM.

(36)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

2. Estándar de Jerarquía de Sistema de Ficheros

Autor: Joel Barrios Dueñas

Correo electrónico: darkshram en gmail punto com

Sitio de Red: http://www.alcancelibre.org/

Artículo basado sobre el publicado en inglés por Wikipedia, Enciclopedia Libre, en http://en.wikipedia.org/wiki/FHS.

Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1

© 1999-2011 Joel Barrios Dueñas. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales. c) Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos.

2.1. Introducción.

El estándar de jerarquía de ficheros (FHS o Filesystem Hierarchy Standard) define los principales directorios y sus contenidos en GNU/Linux y otros sistemas operativos similares a Unix.

El procesos de desarrollar un estándar de sistema de ficheros jerárquico inició en Agosto de 1993 con un esfuerzo para reestructurar la estructuras de ficheros y directorios de GNU/Linux. El 14 de Febrero de 1994 se publicó el FSSTND (Filesystem Standard), un estándar de jerarquía de ficheros específico para GNU/Linux. Revisiones de éste se publicaron el 9 de Octubre de 1994 y el 28 de Marzo de 1995.

A principios de 1996, con la ayuda de miembros de la comunidad de desarrolladores de BSD, se fijó como objetivo el desarrollar una versión de FSSTND más detallada y dirigida no solo hacia Linux sino también hacia otros sistemas operativos similares a Unix. Como uno de los resultados el estándar cambió de nombre a FHS o Filesystem Hierarchy Standard.

El FHS es mantenido por Free Standards Group, una organización sin fines de lucro constituida por compañías que manufacturan equipamiento físico (Hardware) y lógico (Software) como Hewlett Packard, Dell, IBM y Red Hat. La mayoría de las distribuciones de Linux, inclusive las que forman parte de Free Software Standards, no aplican de forma estricta el estándar. La versión actual del FHS es la 2.3, anunciada en 29 de Enero de 2004.

2.2. Estructura de directorios.

Todos los ficheros y directorios aparecen debajo del directorio raíz «/», aún si están almacenados en dispositivos físicamente diferentes.

Directorio. Descripción

(37)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Directorio. Descripción

/etc/sgml/ (opcional) Ficheros de configuración para SGML.

/etc/xml/ (opcional) Ficheros de configuración para XML.

/home/ (opcional) Directorios de inicios de los usuarios.

/lib/ Bibliotecas compartidas esenciales para los binarios de /bin/, /sbin/ y el núcleo del sistema.

/mnt/ Sistemas de ficheros montados temporalmente.

/media/ Puntos de montaje para dispositivos de medios como unidades lectoras de discos compactos.

/opt/ Paquetes de aplicaciones estáticas.

/proc/ Sistema de ficheros virtual que documenta sucesos y estados del núcleo. Contiene principalmente ficheros de texto.

/root/ (opcional) Directorio de inicio del usuario root (super-usuario).

/sbin/ Binarios de administración de sistema.

/tmp/ Ficheros temporales

/srv/ Datos específicos de sitio servidos por el sistema.

/usr/ Jerarquía secundaria para datos compartidos de solo lectura (Unix system

resources). Este directorio debe poder ser compartido para múltiples anfitriones y no debe contener datos específicos del anfitrión que los comparte.

/usr/bin/ Mandatos binarios.

/usr/include/ Ficheros de inclusión estándar (cabeceras de cabecera utilizados para desarrollo).

/usr/lib/ Bibliotecas compartidas.

/usr/share/ Datos compartidos independientes de la arquitectura del sistema. Imágenes, ficheros de texto, etc.

/usr/src/ (opcional) Códigos fuente.

/usr/X11R6/ (opcional) Sistema X Window, versión 11, lanzamiento 6.

/usr/local/ Jerarquía terciaria para datos compartidos de solo lectura específicos del anfitrión.

/var/ Ficheros variables, como son bitácoras, bases de datos, directorio raíz de servidores HTTP y FTP, colas de correo, ficheros temporales, etc.

/var/account/ (opcional) Procesa bitácoras de cuentas de usuarios.

/var/cache/ Cache da datos de aplicaciones.

/var/crash/ (opcional) Depósito de información referente a estrellamientos del de sistema.

(38)

Joel Barrios Dueñas Implementación de Servidores con GNU/Linux

Más detalles acerca del FHS en http://www.pathname.com/fhs/.

2.3. Particiones recomendadas para instalar GNU/Linux.

Como mínimo se requieren tres particiones:

/boot Requiere al menos 75 MB. Asignar más espacio puede considerarse desperdicio.

/ Requiere de 512 a 1024 MB.

Swap Debe asignarse el doble del tamaño del RAM físico, esta será siempre la última

partición del disco duro y no se le asigna punto de montaje

References

Related documents