crédito de síntesis

Transcripción

crédito de síntesis
CRÉDITO DE
SÍNTESIS
OPENLDAP Y SAMBA
GONZALO CIONTI
XAVIER GARCÍA
IES NICOLAU
COPÈRNIC 2011
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
ÍNDICE
1.
Introducción............................................................................................... 4
2.
Objetivos ................................................................................................... 4
3. Propuesta técnica ............................................................................................ 5
4. Instalación e implementación OpenLDAP ............................................................ 6
4.1 Conceptos básicos de LDAP .......................................................................... 6
4.2 Administrando LDAP .................................................................................... 7
4.3 OpenLDAP ................................................................................................. 9
5. Instalación de Ubuntu Server 10.04 LTS........................................................... 12
6. Preparación previa servidor ............................................................................ 24
7. Instalación de SSH en servidor........................................................................ 26
8. Instalación de OpenLDAP ............................................................................... 30
8.1 ¿ Por qué OpenLDAP ? ............................................................................... 30
8.3 Instalación de OpenLDAP en el servidor ....................................................... 30
9. SAMBA ......................................................................................................... 38
9.1 ¿ Que es SAMBA ?..................................................................................... 38
9.2 Instalación de SAMBA................................................................................ 39
Globales ..................................................................................................... 44
Recursos .................................................................................................... 45
9.3 Mapeo de unidades ................................................................................... 59
10. Instalación de SWAT .................................................................................... 61
11. Instalación PHPLDAPADMIN .......................................................................... 65
12. Servidor de impresión CUPS .......................................................................... 71
13. Instalación de WEBMIN ................................................................................ 87
14. Autenticando usuarios .................................................................................. 98
14.1 Autenticando usuarios ( NSS ) .................................................................. 98
14.2 Autenticando usuarios ( PAM ) ................................................................ 100
14.3 Equipos al dominio ( windows XP ) ........................................................... 104
1
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
14.4 Equipos al dominio ( Windows 7 ) ............................................................ 107
14.5 Equipos al dominio ( Ubuntu Desktop 10.10 ) ............................................ 116
15.Servidor NTP ............................................................................................... 123
16. Proxy Squid ............................................................................................... 128
16.1 Instalación de Proxy Squid ...................................................................... 129
16.2 Configuración Proxy Squid....................................................................... 135
17. Dansguardian ............................................................................................. 137
Instalación DansGuardian/clamav ............................................................. 137
Configuración de DansGuardian/Squid ....................................................... 140
Configuración de iptables ......................................................................... 141
Herramientas de Análisis de trafico............................................................ 143
18.Calamaris ................................................................................................... 144
Instalación/configuración CALAMARIS ........................................................ 144
19.Configuración de la red ................................................................................ 146
Configuracion del router ................................................................................. 153
20.servidor dns ................................................................................................ 160
21.servidor dhcp .............................................................................................. 166
Configuracion del servidor EMPRESA ................................................................ 168
Fichero de configuración de intefaces /etc/network/interfaces ............................. 169
Configuracion del fichero dhcpd.conf ................................................................ 172
22. backup ldap ............................................................................................... 177
23.bibliografia ................................................................................................. 179
2
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Resumen del proyecto
El objetivo del presente PFC es el de crear y configurar una red LAN entre los
equipos de una empresa, crear un dominio capaz de operar en entornos
multiplataforma y optimizar la gestión de los equipos usando soluciones informáticas
libres de licencias de pago.
Se reforzarán los criterios de seguridad de los datos y la red que son vitales en
un entorno empresarial, además de ir respondiendo a las necesidades particulares de la
misma que intentaremos cubrir las más básicas en este PFC.
Abstract
The objective of this PFC is create and configure a LAN between PC´s in a
company, create a domain capable of operating in a multi-platform evironment and
optimize the managament of the equipments using informatic solutions free of license
fees.
Criteria will be reinforced for data security and network safety, that are vital in a
business environment, besides going to repond to the needs of the company to try to
cover the most basic in this PFC.
3
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
1. Introducción
Este PFC es la respuesta a una necesidad creada en una empresa, donde no hay ningún
sistema para gestionar los equipos y es necesario para mejorar la productividad de la
empresa y optimizar el tiempo de sus empleados.
En esta práctica la empresa es de nueva creación en unos tiempos económicos difíciles,
donde se implementará el mayor número posible de soluciones informáticas sin coste
en licencias e intentado ahorrar en lo posible en cuanto a infraestructura de hardware.
Se instalarán varios servicios para optimizar el funcionamiento de la empresa, y se
creará una política de seguridad de los datos , tanto su confinamiento siguiendo la
LOPD como su seguridad , mediante copias de seguridad , restringiendo y cifrando los
datos sensibles.
2. Objetivos
 Conectar en una LAN los equipos y servidores
 Creación de un dominio de empresa
 Posibilidad de trabajar en multiplataforma
 Posibilidad de conexión inalámbrica
 Conexión a Internet
 Garantizar la seguridad de los datos y prevención de pérdidas de datos
 Optimizar la gestión de la red y los equipos
4
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
3. Propuesta técnica
La empresa consta de 33 equipos repartidos en 2 plantas. Para crear la LAN
usaremos 2 Switch, 1 por planta, y usaremos 1 router para dar salida a Internet.
Para la posterior creación lógica de la red ( por departamentos ) y primando la
necesidad de ahorrar en costes, las separaciones por departamentos de la empresa se
realizarán mediante LAN virtuales (VLAN). Se colocarán los puntos de acceso
inalámbricos necesarios para la correcta conectividad de los equipos.
El firewall usado serán Netfilter usando IPTABLES para conseguir el control
sobre la red.
Para el servidor principal se usará Ubuntu Server 10.04 LTS por ser la que
mayor soporte tiene y ser software libre.
Para dar la posibilidad multiplataforma se usará SAMBA como controlador
principal del dominio y posibilitar el acceso a recursos compartidos o impresoras en
red.
El dominio se creará con OpenLDAP, versión de software libre de LDAP ( RFC
1777), que gestionaremos de forma gráfica con PhPLdapAdmin. Existen otras
alternativas como puede ser NDS ( Novell Directory System ) , iPlantet ( Sun Directory
One Directory Server ) , RHDS ( Red Hat Directory Server ), ADS ( Apache Directory
Server ), Open DS ( Directory Server basado en Java ) o Active Directory ( Microsoft ) ,
pero se elige OpenLDAP por cumplir con los requisitos de la empresa, en cuanto a
funciones costes y ser el más usado ( con lo que conlleva soporte y documentación )
después de AD de Microsoft.
Para gestionar el tráfico de la red, así como su control y optimización a las
necesidades de la empresa se usará el Proxy SQUID. Para la gestión y optimización de
estos recursos se usará Calamaris para la creación de informes y seguimiento del uso
de los recursos para adecuar nuestras políticas.
Se proveerá de servicios de DNS ( bind9 ) , servicios de DHCP y de NTP.
Se crearán políticas de copias de seguridad y respaldo de datos por software .
Se usará el software de CUPS para la gestión de las impresoras y servidor de
imrpesión.
Se mantendrán todos los equipos sincronizados mediante servidores NTP.
5
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
4. Instalación e implementación OpenLDAP
4.1 Conceptos básicos de LDAP
LDAP ( Protocolo Ligero de acceso a Directorios ) es un protocolo a nivel de
aplicación que permite el acceso a un servicio de directorio ordenado y distribuido para
buscar diversa información en un entorno de red.
También está considerada como una base de datos a la que se realizan
consultas, aunque no es relacional como podría ser SyBase, Microsoft SQL server,
Oracle o Informix.
Un directorio es un conjunto de objetos con atributos organizados de manera
lógica y jerárquica.
Un árbol de directorios de LDAP puede reflejar los límites políticos o
geográficos de una empresa donde se suele usar el DNS para estructurar los niveles
más altos de la jerarquía. A medida que bajamos, encontramos unidades organizativas,
personas, impresoras, grupos, etc.
La información almacenada puede ser múltiple (datos personales, permisos,
certificados, recursos de red…), aunque la más usada es la información sobre
autenticación (usuario y contraseña).
Un directorio de LDAP está compuesto de :

Un directorio es un árbol ordenado de entradas

Una entrada tiene una serie de atributos

Un atributo tiene un nombre ( tipo o descripción ) y uno o más valores

Los atributos son definidos por un esquema

Cada entrada tiene un identificador único ( DN – Nombre distintivo )
6
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Los directorios como LDAP están para dar respuestas rápidas a operaciones de
búsqueda o consulta ya que se leen mucho más de lo que se escriben. Pueden tener
capacidad de replicar información de forma rápida y sencilla con el fin de aumentar
la disponibilidad y la fiabilidad y reducir el tiempo de respuesta.
El servicio de directorio de LDAP se basa en un modelo de cliente-servidor.
4.2 Administrando LDAP
LDAP sigue una estructura en árbol jerarquizada como puede ser un sistema de
ficheros de un sistema operativo o DNS.
7
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Entradas
El modelo de información de LDAP está basado en entradas. Antes hemos
indicado que una entrada contiene atributos que suelen ser palabras nemotécnicas
como “cn” para common-name o “mail” para correo electrónico.
La sintaxis entonces depende del tipo de atributo que contiene el valor. La
recopilación de las entradas con sus atributos constituyen un esquema LDAP Data
Interchange Format (LDIF)
Un ejemplo sería para una cuenta de usuario en formato LDIF:
dn: uid=jperez,ou=People,dc=ejemplo,dc=com
uid: jperez
cn: Juan Perez
objectclass: account
objectclass: posixAccount
objectclass: top
loginshell: /bin/bash
uidnumber: 512
gidnumber: 300
homedirectory: /home/jperez
gecos: Juan Perez,,,,
userpassword: {crypt}LPnaOoUYN57Netaac
8
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
En nuestro caso , en OpenLDAP encontramos 4 esquemas por defecto en el
archivo slapd.conf aunque se pueden incluir más. La ruta de acceso a dichos
esquemas es /etc/openldap/schema.
Los datos del directorio se muestran mediante pares de atributo:valor para usar un
atributo previamente se tiene que haber cargado el objectclass al que pertenece la
entrada en el servidor LDAP.
Hay atributos opcionales y obligatorios estos últimos deben de estar presentes en
cualquier entrada.
4.3 OpenLDAP
El proyecto OpenLDAP fue creado en 1998 por Kurt Zeilanga como la
continuación de la versión 3.3 del servidor LDAP de la Universidad de Michigan.
OpenLDAP es un servidor LDAP que se distribuye bajo licencia GNU. Existen 3 versiones
de OpenLDAP

Release: Para uso general

Stable Release: Es última versión más fiable y probada ( LTS en términos de
Ubuntu )

Test Release: Es una beta o gamma, y suelen servir para pruebas no para su
uso general.
Las versiones de OpenLDAP 2.X funcionan con la versión 3 de LDAP ( RFC 3377
), LDAPv3 es el estándar en la actualidad para todos los servidores de LDAP.
Los paquetes incluidos en la instalación de OpenLDAP son:

Servidor LDAP ( slapd )

Servidor de replicación LDAP ( slurpd )

Software Development Kit (ldap )

Utilidades , herramientas , ejemplos …
9
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Requisitos de OpenLDAP
OpenLDAP funciona bajo los siguientes sistemas operativos:

Apple Mac OS X

Linux : Debian , RedHat , SuSe, Fedora, Mandrake …

FreeBSD

IBM AIX

Microsoft Windows 2000/2003/…

NetBSD

Solaris

Contenido de OpenLDAP
Contiene una serie de archivos binarios que vemos a continuación con una breve
explicación de su cometido:
 Ldapadd: abre una conexión a un servidor LDAP , enlaza y añade entradas
 Ldapcompare: abre una conexión a un servidor LDAP , enlaza y hace una
comparación usando los parámetros especificados.
 Ldapdelete: abre una conexión a un servidor LDAP, enlaza y borra una o más
entradas.
 Ldapmodify: abre una conexión a un servidor LDAP, enlaza y modifica entradas.
 Ldapmodrdn: abre una conexión a un servidor LDAP, enlaza y modifica el RDN
de las entradas.
 Ldappasswd: es una herramienta para establecer una contraseña de un usuario
de LDAP.
 Ldapsearch: abre una conexión a un servidor LDAP, enlaza y hace una
búsqueda usando los parámetros especificados.
 Ldapwhoami: abre una conexión a un servidor LDAP, enlaza y realiza una
operación whoami.
 Slapadd se usa para añadir entradas específicas en el formato LDIF de una
base de datos slapd.
 Slapcat se usa para generar una salida LDAP LDIF basada en el contenido de la
base de datos slapd.
10
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
 Salpd es el servidor de LDAP
 Slapindex se usa para generar los índices slapd basados en el contenido actual
de la base de datos.
 Slappasswd es una utilidad de contraseñas OpenLDAP
 Slurpd es el servidor replica de LDAP
11
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
5. Instalación de Ubuntu Server 10.04 LTS
Una vez insertado el CD o la memoria USB en el equipo arrancamos con él.
En la siguiente pantalla nos encontramos con un menú gráfico en el que tenemos
varias opciones. En cualquier caso, como queremos instalar Ubuntu Server,
lógicamente pulsamos Intro sobre Instalar Ubuntu Server.
12
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
A continuación comenzará el instalador de Ubuntu Server que, a diferencia de
Ubuntu Desktop, está basado en texto.
Lo primero que debemos hacer es seleccionar el país o región en la que nos
encontramos.
En la siguiente pantalla el instalador nos pregunta si queremos que él detecte
automáticamente la distribución del teclado que tenemos.
13
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Como es lógico, ahora nos toca indicar el origen del teclado. Por lo que
seleccionamos España y pulsamos Intro.
Y después la distribución específica. De nuevo España.
Al configurar la red, lo primero que hace es comprobar si tiene acceso a un servidor
DHCP. Si detecta algún servidor DHCP en la red, se configura automáticamente y
continuaríamos indicando el nombre de nuestro servidor.
L
14
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Lo siguiente es indicarle el nombre de nuestro servidor. En este caso le hemos
puesto hydra
Automáticamente y basándose en nuestra ubicación física el instalador nos dirá
nuestra zona horaria. Si es correcta, seleccionamos Sí. Si no lo es, después de
seleccionar No veremos un listado de zonas para elegir la nuestra.
El particionado de discos es único proceso algo más complicado de toda la
instalación. En general tenemos dos opciones: el particionado clásico y el LVM (Logical
Volume Manager); siendo mucho más versátil el LVM.
El asistente de la instalación nos proporciona las siguientes alternativas:
15
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
 Guiado – utilizar todo el disco: el asistente creará dos particiones (raíz y
swap).
 Guiado – utilizar el disco completo y configurar LVM: se crea una partición
de arranque (boot) y un volumen físico que contendrá dos volúmenes lógicos
(raíz y swap).
 Guiado – utilizar todo el disco y configurar LVM cifrado: igual que el
anterior pero en este caso se cifra el volumen lógico que contiene la partición
raíz.
 Manual: nos permite particionar como queramos. Con o sin LVM, cifrando o sin
cifrar y creando el número de particiones que necesitemos.
Recomendamos especialmente a elegir uno de los que use LVM.
Por lo que nos queda un volumen físico que contendrá dos volúmenes lógicos (raíz
y swap).
 / (raíz): contiene el sistema en sí, las aplicaciones que se instalen, los archivos
de configuración y el home
 swap: el área de intercambio.
Seleccionamos Guiado – Utilizar el disco completo y configurar LVM
16
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Seleccionamos el disco a configurar
Y guardamos los cambios.
17
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Seleccionamos la cantidad de espacio en disco
Por último, debemos confirmar que se van a escribir los datos en el disco antes
de continuar. Marcamos Sí y pulsamos Intro.
18
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Una vez que hemos terminado con las particiones es el momento de crear una
cuenta de usuario con privilegios de administración.
Hay que recordar que en Ubuntu el usuario root no está habilitado por defecto,
por lo que cuando tengamos que hacer alguna tarea administrativa, tendremos que
usar el nombre de usuario y la contraseña del usuario que vamos a crear a
continuación.
Lo primero que tenemos que hacer es escribir el nombre real del usuario:
server. Este nombre puede tener espacios en blanco o caracteres especiales.
Después tenemos que escribir el nombre de usuario (el identificador). Este
nombre tiene que empezar por una letra minúscula y no puede contener ni espacios ni
caracteres especiales.
19
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Lo siguiente que deberemos indicar es la contraseña para este usuario. Los
consejos de que contenga letras, números y signos de puntuación que nos hace el
instalador son una buena idea.
Para verificar que la contraseña tenemos que escribirla de nuevo.
También tenemos que configurar si queremos que nuestra carpeta personal esté
cifrada. En nuestro caso no lo encontramos necesario porque apenas vamos a hacer
uso de esta carpeta. Así que contestamos que No.
20
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
La configuración del gestor de paquetes no es necesaria en muchos casos ya que
sólo será necesaria cuando para acceder a Internet estemos detrás de un proxy no
transparente. Si fuera ese nuestro caso, tendríamos que escribir esa información. Como
mi servidor no está detrás de ningún proxy, lo dejo en blanco.
21
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
En esta pantalla debemos decidir qué hacer con las actualizaciones. Tenemos tres
opciones:
 Sin actualizaciones automáticas. Cuando queramos actualizar nuestro
servidor, lo haremos manualmente. Por ejemplo, usando el siguiente comando:
sudo apt-get update && sudo apt-get upgrade
 Instalar actualizaciones de seguridad automáticamente. De esta forma nos
podemos despreocupar de las actualizaciones más importantes ya que nuestro
servidor las actualizará de forma automática. En mi caso es la que he decidido
poner.
 Administrar el sistema con Landscape. Landscape es un servicio de pago de
Canonical para administrar a través de la web nuestros servidores.
Además de la instalación del sistema básico, podemos instalar cómodamente una
buena cantidad de servicios.
22
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
El último paso en la instalación de Ubuntu 10.04 LTS Server consiste en la
instalación del cargador de arranque GRUB en el registro principal de arranque. En
general no se suele instalar un Ubuntu Server junto con otros sistemas operativos (no
tiene mucho sentido), por lo que no tendremos ningún tipo de problema. Marcaremos
Sí y pulsaremos Intro para instalar el GRUB en nuestro sistema.
Aquí se termina la instalación de nuestro nuevo servidor basado en Ubuntu. El
mensaje nos recuerda que debemos sacar el CD-ROM o memoria USB para que cuando
reinicie, el sistema arranque desde el disco duro. Cuando estemos listos, pulsamos
Continuar.
23
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
6. Preparación previa servidor
Antes de iniciar la instalación de OpenLDAP vamos a modificar algunos
parámetros de nuestro servidor para después adecuarlo al dominio.
Lo primero será establecer una IP estática y configurar el resto de los parámetros
de red.
Accedemos al servidor y modificamos el fichero de interfaces ( cualquier
modificación en el sistema precisa de permisos de root ), por ejemplo con el editor
nano.
# nano /etc/network/interfaces
Y realizamos los siguientes cambios en el archivo de configuración
Auto lo eth0
Iface lo inet loopback
Iface eth0 inet static
Address 192.168.1.10
Broadcast 192.168.1.15
Netmask 255.255.255.240
Gateway 192.168.1.1
Reiniciamos la interfaz de red para aplicar los cambios que hemos realizado:
# /etc/init.d/networking restart
Podemos comprobar los cambios mediante el comando ifconfig
Cambiamos el nombre del host y ponemos el nombre del dominio que será
empresa.com
# nano /etc/hosts
24
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Lo modificamos por lo siguiente:
Hydra es el nombre del equipo
Empresa.com el nombre del dominio
Modificamos el nombre de nuestro servidor a un nombre que se asocie al
dominio.
# nano /etc/hostname
25
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
7. Instalación de SSH en servidor
En muchas ocasiones , el servidor no debería de tener pantalla , teclado ni ratón.
Debería de estar en un lugar cerrado e imposibilitando el acceso a cualquier persona no
autorizada por lo que parece aconsejable utilizar algún sistema de poder acceder al
mismo de forma remota y segura.
Para ello vamos a instalar y configurar el servicio de SSH en el servidor.
El objetivo es acceder de forma remota a nuestro servidor desde un Ubuntu
Desktop 10.10 y no trabajar directamente sobre el servidor en adelante.
Como medidas de seguridad adicionales, aparte de las realizadas en el archivo de
configuración de SSH, se podrían poner medios para evitar los ataques de replay o
los ataques por diccionario de fuerza bruta a nuestra conexión SSH con
herramientas como fail2ban aunque su implementación queda fuera del objetivo de
este PFC.
En el caso de que no tengamos instalado SSH usamos OpenSSH de los
repositorios de Ubuntu.
# apt-get install –y openssh-server
Una vez instalado pasamos a modificar el archivo de configuración, donde vamos
a cambiar el puerto de conexión por defecto que es el 22 al 420, ya que existen
numerosos scripts que atacan conexiones al puerto 22 de SSH. Vamos a impedir a su
vez el acceso como root para dificultar aún más los accesos no deseados.
# nano /etc/ssh/sshd_config
26
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Añadimos PermitRootLogin no , LoginTimeGrace 30 ( baja el tiempo que
disponemos de Login a 30 segundos en vez de 120 por defecto ) y cambiamos el
puerto a 420.
Podríamos restringir aún más el acceso mediante especificar una máquina en
concreto o un usuario ( AllowUsers + nombre o IP).
Recargamos el archivo de configuración de ssh con reload no hace falta reiniciar
el servicio.
# /etc/init.d/ssh reload
A partir de ahora vamos a trabajar de forma remota en un Ubuntu Desktop
10.10 para ello primero vamos a terminar de configurar OpenSSH para poder acceder
al servidor de forma remota.
En el cliente vamos a crear las claves RSA
# ssh-keygen –t rsa –f ~/.ssh/id_rsa
27
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Activamos ssh-agent para que no nos pida la pass-phrase
# eval `ssh-agent –s`
Nos devuelve el PID del agente de SSH y añadimos la clave a la ruta anteriormente
especificada.
# ssh-add
Copiamos al servidor la clave pública
# scp ~/.ssh/id_rsa.pub „[email protected] –p 420‟:~/.ssh/id_rsa.pub
La añadimos al final del fichero de Authorized Keys
# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Y ya podemos iniciar sesión SSH ( sin password )
28
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Por cuestiones de seguridad, sin embargo, lo más recomendable es dejarlo
con un password fuerte , ya que podría ser contra producente eliminar el password.
Por lo que haríamos una simple conexión ssh ( nombre@servidor )
# ssh [email protected]
Confirmamos que el host es de confianza, si es necesario comprobaríamos la
fingerprint, le damos a yes y a continuación introducimos el password.
Trabajamos bajo SSH en el servidor en adelante.
29
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
8. Instalación de OpenLDAP
8.1 ¿ Por qué OpenLDAP ?
El mantener una base de datos centralizada nos permite:

Mantener centralizada la información de usuarios, sus claves de acceso,
privilegios y limitaciones.

Mantener un control de acceso de todos los recursos de la red utilizando
información centralizada.

Cualquier usuario puede acceder al sistema y a sus recursos desde cualquier
terminal, sus privilegios y limitaciones le serán efectivos solo con introducir su
nombre de usuario y contraseña.

Se pueden aplicar restricciones que serán impuestas a los usuarios sin importal
el terminal de acceso.

Se puede compartir la información de autenticación con otros servicios , como email, acceso a internet , BBDD, etc …

Se permite la replicación de LDAP
8.3 Instalación de OpenLDAP en el servidor
Previamente habrá una serie de conceptos que se repiten durante el PFC y se
van a remarcar aquí:
Nombre del servidor : Hydra
Nombre del dominio: empresa.com
El FQDN ( Full Qualified Name Domain ) : Hydra.empresa.com
EL dominio de LDAP consta de 2 DC ( Domain Component – Componente de dominio )
que en nuestro caso tiene la siguiente nomenclatura:
DC= empresa, DC=com
30
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Pasamos a la instalación del servidor maestro de OpenLDAP. Instalamos los
paquetes necesarios de los repositorios.
# apt-get install slapd ldap-utils
Con esto estamos instalando el demonio básico para LDAP ( slapd ) así como una
serie de utilidades para gestionar posteriormente LDAP ( el contenido de LDAP utils se
puede ver en la sección 4.3 OpenLDAP )
Ahora debemos rellenar esta base de datos con nuestros objetos y atributos.
Para ello nos preparamos para cargar los schemas ( los esquemas que recogen los
objetos con sus atributos ) en formato LDIF.
# ldapadd -Y EXTERNAL - H ldapi:/// -f /etc/ldap/schema/cosine.ldif
# ldapadd -Y EXTERNAL - H ldapi:/// -f /etc/ldap/schema/nis.ldif
# ldapadd -Y EXTERNAL - H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif
Lo que acabamos de hacer , junto con la instalación de slapd es la creación de la
base de datos en su forma más básica pero aún no se puede utilizar. Las salidas a los
siguientes comandos deben ser las siguientes:
Cosine.ldif
Nis.ldif
31
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Inetorgperson.ldif
Una vez creado el esqueleto vamos a crear un backend de la base de datos , en
este LDIF vamos a configurar varios atributos , así como el administrador y su
password que por cuestiones de seguridad vamos a cifrar en MD5 ( va en texto plano
sino lo hacemos )
Para obtener la contraseña cifrada por MD5 antes de crear el LDIF nos ayudamos
de uno de los paquetes que contiene ldap-utils , slappasswd.
# slappasswd –h {MD5}
Donde –h especifíca el tipo de encriptación.
Otros atributos útiles puede ser –T ( fichero ) donde cargamos el pass por un
fichero.
La salida es una cadena de valores en MD5 que debemos de guardar para un
posterior uso, esta herramienta no permite los passwords en blanco ( not null ).
Creamos un archivo que se va a llamar backend.ldif
# nano ~/backend.ldif
Y lo rellenamos con los siguientes datos:
# Carga módulos
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulepath: /usr/lib/ldap
olcModuleload: back_hdb
# Database settings
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: {1}hdb
olcSuffix: dc=empresa,dc=com
32
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
# Ruta
olcDbDirectory: /var/lib/ldap
# Admin de LDAP , pass en MD5
olcRootDN: cn=admin,dc=empresa,dc=com
olcRootPW: {MD5}OsKcjbnKmODk14K//HrNlA==
# Objetos
olcDbConfig: set_cachesize 0 2097152 0
olcDbConfig: set_lk_max_objects 1500
olcDbConfig: set_lk_max_locks 1500
olcDbConfig: set_lk_max_lockers 1500
olcDbIndex: objectClass eq
olcLastMod: TRUE
olcDbCheckpoint: 512 30
# Permisos
olcAccess: to attrs=userPassword by dn="cn=admin,dc=empresa,dc=com" write by
anonymous auth by self write by * none
olcAccess: to attrs=shadowLastChange by self write by * read
olcAccess: to dn.base="" by * read
olcAccess: to * by dn="cn=admin,dc=empresa,dc=com" write by * read
33
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Ahora añadimos el LDIF como hemos hecho con los anteriores.
# ldapadd - Y EXTERNAL - H ldapi:/// -f /home/server/backend.ldif
Y con estos esquemas hemos construido el esqueleto de OpenLDAP , el siguiente paso
es su integración con SAMBA.
Para hacer más sencilla y automatizada podemos usar el siguiente script:
#!/bin/sh
passwd=pleaseeditme
dc1=pleaseeditme
dc2=pleaseeditme
hash_pw=`slappasswd -s $passwd`
tmpdir=/tmp
#--------------------------------------------------------------#
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/misc.ldif
#——————————————————————-#
# database.ldif
#——————————————————————-#
cat << EOF > $tmpdir/database.ldif
# Load dynamic backend modules
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
# Create directory database
dn: olcDatabase={1}hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: {1}hdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=$dc1,dc=$dc2
olcRootDN: cn=admin,dc=$dc1,dc=$dc2
34
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
olcRootPW: $hash_pw
olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=admin,dc=$dc1,dc=$dc2" write by
anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=admin,dc=$dc1,dc=$dc2" write by * read
olcLastMod: TRUE
olcDbCheckpoint: 512 30
olcDbConfig: {0}set_cachesize 0 2097152 0
olcDbConfig: {1}set_lk_max_objects 1500
olcDbConfig: {2}set_lk_max_locks 1500
olcDbConfig: {3}set_lk_max_lockers 1500
olcDbIndex: uid pres,eq
olcDbIndex: cn,sn,mail pres,eq,approx,sub
olcDbIndex: objectClass eq
################################
#
Modifications
################################
dn: cn=config
changetype: modify
dn: olcDatabase={-1}frontend,cn=config
changetype: modify
delete: olcAccess
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootDN
olcRootDN: cn=admin,cn=config
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: $hash_pw
dn: olcDatabase={0}config,cn=config
changetype: modify
delete: olcAccess
EOF
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f $tmpdir/database.ldif
####################################
#
Mini DIT
####################################
cat << EOF > $tmpdir/dit.ldif
# Tree root
dn: dc=$dc1,dc=$dc2
objectClass: dcObject
objectclass: organization
o: $dc1.$dc2
35
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
dc: $dc1
description: Tree root
# Populating
dn: cn=admin,dc=$dc1,dc=$dc2
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
userPassword: $hash_pw
description: LDAP administrator
dn: cn=aw,dc=$dc1,dc=$dc2
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: aw
userPassword: $hash_pw
description: LDAP aw
dn: ou=people,dc=$dc1,dc=$dc2
ou: people
objectClass: organizationalUnit
objectClass: top
dn: ou=groups,dc=$dc1,dc=$dc2
ou: groups
objectClass: organizationalUnit
objectClass: top
dn: ou=addressbook,dc=$dc1,dc=$dc2
ou: addressbook
objectClass: top
objectClass: organizationalUnit
#Adding user
dn: uid=ldap1,ou=people,dc=$dc1,dc=$dc2
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: ldap1
sn: Asdasd
givenName: ldap1
cn: ldap1 Asdasd
displayName: ldap1 asdasd
uidNumber: 1002
gidNumber: 1000
userPassword: $hash_pw
gecos: ldap1 asdasd
loginShell: /bin/bash
homeDirectory: /home/ldap1
shadowExpire: -1
36
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
shadowFlag: 0
shadowWarning: 7
shadowMin: 8
shadowMax: 999999
shadowLastChange: 10877
mail: aw@$dc1.$dc2
postalCode: 31000
l: Mysity
o: $dc1
mobile: +33 (0)6 22 22 22 22 22
homePhone: +33 (0)5 33 22 33 22
title: System Administrator
postalAddress:
initials: LP
EOF
sudo ldapadd -x -D cn=admin,dc=$dc1,dc=$dc2 -W -f $tmpdir/dit.ldif
El script se ejecuta con #sh script.sh.
Este script también puede ser útil para reutilizar , editar o borrar la BBDD de ldap y empezar de 0.
#!/bin/sh
aptitude purge slapd ldap-utils
cat /dev/null > /var/log/debug
rm /var/lib/ldap/*
rm -rf /etc/ldap
apt-get install slapd ldap-utils
37
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
9. SAMBA
9.1 ¿ Que es SAMBA ?
Samba es un software que permite a tu ordenador con Ubuntu poder compartir
archivos e impresoras con otras computadoras en una misma red local. Utiliza para ello
un protocolo conocido como SMB/CIFS compatible con sistemas operativos UNIX o
Linux , como Ubuntu, pero además con sistemas Windows (XP, NT, 98...), OS/2 o
incluso DOS. También se puede conocer como LanManager o NetBIOS.
Samba es una aplicación gratuita y de código abierto que nos permite tener un
servidor de archivos, impresoras y otros elementos de una red Windows montado en
nuestra distribución GNU/Linux.
Samba divide su trabajo en distintas herramientas para compartir archivos,
directorios, crear usuarios, dar permisos, compartir impresoras, etc. Todas ellas se
pueden manejar desde la línea de comandos, aunque en algunos entornos de escritorio
ya hay algunos controles gráficos para compartir archivos.
Una de las ventajas más llamativas de Samba es la posibilidad de compartir
archivos y dispositivos (impresoras, unidades lectoras de discos, etc.) con sistemas
Windows, haciendo transparentes las diferentes
38
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
9.2 Instalación de SAMBA
Vamos a instalar los paquetes de SAMBA que vamos a necesitar.
# apt-get install samba samba-doc smbclient smbfs smbldap-tools libpamsmbpass
Instalamos el paquete básico de SAMBA , la documentación , el cliente , el file
system , unas herramientas que nos ayudarán en la integración con OpenLDAP y el
último es un módulo de autenticación llamado PAM que veremos un poco más adelante.
Instalará los paquetes con todas sus dependencias.
Hay varias maneras de configurar SAMBA , desde consola o apoyándonos en
diversas GUI´s de configuración, por ejemplo:

System-config-samba

Gadmin

Swat ( Samba Web Administration tool )
Aquí vamos a hacer la instalación gracias a un script escrito en PERL que ya
viene en el paquete de smbldap-tools. Sin embargo , instalaremos SWAT para ver las
opciones de configuración y el archivo smb.conf.
Este archivo , el smb.conf es el más importante de SAMBA por lo que es buena
idea hacer una copia de seguridad del original.
# cp /etc/samba/smb.conf{,.original}
A continuación lo vamos a editar
Primero cambiamos el grupo de trabajo por empresa.com
39
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
El archivo de configuración de SAMBA es bastante extenso y está muy
documentado. Eso a veces puede dificultar la lectura de los parámetros descomentados
pero lo podemos solucionar , quitando los comentarios, con la siguiente instrucción
# testparm –s [archivo de configuración ] > [archivo de destino ]
Testparm sin opciones mirará que el smb.conf no tenga errores sintácticos ( eso
no significa que funcione ).
Editamos entero el smb.conf , ya que hemos guardado el original , borramos el
smb.conf entero y lo substituimos por lo siguiente:
[global]
# Domain name ..
workgroup = empresa
# Server name - as seen by Windows PCs ..
netbios name = Hydra
# Para hacerlo PDC
domain logons = Yes
domain master = Yes
# Be a WINS server ..
wins support = true
obey pam restrictions = Yes
dns proxy = No
os level = 35
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
pam password change = Yes
# Allows users on WinXP PCs to change their password when they press Ctrl-AltDel
unix password sync = no
ldap passwd sync = yes
40
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
# Printing from PCs will go via CUPS ..
load printers = yes
printing = cups
printcap name = cups
# Use LDAP for Samba user accounts and groups ..
passdb backend = ldapsam:ldap://localhost
# This must match init.ldif ..
ldap suffix = dc=empresa,dc=com
# The password for cn=admin MUST be stored in /etc/samba/secrets.tdb
# This is done by running 'sudo smbpasswd -w'.
ldap admin dn = cn=admin,dc=empresa,dc=com
# 4 OUs that Samba uses when creating user accounts, computer accounts, etc.
# (Because we are using smbldap-tools, call them 'Users', 'Computers', etc.)
ldap machine suffix = ou=Computers
ldap user suffix = ou=Users
ldap group suffix = ou=Groups
ldap idmap suffix = ou=Idmap
# Samba and LDAP server are on the same server in this example.
ldap ssl = no
# Scripts para los usuarios de SAMBA ( se crea script de inicio )
add user script = /usr/sbin/smbldap-useradd -m '%u'
delete user script = /usr/sbin/smbldap-userdel %u
add group script = /usr/sbin/smbldap-groupadd -p '%g'
delete group script = /usr/sbin/smbldap-groupdel '%g'
add user to group script = /usr/sbin/smbldap-groupmod -m '%u' '%g'
delete user from group script = /usr/sbin/smbldap-groupmod -x '%u' '%g'
set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
# Script that Samba users when a PC joins the domain ..
# (when changing 'Computer Properties' on the PC)
add machine script = /usr/sbin/smbldap-useradd -w '%u'
# Values used when a new user is created ..
41
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
# (Note: '%L' does not work properly with smbldap-tools 0.9.4-1)
logon drive =
logon home =
logon path =
logon script = allusers.bat
# This is required for Windows XP client ..
server signing = auto
server schannel = Auto
[homes]
comment = Home Directories
valid users = %S
read only = No
browseable = No
[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
admin users = root
guest ok = Yes
browseable = No
logon script = allusers.bat
[Profiles]
comment = Roaming Profile Share
# would probably change this to elsewhere in a production system ..
path = /var/lib/samba/profiles
read only = No
profile acls = Yes
browsable = No
[printers]
comment = All Printers
path = /var/spool/samba
use client driver = Yes
create mask = 0600
42
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
guest ok = Yes
printable = Yes
browseable = No
public = yes
writable = yes
admin users = root
write list = root
[print$]
comment = Printer Drivers Share
path = /var/lib/samba/printers
write list = root
create mask = 0664
directory mask = 0775
admin users = root
[shared]
writeable = yes
path = /var/lib/samba/shared
public = yes
browseable = yes
[archive]
path = /exports/archive
browseable = yes
create mask = 755
directory mask = 755
read only = no
Checkeamos posibles errores
# testparm
43
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Se han puesto en el smb.conf lo necesario para que funcione con LDAP , sin embargo el
archive de configuración tiene bastantes más parámetros:
GLOBALES















check password script : permite definir un script que verificará la complejidad
de la contraseña definida, retornando 0 si es aprobada por el programa indicado
debug uid : permite registrar los uid, gid, euid y egid del usuario que solicita un
recurso en el log del servidor
domain master : habilita a nmbd con un nombre NetBios específico que lo
identifica como maestro de dominio del grupo de trabajo indicado
guest account : usuario utilizado para acceder a los recursos que tienen
definido "guest ok"
include : incluye otro archivo de configuración complementario
debuglevel o log level : permite definir el nivel de detalle del log; incluso por
módulo: all ,tdb ,printdrivers ,lanman ,smb ,rpc_parse ,rpc_srv ,rpc_cli ,passdb
,sam ,auth ,winbind ,vfs ,idmap ,quota ,acls ,locking ,msdfs ,dmapi ,registry
map to guest : le indica al servidor la acción a tomar cuando falla el inicio de
sesión de un usuario. inútil en security = share o server
max log size : tamaño máximo del log
message command : le indica al servidor la acción al recibir un mensaje tipo
WinPopup
netbios name : nombre netbios del servidor samba
null passwords : permite el acceso a usuarios con contraseñas vacías
panic action : comando a realizar al caerse smbd o nmbd
prefered master o preferred master : indica si samba es preferencialmente
maestro en el grupo de trabajo
security : determina cómo los clientes responden el logeo (usuario y
contraseña) según el "security mode bit" enviado en las negociaciones de
protocolo.
o share : clientes se registran al solicitar un recurso (permite ver la lista de
recursos para visitas)
o user : clientes se registran al solicitar la lista de recursos o solicitar un
recurso
o domain : idéntico al anterior, pero los datos de registro se consultan con
controlador de dominio
o server : idéntico al anterior, pero los datos de registro se consultan con
servidor SMB
server string : texto desplegado como nombre completo del servidor
USERSHARES
Parámetros de configuración aplicables a las carpetas compartidas a través de nautilus



usershare allow guests : las carpetas compartidas serán accedidas por los
usuarios sin registrarse
usershare max shares : número máximo de carpetas compartidas por usuario
usershare owner only : permite compartir sólo las carpetas pertenecientes al
usuario
44
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011



usershare path : ruta donde se almacenan las carpetas compartidas por cada
usuario (los permisos de la carpeta indicada controlan quienes pueden compartir
a través de este medio)
usershare prefix allow list : lista separada por comas de las rutas absolutas
permitidas para compartir (incluye directorios dentro de estas rutas)
usershare prefix deny list : lista separada por comas de las rutas absolutas no
permitidas para compartir (incluye directorios dentro de estas rutas)
RECURSOS
























administrative share : recurso administrativo. creado por defecto en sistemas
MS. Por Ejemplo: C$ , D$ , IPC$.
admin users : lista de usuarios con total permiso sobre los recursos (no aplica
si secury = share)
browsable o browseable : define si el recurso es apreciable en la lista de
recursos del servidor
comment : permite definir un comentario aplicado al recurso, desplegable en los
recursos de toda la red; a través de net view o de smbclient
create mode o create mask : permite restringir los permisos de los
archivos/directorios creados en un recurso a través de una máscara de permisos
force create mode : permite aplicar permisos a los archivos/directorios creados
en un recurso
directory mode o directory mask : similar a create mode o create mask,
aplicado a directorios
force directory mode : similar a force create mode, aplicado a directorios
directory security mask : mascara de permisos aplicado a clientes Windows
NT.
group o force group : grupo utilizado como gid del usuario conectado
user o force user : usuario utilizado como uid del usuario conectado
guest ok : permite acceder a un recurso sin identificarse
only guest o guest only : permite acceder sólo a usuarios sin identificación.
requiere el parámetro "guest ok"
allow hosts o hosts allow : lista de equipos permitidos de acceder al recurso.
puede aplicar como global
deny hosts o hosts deny : lista de equipos no permitidos de acceder al
recurso. puede aplicar como global
invalid users : lista de usuarios no permitidos de acceder al recurso
only user : permite el acceso sólo a los usuarios en la lista user
directory o path : ruta del recurso indicado
read list : lista de usuarios que tienen acceso de sólo lectura
read only o writeable : no se permite crear ni modificar los archivos/directorios
del recurso
user , users o username : usuarios con los cuales se probará la contraseña
entregada
valid users : lista de usuarios permitidos de acceder al recurso
invalid users : lista de usuarios no permitidos de acceder al recurso
writable o writeable : permite escribir/modificar en el recurso indicado
45
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
DE IMPRESIÓN
 print ok o printable : clientes pueden enviar trabajos de impresión a la carpeta
indicada
 printer o printer name : nombre de la impresora a la cual serán enviados los
trabajos
Como hemos indicado , luego vamos a ver la gestión de SAMBA mediante SWAT , pero
a modo de referencia se puede usar SAMBA mediante consola, por poner ejemplos.
Compartir un directorio
Primero crearíamos el directorio
# mkdir /home/comun
Y le daríamos permisos
# chmod 755 /home/comun
Permisos totales al propietario y de lectura y ejecución al grupo y otros.
Después editaríamos el smb.conf y añadiríamos al final
[comun]
Comment = directorio compartido de la empresa
Path = /home/común
Public = yes
Writable = no
[Comun] es una etiqueta
Para acceder a un recurso compartido varia la forma , dependiendo si lo queremos
hacer desde un windows o un linux.
En windows :
\\192.168.1.10\comun
En Linux
Smb://192.168.1.10/comun
Reiniciamos el servicio de SAMBA
# restart smbd
46
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Si bien hemos eliminado el archivo original , es bueno leer previamente las líneas
comentadas o en su defecto leer la documentación. Vemos que un requisito es que la
contraseña de admin esté en secrets.tdb , para ello usaremos un comando de SAMBA
y el password será el mismo que el de OpenLDAP.
# smbpasswd -W
Podemos hacer una prueba para cerciorarnos si todo va correctamente. Para ello
ejecutamos lo siguiente:
# smbclient –L hydra
Estamos intentando loguear en SAMBA como usuario anónimo en el servidor ( Hydra )
Y la salida tiene que poner , Annonymous login succesful , si tenemos esa salida
podemos continuar , sino es así, hay que revisar el smb.conf de SAMBA.
47
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
A continuación creamos carpetas y le damos los permisos para los perfiles de los
usuarios.
# mkdir –v –m 777 /var/lib/samba/profiles
# mkdir –v –m 777 /var/lib/samba/netlogon
De esta forma también se pueden crear carpetas y a la vez asignarle los
permisos ( igual que si hacemos chmod , en vez de rwx ) de ello se encarga el
atributo –m , la –v como en la mayoría de comandos es el modo verbose ,
simplemente cuando creamos la carpeta lo confirma ( sin la –v simplemente el terminal
no devuelve nada en caso de éxito )
Igual que añadimos los schemas LDIF que vienen con ldap-utils , SAMBA con tal
de que se integre con LDAP también tiene sus propios schemas. A continuación vamos
a cargar esos esquemas que vienen en los paquetes de SAMBA ( en samba-doc
concretamenete ) que hemos instalado anteriormente.
Vienen comprimidos en .gz , por lo que tendremos que descomprimirlos y
posteriormente transformarlos al “idioma” de LDAP , el LDIF, ya que originalmente son
.schema.
Primero descomprimimos el archivo que aloja los esquemas de SAMBA,
previamente copiamos el .gz.
48
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
# cp /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz
/etc/ldap/schema/
# gzip –d /etc/ldap/schema/samba.schema.gz
Con la opción –d , del gzip, descomprimimos.
En la captura de pantalla podemos ver los schemas antes de convertirlos a LDIF
Para convertir los ficheros de .schema a .ldif , el paquete que instalamos de ldap-utils
posee una herramienta para dicha labor, el comando slapcat.
Para no ir de uno en uno , vamos a crear un archivo donde incluimos todos los
esquemas y haremos que ejecute slapcat en todos los schemas de ese fichero.
Para ello creamos el fichero contenedor de schemas.
# nano /etc/ldap/schema/conversor.conf
Y ponemos el siguiente código
include
include
include
include
include
include
include
include
include
include
include
include
include
/etc/ldap/schema/core.schema
/etc/ldap/schema/collective.schema
/etc/ldap/schema/corba.schema
/etc/ldap/schema/cosine.schema
/etc/ldap/schema/duaconf.schema
/etc/ldap/schema/dyngroup.schema
/etc/ldap/schema/inetorgperson.schema
/etc/ldap/schema/java.schema
/etc/ldap/schema/misc.schema
/etc/ldap/schema/nis.schema
/etc/ldap/schema/openldap.schema
/etc/ldap/schema/ppolicy.schema
/etc/ldap/schema/samba.schema
Y usamos el conversor slapcat
# slapcat -f /etc/ldap/schema/conversor.conf -F /home/server –n0 –s
“cn={12}samba,cn=schema,cn=config”>/home/server/cn=samba.ldif
Nos ha creado un archive samba.ldif que debemos editar
# /home/server/cn\=samba.ldif
49
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Debemos editar el principio del documento de tal manera.
Original
dn: cn={12}samba,cn=schema,cn=config
...
cn: {12}samba
Definitivo
dn: cn=samba,cn=schema,cn=config
...
cn: samba
Y al final del archivo de configuración borrar las 7 últimas líneas.
structuralObjectClass: olcSchemaConfig
entryUUID: 99e797a8-07cb-102f-8c5c-739a8467e607
creatorsName: cn=config
createTimestamp: 20100609043122Z
entryCSN: 20100609043122.188753Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20100609043122Z
Como hemos hecho con los anteriores , hay que cargar el LDIF que hemos , en este
caso , convertido.
# ldapadd –Y EXTERNAL –H ldapi:/// -f /home/server/cn\=samba.ldif
La salida tiene que ser como la siguiente:
Podemos hacer otra prueba de cómo va la instlación buscando el único usuario definido
que es admin.
# ldapsearch –Y EXTERNAL –H ldapi:/// -D cn=admin,cn=config –b cn=config
–W olcDatabase={1}hdb
50
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y la salida debe ser
El comando lo que hace es una búsqueda del usuario admin dentro de la base de datos
y devuelve todos sus atributos, además de la configuración de la base de datos. Lo
marcado significa que ha realizado 2 búsquedas , que se han realizado de forma
satisfactoria ( el 0 de succes ).
En este punto la Base de datos de OpenLDAP está operativa.
51
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Antes de integrar SAMBA con LDAP vamos a hacer una copia de seguridad de
nuestra base de datos.
# slapcat –l backup.ldif
Donde – l indica que es un archivo en formato .ldif
Vamos a hacer un backup también del archivo de configuración que vamos a
modificar, el smbldap.conf
Vamos a usar para integrar SAMBA con LDAP un script en PERL que viene en el
paquete de smbldap-tools.
Primero lo descomprimimos
# gzip –d /usr/share/ doc/smbldap-tools/configure.pl.gz
Ejecutamos el script
# perl /usr/share/doc/smbldap-tools/configure.pl
52
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Si pulsamos ENTER nos pone la opción sugerida.
La primera opción es la ruta del archivo de configuración de SAMBA (
/etc/samba/smb.conf )
ENTER
Este es la ruta de las herramientas de SAMBA y LDAP
En las sucesivas le damos siempre a ENTER excepto en las siguientes opciones:

logon home ( un punto “.” )

logon path ( un punto “.” )

ldap master bind password ( ponemos el pasword de OpenLDAP )

ldap slave bind password ( ponemos el pasword de OpenLDAP )
Nos preguntan el nombre del dominio, si queremos home de usuario (%u ) y el
path, los permisos ( 700 ) , los scripts de logon ( allusers.bat , es un script que facilita
mucho la gestión de usuarios ) , cuanto tiempo es válido un password ( 45 dias ), los
sufijos de los grupos ( los dejamos en inglés por compatibilidad ) , IP y puerto del
servidor y esclavo , así como sus passwords.
53
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Aquí coge el SID del servidor que indica que se puede sacar con la instrucción
„net getlocalsid Hydra‟ , la encriptación de las contraseñas, los números de usarios y
grupos y el nombre de dominio a añadir en los e-mails.
Una vez terminado el script hace un backup de los antiguos archivos de configuración y
los sobreescribe , estos son:
/etc/smbldap-tools/smbldap.conf
/etc/smbldap-tools/smbldap_bind.conf
# net getlocalsid hydra
Aquí vemos que la información de SID coincide.
Aquí termina el script de PERL para la configuración de SAMBA.
Podemos probar a ver si va todo correctamente, para ello usamos smbclient.
# smbclient –L localhost
Con este comando hacemos una búsqueda en localhost de todos los servicios que se
están compartiendo con SAMBA. La salida debe ser parecido a lo siguiente:
54
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Seguimos avanzando , esta vez creando la estructura del servidor ayudándonos de uno
de los paquetes de SAMBA , y el comando populate.
Lo que hace el populate es “llenar” la estructura de OpenLDAP para ser operativa , y lo
hace con el siguiente contenido:





Base DN: dc=empresa,dc=com
Contenedor (OU= Unidad Organizativa ) para las cuentas Unix/Samba:
ou=Users
En el contenedor para los Usuarios, se crearán por defecto los usuarios: root y
nobody los cuales serán mapeados al usuarios Administrador y Guest Samba
respectivamente.
Contenedor (OU= Unidad Organizativa ) para los Grupos Unix/Samba:
ou=Groups
En el contenedor de los Grupos, se crearán por defecto los Grupos
Predeterminados de un dominio Samba: Domain Admins, Domain Users,
Domain Guests, Domain Computers.
Contenedor (OU= Unidad Organizativa ) para las cuentas de Computadoras
Windows: ou=Computers
Contenedor (OU= Unidad Organizativa ) para los mapeos de Cuentas Unix a
Cuentas Samba/Windows (SID): ou=Idmap
Con lo que queda la siguiente estructura de directorios:
55
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
El populate lo hacemos de la siguiente manera:
# smbldap-populate
Vemos el SID que debe de coincidir con el que tenemos , y como va añadiendo y
dando forma al directorio de LDAP.
Al final nos pide password para root de SAMBA.
Vamos a seguir una serie de pasos para verificar como ha quedado SAMBA+LDAP
Podemos ver que usuarios hay en este momento.
# pdbedit -L
56
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Vemos a root y nobody. Los usarios deben estar mapeados a una cuenta UNIX con una
ID. Así el usuario de UNIX root tiene el UID 0 y el usuario SAMBA nobody está
mapeado a una cuenta UNIX con UID 65534.
Si quisieramos ver la info de un usuario
# pbdedit –vL root
La cuenta root que se creo en el directorio LDAP, es la que se usará como usuario root
local y como administrador de dominio, se debe de cambiar la ruta al $HOME de root y
asignarle el shell /bin/bash.
# smbldap-usermod -d /root -s /bin/bash root
Para cambiar la contraseña de la cuenta root
# smbldap-passwd root
Podemos verificar el mapeo de los usuarios. En un sistema controlador de
dominio basado en Samba, las cuentas de usuario de Windows/Samba son mapeadas a
57
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
una cuenta de usuario Unix, es decir, se mapea el SID de la cuenta Windows/Samba
con el UID (User ID) de la cuenta Unix, así mismo se mapean los grupos
Wwindows/Samba a grupos Unix a través del SID del grupo Windows/Samba al GID
del grupo Unix.
Para hacer eso nos valemos del comando net.
# net groupmap list
Cuando realizamos el llenado el directorio con smbldap-populate se creo la
cuenta de usuario Windows de nombre root mapeada al administrador del dominio,
podemos probar esa conexión:
# smbclient //localhost/netlogon –U root
Ponemos a nuestro usuario “ server “ como administrador del PDC ( Controlador del
Dominio )
$ smbldap-groupmod –m „server‟ „Administrators‟
Comprobamos que se ha añadido correctamente
$ ldapsearch –xLLL –b “dc=empresa,dc=com” uid=server
Vemos que se ha logueado correctamente y hemos salido ( con quit ).
58
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
9.3 Mapeo de unidades
Como mapear una unidad de disco en red al directorio home en el servidor
En esta sección veremos como conectar una unidad de disco en red en un cliente
de dominio windows, esta funcionalidad permite que los usuarios del dominio puedan
acceder a sus archivos personales que se encuentran en el directorio $HOME del
servidor Samba desde cualquier lugar en la red.
Hay dos formas de mepear el directorio $HOME a una unidad de disco en los
clientes windows, uno es hacerlo de forma global para todos los usuarios del dominio y
la otra es de forma individual por cada usuario.
Para el método global debe definir el parámetro logon home y logon drive en la
sección [global] del archivo de configuración de samba /etc/samba/smb.conf, por
ejemplo:
logon home = \\PDC\homes
logon drive = H:
Si no desea definir el logon home y logon drive de forma global use como valor
una cadená vacía, por ejemplo:
logon home =
logon drive =
Para definir el logon home de forma individual para un usuario del dominio puede usar
el comando smbldap-usermod con el parámetro -C ó --sambaHomePath, y para
definir el logon drive de forma individual use el parámetro -D o --sambaHomeDrive, por
ejemplo:
root@pdc:~# smbldap-usermod -C '\\PDC\jperez' -D 'H:' jperez
Use el comando pdbedit para verificar los cambios:
root@pdc:~# pdbedit -Lv jperez
Unix username:
jperez
NT username:
jperez
Account Flags:
[U
]
User SID:
S-1-5-21-1482872308-118742792-2317756604-3018
Primary Group SID: S-1-5-21-1482872308-118742792-2317756604-513
Full Name:
Juan Perez
Home Directory:
\\PDC\jperez
HomeDir Drive:
H:
Logon Script:
Profile Path:
Domain:
EXAMPLE
Account desc:
Workstations:
Munged dial:
Logon time:
0
Logoff time:
never
Kickoff time:
never
Password last set: Mon, 21 Mar 2011 21:26:39 CST
59
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Password can change: Mon, 21 Mar 2011 21:26:39 CST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours
: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Inicie una nueva sesión con el usuario jperez y use el Explorador de archivos para
verificar que la unidad de disco H: esta conectada al directorio $HOME del servidor.
60
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
10. Instalación de SWAT
Instalación
# apt-get install swat
Que es swat
Acrónimo del ingles Samba Web Administration Tool, Herramienta de
Administración Web de Samba) es una herramienta que permite la configuración
gráfica de Samba.
Acceso web
Accedemos escribiendo en nuestro navegador web localhost o ip_del_servidor
Acceso root
Para entrar en swat como superusuario y poder acceder a las opciones avanxzadas
debemos entrar como usuario root
61
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Opciones generales
Las opciones básicas (las únicas que pueden ver los usuarios normales y que también
aparecen cuando entramos como root) son:
* HOME: Es la página principal y desde la que podemos acceder a la documentación
de samba. Nos muestra una serie de enlaces para acceder a las distintas páginas con
la documentación sobre los demonios, los archivos de configuración, etc.
* Status: En esta pagina podremos ver a los clientes conectados, los archivos abiertos
así como los recusos compartidos. Si hemos entrado como root además podremos
detener o reiniciar los demonios smbd, nmbd y winbindd, individualmente o todos a
la vez, y desconectar clientes.
* View: Muestra los parámetros principales de global, printers y print $ del archivo
smb.conf, si hacemos clic en "full view" nos mostrará toda la información referente a
cada apartado
* Password: Esta página nos permite cambiar nuestro password. Si entramos como
super usuario además nos permitirá gestionar usuarios, añadir usuarios, eliminar
usuarios, cambia la contraseña, deshabilitar y habilitar usuario.
Las opciones avanzadas (las que sólo son accesibles si entramos como super usuario)
son, además de las opciones básicas:
62
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
* Globales: Desde aquí podremos configurar todas las opciones de nuestro servidor
samba: opciones básicas, opciones de seguridad, de acceso, de protocolo, de
búsqueda, de WINS, de registros (logs) y opciones de winbind. Si hacemos clic en
"Advanced" veremos muchas más opciones para configurar cada apartado y
aparecerán más apartados como opciones de impresion, de ldap, etc.
Una vez cambiamos las opciones que nos interesan pulsamos sobre "Commit
Changes"
* Shares: En esta pagina es donde crearemos, modificaremos y eliminaremos los
recursos compartidos. Añadiendo usuarios y hosts válidos, inválidos, especificando
los permisos (lectura, escritura, etc). Al igual que en "Globales", si hacemos clic en
"Advanced" veremos muchas más opciones de configuración.
* Printers: Aquí podremos añadir, eliminar y modificar impresoras, tanto con
opciones básicas como con opciones avaçades.
* Wizard: Este apartado nos permite configurar parámetros por defecto para el tipo
de servidor, para el servidor wings y para compartir los directorios home
63
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Por ejemplo , esta es la sección de parámetros globales de SWAT.
O en view podríamos ver el smb.conf en forma resumida o completa:
64
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
11. Instalación PHPLDAPADMIN
¿QUÉ ES PHPLDAPADMIN?
Sirve para la administración por medio de una interfaz gráfica de usuario el cual
agiliza las tareas, realizar búsquedas, crear, suprimir, copiar y corregir entradas de
LDAP. Puedes incluso copiar entradas entre los servidores.
LICENCIA
Es distribuido bajo los términos de esta "GPL General Public License".
REQUERIMIENTOS MÍNIMOS DE HARDWARE Y SOFTWARE
HARDWARE:
Son los mínimos necesarios para realizar la instalación del sistema operativo con
entorno gráfico.
Obtención del paquete
wget https://launchpad.net/~ubuntu-securityproposed/+archive/ppa/+build/1744905/+files/phpldapadmin_1.2.0.51ubuntu1.10.04.1_all.deb
65
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Instalamos las dependencias
sudo apt-get install apache2 apache2-mpm-prefork apache2-utils apache2.2-bin
apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libaprutil1-dbd-sqlite3
libaprutil1-ldap php5-common php5-ldap ssl-cert
Instalamos el paquete
dpkg -i phpldapadmin_1.2.0.5-1ubuntu1.10.04.1_all.deb
Hacemos un enlace blando
sudo ln -s /usr/share/phpldapadmin /var/www/phpldapadmin
Vamos a hacer que PHP apunte a nuestro dominio
Editamos el config de PHP
# nano /var/www/phpldapadmin/config/config.php
Hay que buscar estas lineas
$servers->setValue('server','base',array('dc=empresa,dc=com'));
$servers->setValue('login','bind_id','cn=admin,dc=empresa,dc=com');
Guardamos y reiniciamos apache
/etc/init.d/apache2 restart
Para entrar en PHPLDAPADMIN ponemos:
la ip del server/phpldapadmin
Ponemos la pass.
Este es el aspecto del entorno gráfico de gestión de OpenLdap usando
phpLDAPadmin.
66
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Esto sería el menú principal de gestión.
Este para seleccionar una cuenta y agregar un usuario
67
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y vamos rellenando los datos que nos solicita
Si en contraseña pulsamos en comparar clave sale un popup de Javascript para ver que coinciden y no
tengamos errores posteriormente
Una vez cumplimentados todos los datos necesarios nos hace un resumen previamente a ejecutarlo
68
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
En el caso de crear una cuenta de SAMBA nos pide otro tipo de datos
69
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
70
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
12. Servidor de impresión CUPS
Instalación:
El servidor de impresión cups viene instalado por defecto en la ISO del server.
Configuración:
Lo primero que debemos realizar es crear una copia de seguridad del fichero de
configuración del servidor de impresión CUPS, este fichero se aloja en
/etc/cups/cupsd.conf
cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.original
Empezamos con la configuración de cups. Para ello editamos cupsd.conf y agregamos
las siguientes líneas:
#nuestro servidor tiene asignada la ip 192.168.1.10
Listen 192.168.1.10:631
Esto lo hacemos para poder acceder al servidor de impresión ya sea en local con
acceso remoto desde otro equipo.
71
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
También en los bloques "Location/", "Location/admin" y "Location/admin/conf", a
continuación de la línea "Order Allow Deny" agregamos la siguiente linea
Allow all
Esta linea la agregamos para permitir acceso total a cups aunque podríamos ser
mas estrictos escribiendo solo las ip's que queramos.
En location escribimos allow all para que cualquier equipo tenga acceso web
En location admin para que ciertos equipos o todos puedan administrar cups
Y en admin conf para que ademas de acceder estos equipos, puedan también tocar la
configuración.
Guardamos(si trabajamos con nano ctrl + o y cerramos ctrl + x ) y reiniciamos el
servicio
72
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
/etc/init.d/cups restart
Hechos estos cambios ya podremos acceder remotamente al servidor de impresión.
Acceso desde un cliente
Para ello escribimos en el navegador web http://192.168.1.10:631
Instalacion de una impresora en el server
Para ello nos dirigimos a Añadir impresora
Donde deberemos loguear con un usuario del grupo de administradores de nuestro
servidor.
A continuación seleccionamos la impresora según se adapte a nuestras necesidades.
73
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Seleccionamos el puerto donde se encuentra nuestra impresora
Escribimos su nombre, descripción y ubicación y muy importante es compartirla.
74
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Una vez llegado hasta aquí pasamos a la instalación de los controladores.
Seleccionamos la marca
Y el modelo
75
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y configuramos tipo de papel, color y resolución.
Pestaña de administración
Impresoras:
Añadir impresoras: Agrega nuevas impresoras al servidor de impresión
Encontrar nuevas impresoras: busca nuevas impresoras
Administrar impresoras: desde aquí podemos administrar las impresoras instaladas
en el servidor, es decir configurar las impresoras instaladas.
76
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Clases:
El concepto de clase en CUPS es una generalización de la idea de impresora, puede
ser entendido como un conjunto de impresoras. Por ejemplo, la clase Láser puede
entenderse como un grupo de impresoras láser entre las que CUPS distribuirá el
trabajo según el nivel de ocupación de cada una para optimizar la tarea de impresión.
Evidentemente este recurso está diseñando para su implementación en
instalaciones con un elevado nivel de exigencia. Pensemos por ejemplo en las oficinas
centrales de una gran compañía donde el flujo de trabajos de impresión sea
constante. El departamento de marketing o el de contabilidad pueden tener
diferentes necesidades de impresión y el volumen de carga puede no estar soportado
por un único dispositivo de alto rendimiento. En estos casos, se puede definir una
clase de impresoras formada por varios dispositivos físicos. De cara a cada usuario, se
verá como una única impresora, pero cuando CUPS reciba los trabajos, los distribuirá
entre las impresoras de la clase tratando siempre de equilibrar las cargas de
impresión.
Trabajos:
desde aquí podemos ver la actividad de la cola de impresión, podemos acceder a un
trabajo y moverlo a otra cola o pararlo, etc, etc
77
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Servidor:
Desde aquí podemos retocar la configuración del servidor ya sea del fichero de
configuración (/etc/cups/cupsd.conf) como también podemos ver las accesos al
servidor y los errores que han ocurrido.
Instalación en una máquina cliente Linux de la impresora previamente instalada, en
el server
En el cliente nos dirigimos al menú Sistema> Administración> Impresión.
En esta pantalla tendremos que seleccionar el icono Añadir. Entonces comenzará un
proceso de búsqueda de las impresoras que detecte en el equipo. Al final de este
proceso se nos abrirá el cuadro Impresora nueva que vemos en la figura.
78
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
En anfitrión seleccionamos la dirección en donde se aloja nuestra impresora, en este
caso se aloja en el servidor de impresión CUPS.
Seleccionamos la marca y modelo y descargamos su controlador
79
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
A continuación, aparecerá un cuadro en el que nos pedirá el nombre mediante el cual
queremos que se reconozca la impresora en el sistema. De manera opcional, también
nos pedirá una ubicación y una descripción de la impresora. Después de especificar
los datos anteriores, tendremos que hacer clic en Aplicar y así concluirá el proceso de
instalación.
Dando como resultado en impresoras del cliente.
80
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Finalmente, el sistema nos propondrá imprimir una página de prueba para que
podamos estar seguros de que la instalación se ha realizado correctamente.
Imprimir desde la máquina cliente y observa la cola al server
Creamos un fichero de prueba para poder imprimirlo, le damos a imprimir y
seleccionamos nuestra impresora del servidor de impresión
Nos dirigimos a la web del servidor de impresión y seleccionamos Administrar
impresoras
Luego seleccionamos la impresora.
81
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y finalmente vemos la cola de impresión del servidor
Donde desde aquí podemos cancelar impresiones, mover trabajos a otras impresoras
o colas, etc, etc.
Instalación en una máquina cliente Windows de la impresora previamente
instalada, en el server
Nos dirigimos a la maquina cliente y en panel del control → impresoras → agregar
impresoras
82
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Seleccionamos impresora en red
83
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y conectar impresora en internet o en su red domestica u organización
Para conocer la dirección URL nos dirigimos al servidor de impresión y en Administrar
→ Administrar impresoras → (nuestra impresora) → y copiamos la dirección que
figura en nuestro navegador
Cargamos los controladores
84
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
y finalizamos
85
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Prueba de impresion desde la máquina cliente y observa la cola al server
Creamos un fichero y seleccionamos la impresora de nuestro servidor de impresión
Los trabajos Impresora_lexmark1 y Impresora_lexmark3 son trabajos de un
cliente de Linux y los tres últimos restantes son trabajos de un cliente de windows
Lo podemos comprobar con el nombre de usuario.
86
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
13. Instalación de WEBMIN
DEFINICIÓN
Webmin es una interfaz web para administrar y configurar un sistema Unix
usando cualquier navegador que soporte tablas, formularios y Java para el módulo de
administración de archivos.
Consta de un simple servidor web y un sinfín de scripts Perl y no usa módulos externos.
Se puede accesar remotamente via consola y web. Tiene infinidad de
herramientas que permiten la administración total de servidores, servicios y
herramientas indispensables para una red grande o pequeña.
Las principales características de este entorno administrativo son:
- Cambio de contraseñas de usuarios
- Planificación de copias de seguridad de directorios importantes
- Asignación y administración de cuotas de disco
- Configuración de Samba
- Administración y configuración de servidores POP, servidor web Apache, Servidor
Proxy Squid, etc.
- Análisis de históricos
- Monitorización del ancho de banda
87
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
INSTALACIÓN
Como webmin no es un paquete estándar y no está suscrito a los canales
oficiales de Ubuntu hay que realizar la instalación de forma „manual‟ se recomienda
descargar el paquete de la página oficial de webmin.
http://www.webmin.com/
Descargar el paquete debian
Actualizamos la información de los repositorios (fundamental antes de instalar cualquier
aplicación):
# sudo apt-get update
Instalamos una serie de paquetes que nos hacen falta para la instalación de Webmin y
para que se configure con SSL:
sudo aptitude install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime
libio-pty-perl libmd5-perl
Nos posicionamos en nuestra home e instalamos webmin
# sudo dpkg -i webmin_1.500_all.deb
COMO SE ACCEDE
Una vez instalado podemos acceder a la interfaz web de Webmin usando un
navegador y escribiendo la dirección IP del equipo donde está instalado seguido del
puerto donde está escuchando, por defecto, el 10.000. Eso sí, debemos estar atentos
porque en vez de usar el protocolo HTTP, usaremos el HTTPS.
https://nombre_equipo:10000/
( o direccion ip)
En teoría, esto ya está listo. Sin embargo, nos encontraremos con la siguiente
advertencia si accedemos desde Firefox:
Modificaciones del fichero /etc/miniserv.conf
Es el fichero de configuración de miniserv (un servidor web muy senzillo
programado en Perl y que es usado por Webmin)
88
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
1. Encriptación de Webmin
Algunas versiones de OpenSSL y perl en los sistems RedHat pueden generan
conflictos con el módulo de Net::SSLeay de perl (perl-Net-SSLeay) que necesitamos
para ejecutar Webmin en modo del SSL se ha decidido encriptar haciendo uso de
STunnel, por ello se han descrito dos formas de llevar a cabo la encriptación del
servicio Webmin.
A) Módulo SSLeay
Para lograr que webmin acepte conexiones de foma segura vamos a requerir de
las librerias OpenSSL y del módulo específico PEARL con las funciones específicas SSL
La librerias OpenSSL suelen estar instaladas por defecto en el servidor, pero las
funciones de PEAR debemos intalarlas a través de yum mediante el comando:
# aptitude install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime
libio-pty-perl libmd5-perl
Para verificar si el sistema dispone ya de las librerias de pear, podemos usuar el
comando siguiente:
perl -e 'use Net::SSLeay'
Si este commando no devuelve ningún error es que están correctamente
intaladas en el servidor.Si webmin ya está instalado en nuestro sistema, solamente
tenemos que acceder a él y activar la opción ssl.También podemos realizar dicha
activación a través del archivo de configuración /etc/webmin/miniserv.conf.
ssl = 1
B) STunnel
El programa de STunnel puede convertir a encriptaciones SSL cualquier servicio
de red, tal como POP3 o IMAP - o Webmin.
Creamos un túnel nuevo en el puerto 6714 llamado “ssl-webmin” que se conecta al
puerto 10000 de localhost. La opción de "SSL certificate and key file" se ha fijar para
utilizar el CERT de Webmin, y todas las otras opciones se han dejado sus defectos.
Una vez el túnel está activo se ha limitado el acceso a Webmin a localhost, de
esta forma solamente Stunnel podrá acceder a webmin y se ha configurado webmin
para que utilice el túnel creado anteriormente.
Estos cambios se reflejan en el fichero /etc/webmin/miniserv.conf
inetd_ssl = 1
bind = 127.0.0.1
89
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
2. Ajuste de parámetros
Se ha substituido el nombre de la máquina “llwa650” por “xxx” con la intención
de no proporcionar información privilegiada innecesaria. El valor “xxx” puede
modificarse si se altera la siguiente deirectiva del fichero.
/etc/webmin/miniserv.conf: host = xxx
Además se ha cerrado el puerto UDP 10.000 que se encontraba abierto y que no estaba
siendo utilizado. Esta operación se ha realizado eliminando la siguiente línea del fichero
/etc/webmin/miniserv.conf:
listen=10000
3. Puertos Alternativos
Para que el servicio webmin no sea facilmente localizable debemos cambiar el puerto
en el que el daemon está escuchando, por ejemplo pongamoslo en el 6714.
Hemos de cambiar las siguientes directrices del archivo de configuración
port=6714
4. Cuentas del sistema
Otro cambio importante es denegar el acceso al usuario root o por lo menos root
de Webmn no se autentifique con la cuenta del sistema, sino que tenga un contraseña
diferente del usuario root de Linux.
adminwebmin:$1$XXXXXXXX$W7VCWj0o4YwbA3wN.fXpy/:0
Finalmente configuramos webmin para el uso del protocolo https a través de un tunel
ssl
5. Filtrado de Ips
Se recomienda filtrar las Ips que puedan conectarse a webmin, esta configuración
puede resultar engorrosa dependiendo si el equipo debe administrarse remotamente
por lo que se deja abierta la decisión de realizarla.
6. Reinicio y aplicación de cambios
/etc/webmin/stop
/etc/webmin/start
90
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
PRINCIPALES POSIBILIDADES QUE OFRECE
El programa no está limitado a lo que los desarrolladores del mismo quieran, sino
que es modular. Esto quiere decir que podemos instalar nuevos módulos, los cuales
pueden ser descargados del mismo sitio, en la sección Third-Party Modules.
Aún así, para no complicarla, por defecto viene una extensa cantidad de modulos que
normalmente suelen venir cargados en casi cualquier distribución Linux.
Módulos destacados:
 Apache WebServer: Administrar las directivas y características del Servidor
Web Apache.
 Bandwidth Monitoring: Podemos generar reportes del tráfico que provocamos
en una conexión (Internet, Red, etc) de modo que si tenemos un ISP que nos
cobra por tráfico, con esto tenemos un reporte real de nuestro consumo.
 Bootup and Shutdown: Se logra sacar todos los servicios que no se usan, y
encima puede acceder al código que ejecutan.
 Change Password: Cambiar los passwords de los usuarios.
 DHCP Server: Para todos aquellos que tengan una red, y necesiten tener un
servidor DHCP (para que cada PC que se conecte a la red, tenga una IP asignada
automáticamente), aquí tenemos un administrador muy sencillo.
 Disk Quota: Si estamos en una red en donde hay muchos usuarios y estos
requieren de tener una cuota asignada en disco (o quizás, para un servidor
web/de archivos), este es el complemento ideal. Primero le creamos un usuario,
y luego le asignamos la cuota desde aquí.
 Disk and Network FS: Aquí tenemos acceso a toda la información del disco
(similar al comando df), representado gráficamente y con información extendida.
 File Manager: Para todo aquel acostumbrado a usar un cliente FTP, este módulo
les será muy familiar, ya que permite asignar permisos de las carpetas con una
interfase gráfica muy sencilla pero útil.
 GRUB Boot Loader: Aquí tenemos un módulo para administrar todo y agregar
cada detalle que sea necesario al grub
 SSH Server: Un módulo para administrar el servidor de SSH que es el
complemento ideal para aquellos que quieran compartir archivos de forma
segura, evitando el conocido FTP, y a su vez brindando una terminal mucho
mejor que Telnet.
 Shorewall Firewall: Shorewall es un Firewall, lo bueno que tiene es que le
podemos configurar de todo. El punto es que desde el módulo tenemos acceso
fácil a cada una de sus funciones, y podremos dejar nuestra computadora bien
asegurada.
 Software Packages: Con esto lograremos instalar cualquier paquete sin
ninguna complicación. Buscan, encuentran, instalan.
91
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Desarrollo de algunas aplicaciones
Creación de Usuarios
El usuario administrador por defecto se crea durante la instalación, luego este
podrá crear otros usuarios. Webmin nos permite la customizacion del perfil del usuario,
esto puede ser de gran utilidad si precisamos que un usuario raso realice algunas
tareas administrativas determinadas. Permite también elegir las opciones de skin e
idioma para el usuario.
Asegurando Webmin
Ya que Webmin corre con privilegios de root es sumamente importante que este
efectivamente asegurado antes de permitir conexiones a través de Internet.
Históricamente Webmin ha sido suficientemente seguro, pero hubo vulnerabilidades
descubiertas en el pasado y las habrá en el futuro. Cualquier herramienta que corra con
privilegios de root tiene el potencial de ser explotada por alguien con malas intenciones
permitiéndole tomar control irrestricto de la maquina.
Para tener el menor riesgo posible tenemos que tomar una serie de precauciones
a) Política de contraseñas.
Número mínimo de caracteres, no utilizar palabras que puedan aparecer en un
diccionario, incluir al menos un número en la contraseña, promover cambios frecuentes
de contraseña, timeout por login fallido.
b) Control de acceso por direcciones IP.
Webmin tiene su propio servidor Web, llamado miniserv.pl, al cual se le puede
definir que grupo de direcciones IP o nombres de Host se podrán conectar a el.
Podremos definir direcciones de red, direcciones IP de host o nombre de host. Seria
prudente permitir el acceso solo a direcciones confiables.
c) Habilitar SSL.
Webmin está basado en Web por lo tanto usa los protocolos normales para este
tipo de aplicaciones. Por defecto utiliza http, entonces, si vamos a acceder solo desde la
red local y tenemos un firewall protegiéndonos del exterior, no séria necesario utilizar
SSL. Ahora bien, si nuestro objetivo es acceder a Webmin desde Internet, encriptar la
conexión seria realmente necesario.
Webmin en si mismo tiene un modulo para instalar componentes de perl, si este
falla se puede bajar el tar e instalarlo de modo tradicional. Por ultimo habría que
habilitar SSL, esto se puede hacer desde Webmin mismo o, si somos extremadamente
precavidos y no queremos iniciar sesión en Webmin ni una vez en texto plano,
debemos habilitar manualmente SSL
desde el archivo de configuración de miniserv.pl (/etc/miniserv.conf) poniendo en uno
la opción “SSL=” que por defecto esta en cero.
Ejemplos de Configuración de Hardware
92
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuración del Filesystem.
Desde Webmin podemos editar particiones existentes o crear nuevas particiones.
Nos provee de una interfaz grafica para acceder a fdisk y al /etc/fstab. El manejador de
particiones nos da una lista de todos los discos accesibles y las particiones en ellos. En
la primera columna nos informa el tipo y ubicación del disco, el número de cilindros y el
modelo. La otra columna contiene la estructura de particiones del disco. Clickeando en
alguna de las particiones accedemos a los detalles de montaje de la partición.
Configuración del booteo de Linux.
Si se esta utilizando en Linux, Webmin permite editar los archivos de
configuración de Lilo y Grub. En la pagina principal de la configuración de booteo
veremos una entrada por cada sistema operativo reconocido por el bootloader
instalado. Si es una partición Linux nos permitirá acceder a la pagina “Edit Boot
Kernel”, aquí podremos seleccionar con que Kernel bootear y pasarle opciones si fuera
necesario.
Configuración General del Sistema
Manejador de procesos.
Al Manejador de procesos se accede clickeando en el icono “Running
Proceses”.Este nos dará una lista de todos los procesos corriendo en nuestra maquina
agrupados por jerarquía. Clickeando en un PID accederemos a información detallada
sobre el proceso, incluyendo el nombre del comando que lo lanzo, el uso del CPU, y el
nivel Nice.
El nivel Nice es una medida de cuanto tiempo de procesador va a permitírsele utilizar al
proceso en comparación con otros.
Programación de tareas con Cron.
El modulo Cron Jobs es utilizado para editar el Crontab. La configuración de Cron se
hace mucho más simple utilizando Webmin. Para crear una nueva tarea de Cron
clickeamos “Create New Cron Job”, esto abre una página que nos permite seleccionar el
usuario que ejecutara la tarea así como el comando que queremos ejecutar y los
parámetros que sean necesarios. Activaremos la tarea marcando la opción “Active”.
Instalación de paquetes de software.
El modulo Software Packages permite a el administrador instalar y actualizar
paquetes del sistema así como buscar los actualmente instalados y removerlos.
Aunque el proceso de instalación de paquetes pueda variar sustancialmente
dependiendo de que distribución estemos utilizando, Webmin enmascara la mayoría de
las diferencias y el uso general se hace bastante similar.
Para instalar un paquete simplemente se especifica la ubicación del paquete, ya
sea local o URL, y se clickea “Install” dejando al modulo el resto del trabajo.
Configuración de Servidores
93
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
BIND DNS
El modulo BIND nos lleva hacia una pantalla con dos secciones. La sección
superior está dedicada a las opciones globales de BIND (logging, control de acceso,
otros servidores DNS, y mas). La sección inferior nos muestra una serie de iconos, uno
por cada zona en la que es responsable BIND. Incluye todas las zonas Master, Slave,
Forward y Stub. Webmin puede simplificarnos notoriamente la configuración del
servidor BIND. Aunque a primera vista DNS sea un servicio simple, los archivos de
configuración de BIND son extremadamente confusos, por lo tanto es fácil cometer un
error y dejar nuestro servidor caído.
Para crear un DNS primario debemos, luego de haber ingresado a BIND, clickear
la opción “New Master Zone Record”, esto nos despliega el cuadro siguiente.
En este formulario debemos registrar el nombre del dominio, el Master Server
que se registrara como “nombre de host.dominio” y la dirección de mail de un
administrador quien será el punto de contacto en caso de problemas con el servidor.
Luego tendremos que agregar los registros para esta zona: tipo, dirección IP y time-tolive. Si fuera necesario deberemos crear un registro CNAME ingresando alias y dirección
real.
Entonces, restaría registrar un servidor de correo seleccionando registro mx e
ingresar en el formulario el nombre del registro, la dirección del mail server y su
prioridad.
8
Apache
El modulo Apache está dividido en varias secciones que representan los
diferentes aspectos de la configuración. En la página principal encontramos la
configuración global y los virtual servers que hallamos creado.
En Processes and Limits figuran las opciones que van a setear muchos de los limites
para Apache.
Generalmente se pueden dejar los defaults, pero en situaciones con gran carga o
baja memoria habría que modificarlos. En esta página se cubren dos tipos de limites. El
primero está relacionado con la cantidad de peticiones que serán aceptadas por el
servidor, y el segundo se refiere específicamente a los procesos y conexiones de
apache.
Apache puede correr en la modalidad “Process-per-connection” donde cada
cliente será atendido por un proceso httpd independiente.
En Networking and Addresses configuramos los puertos y direcciones IP
donde Apache escuchara.
El puerto donde Apache escucha por defecto es el 80 y en todas las
direcciones, generalmente es todo lo que se precisa. Ahora bien, es posible configurar
múltiples servidores Apache que corran en la misma máquina con diferentes
configuraciones globales en diferentes puertos o direcciones IP.
Cuando la opción Múltiple requests per connection está habilitada el servidor
soportara conexiones persistentes, lo que nos da una mejor performance y el usuario
se vera beneficiado.
En Keep-alive timeout definimos la cantidad de segundos que Apache esperara
por un nuevo pedido antes de cerrar la conexión.
94
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
La opción Addresses for name virtual servers es la dirección IP donde Apache
esperara conexiones hacia los virtual servers.
TCP send buffer size configura el tamaño del buffer de transmisión para
paquetes TCP.
Request timeout determina el número máximo de segundos que Apache
esperara por un pedido antes de que la conexión este establecida.
La siguiente es la sección Apache Modules de configuración global:
Apache es modular. Eso hace que el servidor básico sea una aplicación pequeña
al cual se le pueden agregar funciones cargando el modulo correspondiente. Esta
sección nos permite seleccionar que módulos vamos a cargar.
La sección MIME-types define el método por el cual el servidor y el cliente
sabrán que tipo de dato es un objeto determinado. Esta información es generalmente
más importante para el cliente por que ellos necesitan saber como interpretar el dato y
el servidor solo necesita enviarlo. Por ejemplo, tendríamos que mapear el MIME-type
video/quicktime con la extensión .mov.
La sección Edit config files nos permite editar directamente los archivos de
configuración del servidor.
CGI (Common Gateway Interface) nos permite tener aplicaciones
programadas en casi cualquier lenguaje corriendo detrás de nuestro servidor Apache.
Solo es necesario que Apache pueda interpretar la salida de los mismos.
Los virtual servers son útiles para crear varios dominios con una sola IP.
Apache, como otros servidores Web, tiene la posibilidad de actuar como si fuera
muchos servidores web. Esto se hace a través de servidores virtuales. De esta forma
utilizando un único Apache y un único archivo de configuración se podrán dar de alta o
atender a diferentes sitios de internet a la vez, sin que los navegadores o visitantes del
sitio sepan esto.
Básicamente existen tres tipos de servidores virtuales en Apache:
basados en direcciones IP
basados en Nombres
creación masiva.
Cuando definimos los servidores virtuales basados en Nombres tendremos que
tener varias direcciones IP, específicamente una por cada sitio web.
Esto no es lo general ya que las IP publicas escasean. La ventaja es que se
pueden redefinir, para cada virtual host, casi todas las opciones globales de
configuración.
En los servidores virtuales basados en direcciones IP se utiliza una sola
dirección IP que es compartida por todos los servidores virtuales. Apache verifica, antes
de redireccionar un navegador de internet con que equipo desea conectarse.
Basándose en esta solicitud, Apache buscara en su configuración cual es el
directorio del cual deberá sacar las paginas para enviárselas al navegador de internet.
95
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Los servidores virtuales de creación masiva están pensados para poder definir
muchos servidores virtuales sin modificar la configuración de Apache. Es importante
recordar que cada vez que se modifica el archivo de configuración httpd.conf es
necesario reiniciar el servidor web para que estos cambios de reflejen. Utilizando este
tipo de servidores no es necesario reiniciar Apache para que el nuevo sitio web este en
línea. Para configurar este tipo de servidores se debe utilizar el modulo de apache
mod_vhost_alias.
Se debe especificar la opción UseCanonicalName Off en el archivo httpd.conf.
Para terminar, a la configuración se le agregan las siguientes líneas:
VirtualDocumentRoot /var/httpd/%0/html
VirtualScriptAlias /var/httpd/%0/cgi-bin
La variable %0 Apache la remplaza por el nombre del servidor al cual se quiere
acceder. Por lo tanto lo único que se necesita para dar de alta un nuevo servidor es
crear un directorio como
/var/httpd/www.dominio.com/html.
Para crear servidores virtuales basados en IP usando Webmin se debe acceder al
siguiente formulario, que se encuentra en la pagina principal del modulo Apache de
Webmin:
12
En este formulario ingresaremos el Document Root que es el path hacia las paginas del
servidor virtual y Server Name en el formato “dominio.com”.
Con estos datos ya estamos en condición de crear un nuevo servidor virtual.
Squid.
Squid es un servidor proxy extremadamente flexible. La mayor parte de la
configuración se hace editando el archivo llamado squid.conf que generalmente esta
ubicado en:
/usr/local/squid/squid.conf.
Cada comportamiento del servidor está definido por una directiva, seguida por
una o más opciones. La interfase de Webmin nos da acceso a la mayoría de las
directivas disponibles para configurar Squid.
En Ports and Networking se encuentran la mayoría de las opciones en el
ámbito de red de Squid. Definiremos que puertos se utilizaran y en que dirección IP se
escuchara.
La pagina Memory Usage nos da acceso a las opciones de cómo manejara
Squid el disco y la memoria. Las opciones en esta pagina se pueden dejar por default
excepto en escenarios de gran carga o bajos recursos donde cambiar estas opciones
puede incrementar la performance del servidor.
96
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Squid nos provee un gran número de logs que pueden ser usados para identificar
problemas y chequear los hábitos de navegación de los usuarios de la red. La
configuración de estos se realiza en la sección Logging.
En la pagina Cahe Options definiremos la ruta y el tamaño de los directorios
donde Squid cacheara las paginas web.
En la sección Access Control podemos ver las ACLs ya creadas y crear nuevas.
El primer campo en la tabla representa el nombre de la ACL, el segundo es el
tipo que le indica a Squid que parte de un pedido mapeara contra esta ACL. Las
posibilidades son: Client Address, Web Server Address, una expresión regular que será
buscada en la URL y mucho mas. El ultimo campo es la cadena que, dependiendo de
que tipo de ACL sea, será una dirección IP, una serie de direcciones IP, una URL, etc..
CONCLUSIONES
Aprender a utilizar Webmin nos permite configurar nuestros servidores de
manera “sencilla “ ya que no es ninguna tarea fácil configurarlo al menos con webmin
nos da una interface grafica que nos soluciona un poco la vida.
Otras características importantes para resaltar es poder configurar nuestro
equipo, nuestras particiones, nuestro grub, cuentas de usuario, programar tareas, etc
etc etc… a través de la pagina web.
97
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
14. Autenticando usuarios
14.1 Autenticando usuarios ( NSS )
La bibliteca de sistema NSS realiza la consulta de usuarios, grupos y shadow
usando archivos locales, es decir, /etc/passwd, /etc/group y /etc/shadow
respectivamente, ya que nuestro sistema usará un directorio LDAP para almacenar la
información de los usuarios y grupos será necesario indicarle a la biblioteca NSS que
debe usar un directorio LDAP para obtener información sobre dichas identidades, el
paquete nss_ldap es un plugin para la biblioteca de sistema NSS para podere realizar la
resolución de identidades usando como fuente de origen un directorio LDAP.
Vamos a instalar los paquetes necesarios
# apt-get install libnss-ldap
A continuación vamos a configurarlo mediante ventanas
Ponemos la IP localhost , 127.0.0.1
El nombre del dominio dc=empresa,dc=com
Marcamos que queremos usar la version 3 de LDAP
Le decimos que NO queremos que el usuario local sea el root de LDAP
98
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y que la BBDD no requiera login
El asistente genera un archivo en /etc/ldap.conf pero necesitamos editarlo aún más.
Primero hacemos un backup y lo editamos.
# mv /etc/lda.conf{,.original}
99
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
14.2 Autenticando usuarios ( PAM )
PAM son las siglas de Plugable Authentication Modules que basicamente es un
mecanismo flexible para autenticar usuarios.
 Tipos de Modulos
Hay cuatro tipos de modulos PAM
authentication
Tareas encaminadas a comprobar que, efectivamente, o el usuario es realmente
quien dice ser.. Estas tareas ofrecen incluso un sistema de credenciales que
permiten al usuario ganar ciertos privilegios
Estos modulos proveen dos formas de autenticar el usuario.
Primero, los modulos establecen que el usuario es quien dice ser instruyendo la
aplicacion (servicio) que le pregunte al usuario una contraseña u otro mecanismo
de identificación.
Segundo, el modulo puede otorgar membrecia a un grupo u otros privilegios a
traves de las propiedades de las credenciales del usaurio.
account (cuenta)
En este grupo se engloban tareas que no están relacionadas directamente con la
autenticación. Algunos ejemplos son permitir/denegar el acceso o en función de
la hora, los recursos disponibles o, incluso, la localización. Ofrece la verificación
de cuentas de usuario. Por ejemplo, se encarga de determinar si el usuario o
tiene o no acceso al servicio, si su contraseña ha caducado, etc…
Estos modulos son tipicamente usados para restringuir o permitir el acceso a un
servicio basado en la hora del día, los recursos del sistemas actualmente
disponibles (máximo número de usuarios) o quizas la localización de el usuario (
por ejemplo, para limitar el login al usuario root en la consola).
password (contraseña)
Se encarga de mantener actualizado el elemento de autenti- n caci´n asociado a
cada usuario Acciones como o n comprobar la fortaleza de una clave son t´
ıpicas de este grupo.
100
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011




Este último tipo de modulo es requerido para actualizar el token de autenticación
asociado a un usuario.
session (sesión)
En este grupo se engloban tareas que se deben llevar a cabo antes o de iniciarse
el servicio y después de que este finalice. Es especialmente util para mantener
registros de acceso o hacer accesible el directorio home del usuario.
Estos modulos estan asociados a las realización de tareas que necesitas que sean
hechas para el usuario antes de que se le pueda dar acceso a un servicio o
despues de que el servicio ha sido provisto.
Tales tareas incluyen registrar (logging) información correspondiente al usuario,
montar directorios …
Banderas de Control (Control Flags)
Modulo
Argumentos (opcional)
A continuación vamos a instalar PAM y a decirle que debe usar la base de datos de
LDAP para autenticar los usuarios.
# auth-client-config –t nss –p lac_ldap
# pam-auth-update ldap
Salta una ventana de configuración con 3 posibilidades. Como queremos que
autentique solo por LDAP solo dejamos esa opción marcada.
Ahora pasamos a comprobar la autenticación de usuarios via PAM.
Para ello vamos a crear a un usuario.
# smbldap-useradd –m –s /bin/bash –P Xavi
Aqui vemos todas las opciones al usar el useradd
101
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
El anterior comando , le ponemos la contraseña.
Podemos ver el usuario creado.
# smbldap-usershow Xavi
102
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Podemos ver a que grupos pertenece
# id xavi
Para probar la autenticación necesitamos instalar el paquete pamtest
# apt-get install libpam-dotfile
Y probamos de autenticar al usuario xavi creado anteriormente.
# pamtest passwd xavi
Ahora vamos a probar a unir equipos al dominio.
103
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
14.3 Equipos al dominio ( windows XP )
Vamos a unir un equipo Windows XP 32 bits SP3 al dominio. Para ello empezamos en
propiedades del sistema , pestaña nombre del equipo y seleccionamos Id de red.
Y aparece un asistente para unir el equipo a un dominio. Lo seguimos cumplimentando
las opciones como en las imágenes.
104
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Ponemos el nombre del usuario , su contraseña y el nombre del dominio
105
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
106
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
14.4 Equipos al dominio ( Windows 7 )
Existe un bug en el que para unir windows 7 a un dominio de Openldap+SAMBA es
necesario primero descargar un fichero .reg ( hace modificaciones en el registro de
Windows ) para que se pueda unir de forma correcta.
https://bugzilla.samba.org/attachment.cgi?id=4988&action=edit
Para unir el equipo al dominio podemos usar el Asistente para identificación de
red el cual nos llevará paso a paso en el proceso para que el equipo sea un miembro
del dominio de red Samba/NT.
Lanzamos el asistente de identificación de red dando click en el botón Id. de red.
Usando el Asistente de Identificación de red
107
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
En el siguiente paso del asistente nos da un da un resumen de la información de red
que necesitamos para unir este equipo al dominio
Se muestra la información requerida junto con la información correspondiente a
nuestro dominio:
 Nombre de usuario: root
 Contraseña de usuario:
 Cuenta de usuario del dominio: root.
108
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Es posible que también necesite:
 Nombre del equipo: windows7.
 Dominio del equipo: EMPRESA.
Además necesitaremos la contraseña del usuario root/Administrator del
dominio, esta cuenta será necesaria para poder unir la maquina al dominio y crear la
cuenta de computadora correspondiente a WINDOWS7. Configuramos esta información
como se muestra en la siguiente imagen:
109
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Después de ingresar la información damos click en el botón Siguiente >.
Al dar click en Siguiente el asistente tratará de encontrar una cuenta de equipo
de nombre WINDOWS7 en el dominio EMPRESA, si no la encuentra nos mostrará un
cuadro como el siguiente, donde nos avisa que no encontró la cuenta de equipo en el
dominio, nos pide escribir nuevamente el nombre de equipo y el dominio.
Damos click en el botón Siguiente >, ya que la cuenta de equipo no se encontró
en el dominio EMPRESA, necesitaremos usar una cuenta con privilegios administrativos
de dominio y su contraseña para que por medio del asistente de identificación de red se
cree la cuenta de equipo WINDOWS7 en el dominio EMPRESA.
110
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Ya que no tenemos cuentas con privilegios administrativos de dominio,
usaremos la cuenta de root/Administrator que se creo con smbldap-populate,
ingresamos su contraseña y el nombre de dominio EMPRESA como se muestra en la
imagen de arriba, después damos click en el botón Aceptar para continuar.
Si las credenciales que presentamos fueron correctas, en la siguiente ventana, nos
dirá que podemos agregar un usuario al equipo, cuando se agrega un usuario a este
equipo se le concede acceso a todos los recursos del equipo y a todos los recursos
compartidos en la red.
No agregaremos ninguna cuenta en especial ya que este equipo esta pensado para
que lo usen diversos usuarios.
Si asignaramos un usuario en la siguiente ventana nos solicita asignar un nivel de
acceso que el usuario xxxxx tendrá sobre el equipo WINDOWS7, por defecto esta
seleccionado el nivel de acceso: Usuario estándar.
111
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
El nivel de acceso Usuario estándar permite que los usuarios pueden cambiar
muchas configuraciones del sistema e instalar programas que no afecten a los
archivos del sistema de Windows. Digamos que este es el nivel intermedio.
El nivel de acceso Usuario restringido permite que los usuarios pueden utilizar
el equipo y guardar documentos, pero no pueden instalar programas o cambiar la
configuración del sistema.
En Otros: podemos elegir otros niveles de acceso, por ejemplo, podemos dar
acceso de Administrator al usuario, esto quiere decir que el usuario xxxxx tendrá
todos los privilegios sobre el equipo WINDOWS7, lo cual significa que puede cambiar
configuraciones, puede instalar y desinstalar programas que afecten el sistema, es
decir, puede hacer lo que le de la gana sobre el equipo, incluso formatear :D.
Estos ejemplos no son los que queremos ya que solo estamos agregando al equipo y
no a equipo y usuario.
112
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Dando como resultado la siguiente imagen
Reiniciamos para que se apliquen los cambios
113
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Si el equipo se unió satisfactoriamente al dominio, Samba creará una cuenta de
computadora, la cual autoriza al equipo para acceder a los recursos de la red. Puede
ver la lista de cuentas de computadoras con el comando pdbedit, por ejemplo:
Las cuentas de computadora terminan con el simbólo $, usamos el parámetro -V para
ver más información acerca de la cuenta, por ejemplo:
114
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Las cuentas de computadora tienen el Account Flags W, el cual significa que es un
workstation no una cuenta de usuario.
115
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
14.5 Equipos al dominio ( Ubuntu Desktop 10.10 )
Información preliminar del equipo cliente Linux
Tenemos un cliente Linux que tiene su autenticación independiente usando los archivo
/etc/passwd, /etc/shadow y /etc/group principalmente queremos unir este equipo al dominio, es
decir, el equipo será un miembro del dominio, y podrá participar en la autenticación centralizada y
comunicarse con los otros hosts, sean servidores linux o windows.
Configurando la resolución de Identidades con NSS_LDAP
Esta máquina se llama UBUNTU1
Tiene la dirección IP: 192.168.1.7
Configuración de la autenticación de usuarios y grupos UNIX vía PAM_LDAP
Instalando el software necesario para unir cliente Linux a
Dominio LDAP
Instale el paquete libnss-ldap:
root@UBUNTU1:~# apt-get install libnss-ldap
Configurando la resolución de cuentas de usuario y grupos
mediante LDAP en clientes Linux
Para la resolución de cuentas de usuario y grupos Unix mediante LDAP usaremos el paquete libnssldap, la configuración es similar al servidor, solo cambiará la dirección IP del servidor LDAP.
116
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuramos el archivo /etc/ldap.conf para libnss-ldap:
# Config file for libnss-ldap and libpam-ldap
uri ldap://192.168.1.10/
ldap_version 3
scope sub
base dc=empresa,dc=com
pam_filter objectclass=posixAccount
pam_login_attribute uid
pam_member_attribute memberuid
pam_password exop
nss_base_passwd
ou=Users,dc=empresa,dc=com
nss_base_passwd
ou=Computers,dc=empresa,dc=com
nss_base_shadow
ou=Users,dc=empresa,dc=com
nss_base_group
ou=Groups,dc=empresa,dc=com
bind_policy soft
nss_initgroups_ignoreusers
backup,bin,daemon,dhcp,games,gnats,irc,klog,libuuid,list,lp,mail,man,news,openldap,proxy,root,sshd,sync,s
ys,syslog,uucp,www-data
nss_initgroups_ignoreusers
backup,bin,daemon,dhcp,games,gnats,irc,klog,libuuid,list,lp,mail,man,news,openldap,proxy,root,sshd,sync,s
ys,syslog,uucp,www-data
Editamos el archivo de configuración /etc/nsswitch.conf para que utilize la fuente LDAP que
recien configuramos:
passwd:
group:
shadow:
compat ldap
compat ldap
compat ldap
hosts:
wins files mdns4_minimal [NOTFOUND=return] dns mdns4
Probando la resolución de usuarios vía archivos y LDAP:
root@UBUNTU1:~# getent passwd | grep root
Si hacemos getent passwd vemos todos los usuarios del servidor con | grep root
buscamos al usuario root
Tambíen podemos probar la resolución para grupos:
117
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
root@UBUNTU1:~# getent group | grep -E 'root|Domain'
Configurando la Autorización de cuentas de usuario y grupos
mediante LDAP en clientes Linux con PAM
Instalamos los paquetes requeridos:
root@UBUNTU1:~#apt-get install libpam-ldap libpam-cracklib
Antes de iniciar con los cambios en la configuración de los modulos de autenticación PAM, haremos
un respaldo del directorio /etc/pam.d/
Todas las configuraciones de PAM estan en el directorio /etc/pam.d/, respaldaremos todo el
directorio
root@UBUNTU1:~# cd /etc/
Nuestro respaldo tendrá el sufijo .FILES para indicar que son las configuraciones que usan los
archivos /etc/passwd, /etc/group y /etc/shadow.
root@UBUNTU1:~# cp -va pam.d pam.d.FILES
Configuración del modulo auth
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
118
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.
# here are the per-package modules (the "Primary" block)
auth
sufficient
pam_unix.so likeauth nullok
auth
sufficient
pam_ldap.so use_first_pass
# here's the fallback if no module succeeds
auth
required
pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth required
pam_permit.so
# and here are more per-package modules (the "Additional" block)
# end of pam-auth-update config
Configuración del modulo account
# /etc/pam.d/common-account - authorization settings common to all services
# This file is included from other service-specific PAM config files,
# and should contain a list of the authorization modules that define
# the central access policy for use on the system. The default is to
# only deny service to users whose accounts are expired in /etc/shadow.
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.
# here are the per-package modules (the "Primary" block)
account
required
pam_unix.so
account
sufficient
pam_ldap.so
# here's the fallback if no module succeeds
119
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
account requisite
pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
account required
pam_permit.so
# and here are more per-package modules (the "Additional" block)
# end of pam-auth-update config
Configuración del modulo session
# /etc/pam.d/common-session - session-related modules common to all services
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define tasks to be performed
# at the start and end of sessions of *any* kind (both interactive and
# non-interactive).
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.
# here are the per-package modules (the "Primary" block)
session [default=1]
pam_permit.so
# here's the fallback if no module succeeds
session requisite
pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
session required
pam_permit.so
# and here are more per-package modules (the "Additional" block)
session required
pam_unix.so
session optional
pam_ldap.so
session optional
pam_ck_connector.so nox11
120
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
session
required
pam_mkhomedir.so skel=/etc/skel/ umask=0022
# end of pam-auth-update config
Configuración del modulo password
# here are the per-package modules (the "Primary" block)
password
required
pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3
password
sufficient
pam_unix.so nullok use_authtok md5 shadow
password
sufficient
pam_ldap.so use_authtok
# here's the fallback if no module succeeds
password
required
pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
password
required
pam_permit.so
# and here are more per-package modules (the "Additional" block)
password
optional
pam_gnome_keyring.so
# end of pam-auth-update config
Inicio de sesion con el usuario Xavi
121
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Inicio de sesion con el usuario Gonzalo
Como vemos el unico usuario con permisos para editar este equipo es root
122
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
15.Servidor NTP
El NTP es un servicio utilizado para sincronizar la hora en sistemas operativos, el
servidor provee información de tiempo , ya sea la configuración de su reloj o desde
servidores de Internet.
El protocolo usado es no orientado a conexión ( UDP ).
NTP usa jerarquía en los servidores de reloj , siendo el primer nivel sincronizados por
GPS y los de segundo y tercer nivel encargados de responder a las peticiones desde
Internet y así en lo sucesivo ( existen 10 niveles actualmente )
Las ventajas de tener la misma hora en todos los equipos de la LAN son varios , pero
destacamos la consulta de Logs , la ejecución de scripts a determinadas horas y por
temas de seguridad entre otros.
El objetivo es prestar un servicio de NTP que será consultado por toda la LAN.
No confundir NTP con la el huso horario. NTP utiliza la “hora universal” es decir , no
tiene en cuenta en que lugar del mundo te encuentras para actualizar la hora, sino que
es siempre la misma zona horaria para él ( UTC – Universal Time ).
Para solventar ese inconveniente tenemos que modificar nuestra zona horaria.
Para ello miramos nuestra zona horaria.
# cat /etc/localtime
Y si es UTC , procedemos a cambiarlo. Nos apoyamos en una interfaz gráfica como es
tzdata.
# dpkg-reconfigure tzdata
Y elegimos nuestra zona horaria ( Europa / Madrid )
123
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
124
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Y ya tenemos correctamente nuestra zona horaria
Para instalar el sevicio de ntp en el servidor instalamos el paquete
# apt-get install ntp
La hora se sincroniza mediante unos servidores , vamos a añadir un par de servidores
más en el archivo de configuración.
# nano /etc/ntp.conf
Y debajo de server ntp.ubuntu.com añadimos

Server hora.redairis.es

Hora.roa.es
125
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Para sincronizar la hora ejecutamos en el terminal
# ntpdate –u hora.roa.es
El –u es para indicar que es UDP y los firewalls no den problemas.
Claro que queremos que se actualice solo , por lo que lo ponemos en el cron y que se
ejecute cada dia.
Creamos un archivo y lo guardaremos en /etc/cron.daily/ntpdate
Con el siguiente contenido
# ntpdate –u hora.roa.es hora.redairis.es ntp.ubuntu.com
Damos permisos
# chmod 755 /etc/cron.daily/ntpdate
126
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configurar cliente en Windows XP
Vamos a Incio > Panel de control > Hora y fecha
En la pestaña hora de internet ponemos la IP de nuestro servidor de NTP . Le damos
a actualizar para ver que no hay errores.
Las sincronizaciones las realiza 1 vez a la semana.
127
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
16. Proxy Squid
El proxy se encarga de administrar el acceso a internet de la LAN y también es
conocido como servidor intermedio, el servidor proxy que se ocupa en GNU/Linux en
sus diferentes distribuciones es squid. Squid es un programa que hace cache de datos
obtenidos de internet para poder optimizar recursos de banda ancha de internet, entre
sus características mas importantes son:








Proxy/cache: Proporciona servicio proxy a peticiones del tipo http, https y ftp a
equipos que se encuentran en nuestra red local para que puedan acceder hacia
internet y a su vez provee la funcionalidad de cache en el cual se almacenan
localmente las paginas consultadas por los usuarios de forma que incrementa la
rapidez de acceso a la información web y ftp.
Proxy SSL: Es un servicio de squid compatible con SSL, con el cual se aceleran
las peticiones y las peticiones hacia internet estarían cifradas.
Jerarquias de Cache: Nuestro squid puede pertenecer a una jerarquía de cache
que trabajan conjuntamente sirviendo peticiones. En este caso tendremos varios
servidores squid resolviendo peticiones de una pagina web, si no la tiene
registrada le pregunta a otro hasta que es encontrada la información.
ICP, HTCP, CARP, Cache digests: Squid sigue los protocolos ICP, HTCP, CARP
y caché digests que tienen como objetivo permitir a un proxy “preguntarle” a
otros proxys caché si poseen almacenado un recurso determinado.
Proxy Transparente: Puede ser configurado para ser usado como proxy
transparente de manera que las solicitudes son enrutadas por medio de un
reglas de firewall y sean enviadas al squid sin tener que configurar los clientes
dentro de una red.
WCCP: Permite interceptar y redirigir el trafico que recibe un router hacia uno o
más proxys caché, haciendo control de la conectividad de los mismos.
Control de Accesos: En este parte establecemos reglas de control de acceso,
esto permite establecer políticas de denegación o aceptación.
Aceleración de servidores HTTP: Cuando hacemos peticiones hacia intenet la
información es almacenada en el cache del squid y si hay otra solicitud hacia el
mismo recurso el squid le devolverá la información que tiene el squid en cache.
Si hay algún cambio entonces la información deberá ser actualizada.
128
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011


SNMP: Permite activar el protocolo SNMP, esto permite la administración de red,
que permite supervisar, analizar y comunicar información de estado entre una
gran variedad de máquinas, pudiendo detectar problemas y proporcionar
mensajes de estados.
Caché de resolución DNS: Squid está compuesto también por el programa
dnsserver, que se encarga de la búsqueda de nombres de dominio. Cuando
Squid se ejecuta, produce un número configurable de procesos dnsserver, y cada
uno de ellos realiza su propia búsqueda en DNS. De este modo, se reduce la
cantidad de tiempo que la caché debe esperar a estas búsquedas DNS.
16.1 Instalación de Proxy Squid
Instalamos Squid , lo hacemos por consola aunque lo podríamos instalar mediante
webmin por un módulo.
# apt-get install squid
Una vez instalado el paquete ( en /etc/squid ) hay que editar el archivo de
configuración ( squid.conf ) , antes hacemos una copia del original.
# cp /etc/squid/squid.conf{,.original}
Y lo abrimos con el editor
# nano /etc/squid/squid.conf
PARÁMETRO HTTP_PORT
En este parámetro configuramos el puerto de escucha de nuestro servidor squid, por
default es el puerto 3128, también es común el uso del 8080.
http_port 3128
PARÁMETRO CACHE_MEM
129
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Establece la cantidad de memoria RAM dedicada para almacenar los datos mas
solicitados. Esta opción viene comentada por los cual la descomentaremos para darle
un valor reservado en memoria RAM que por defecto son 8 MB que es bajo , lo
podemos subir hasta 75 MB para darle más soltura.
cache_mem 75 MB
PARÁMETROS CACHE_SWAP
Dentro del cache_swap, existen dos parámetros: cache_swap_low cache_swap-hight
Con estos le indicamos a squid que mantenga los niveles del espacio del area de
intercambio o también conocido como swap. Estos parámetros viene siempre
desactivados por cual los buscaremos para activarlos.
cache_swap_low 90
cache_swap_high 95
Con esto decimos al squid que mantenga los niveles del espacio del area de
intercambio entre 90% y 95%.
PARÁMETROS MAXIMUM_OBJECT_SIZE
Utilizamos esta directiva para indicar el tamaño maximo para los objetos a almacenar
en la cache. Podemos subir el default que son 20480 Kb
maximum_object_size 20480 Kb
PARÁMETRO VISIBLE_HOSTNAME
Es el nombre del equipo, el nombre debe ser igual a los siguientes ficheros /etc/hosts y
en /etc/sysconfig/network. Este parametro no viene configurado en el archivo de
configuracion, tendremos que añadirlo, o dejar el default que usa getHostname y ya
coge él el nombre.
visible_hostname Hydra.empresa.com
PARÁMETRO CACHE_DIR
Con este parametro establecemos el tamaño que deseamos que tenga la cache en el
disco, lo cual tendremos que habilitar y modificar el siguiente dato.
cache_dir ufs /var/spool/squid 1000 16 256
Con esto establecemos el tamaño que deseamos que tenga la cache en el disco,
ponemos 1000MB de cache con 16 directorios subordinados y 256 niveles cada uno.
PARÁMETRO ACCESS_LOG
Especifica en que directorio se realizara el registro de accesos al squid, esto nos sirve
luego al instalar un analizador de logs como Calamaris o Sarg.
access_log /var/log/squid/access.log squid
PARÁMETRO CACHE_LOG
Define en donde se almacenaran los mensajes del comportamiento de la cache de
squid. Por default viene desactivado.
130
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
cache_log /var/log/squid/cache.log
REGLAS ACL
Una ACL es una definición de control de acceso, que utiliza squid para especifica
mediante el, existen varios tipos de reglas ACL que vemos en la tabla.
src
time
dts
url_regex
srcdomain
urlpath_regex
dstdomain
req_mime
srcdom_regex
macaddress
dstdom_regex password
REGLA TIPO SRC
Esta reglas especifica una o varias dirección IP de origen o un segmento de red con su
mascara de red. Nomenclatura:
acl [Nombre] src [Contenido]
El nombre de la regla es llamada redlocal la cual tendría asignada un segmento de red
192.168.1.0 a 24 bits.
acl redlocal src 192.168.1.0/24
REGLA TIPO DTS
Especifica una dirección de destino en formato IP y mascara o el nombre del sitio a
visitar.
acl [Nombre] dts [Contenido]
En esta regla es llamada webmial la cual contendrá como destino final las direcciones
de webmail mas conocidos de internet.
acl webmail dst www.gmail.com
REGLA TIPO SRCDOMAIN.
La regla de tipo srcdomain se establecen permisos sobre dominios web de origen y se
determina por la resolución de DNS inversa. Necesitamos un DNS local.
acl [Nombre] srcdomain [Contenido]
REGLA TIPO DSTDOMAIN
La regla de tipo dstdomain se establecen permisos sobre dominios web de destino.
Nomenclatura:
acl [Nombre] dstdomain [Contenido]
131
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
La regla permitos indicamos que dominios pueden tener salida a internet
acl pemitidos dstdomain .linuxparatodos.net .copernic.cat .debian.org
REGLA TIPO SRCDOM_REGEX
Esta regla se encarga de evaluar palabras de entrada a nuestra red, de expresiones
regulares.
acl [Nombre] srcdom_regex [Contenido]
La regla intranet análisis todas la posibles palabras de factor en mayúsculas y
minúsculas de nuestra red local.
acl intranet srcdom_regex -i empresa\..*
REGLA TIPO DSTDOM_REGEX
Esta regla se encarga de evaluar palabras de salida, ocupándose expresiones regulares.
acl [Nombre] dstdom_regex [Contenido]
La regla google análiza todas la posibles palabras de google en mayúsculas y
minúsculas.
acl google_todos dstdom_regex -i google\..*
Regla Tipo time
Esta regla estable un tiempo limite de conexión de una semana ( en inglés cambiando
las letras que coinciden como Saturday ( A ) , Sunday ( S ))
Parámetros Días
S
Domingo
M
Lunes
T
Martes
W
Miércoles
H
Jueves
F
Viernes
A
Sábado
Se usa en formato de 24:00 horas
acl [Nombre] time [días][horas]
132
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
La regla horario establece que está habilitado los días Lunes a Viernes de 09:00 a
14:00 hrs.
acl horario time MTWHF 09:00-14:00
REGLA TIPO URL_REGEX
Permite especificar expresiones regulares para comprobar dicha url, guardamos una
serie de palabras que consideramos deban ser bloqueadas , podemos tener un archivo
general o varios clasificados por temas
acl [Nombre] url_regex “Path”
Ejemplo de archivo banned.txt:
Porn
Wow
Apuestas
nude
Esta regla se llama bannedlist y seria definida como:
acl bannedlist url-regex “/etc/squid/listas/banned.txt”
REGLA TIPO URLPATH_REGEX
Esta regla nos permite la administración de descargas por medio de la extensión de los
archivos
acl [Nombre] urlpath_regex “Path”
Ejemplo de archivo extensiones.txt:
\.avi$
\.mpg$
\.mpeg$
\.avi$
\.flv$
\.exe$
\.bat$
\.zip$
\.mp3$
133
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
acl extensiones urlpath_regex “/etc/squid/listas/extensiones.txt”
REGLA TIPO REQ_MIME
Esta regla nos permite comprobar el tipo de petición mime que realiza un cliente.
acl [Nombre] req_mime “mime”
Esta regla se llame MSN la cual contiene el mime del mensajero MSN.
acl MSN req_mime type application/x-msn-messenger
REGLA TIPO MACADDRESS
Este tipo de regla nos permite administrar squid por medio de Mac Address.
acl [Nombre] arp “Mac Address”
Esta regla se llama root_mac en la cual nosotros proporcionamos las Mac Address de
las máquinas clientes en la cual identificamos el root , pudiendo filtrar a nuestro antojo
por ejemplo saltando el proxy para esas Mac.
acl root_mac arp 09:00:2b:23:45:67 00:1f:3c:5f:fd:b1 00:1e:ec:70:7e:24
REGLA TIPO PASSWORD
Este tipo de regla, se controla el acceso a internet por medio de un usuario y password,
para poder habilitar este método tendremos que hacer lo siguientes pasos de
configuración.
1) Creamos el archivo que contendrá las claves.
# touch claves
2) Le asignamos permisos de Lectura/Escritura y el usuario encargado del archivo.
# chmod 600 claves
# chown squid.squid claves
3)Creación de usuario y password para el acceso a internet.
htpasswd claves clientes
4) Habilitaremos las siguientes opciones dentro del fichero de configuración del servidor
squid, busquemos el primer parámetro llamado auth_param basic.
#auth_param basic program <uncomment and complete this line>
Este parámetro lo modificaremos de la siguiente manera.
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/claves
Estamos enlazando la aplicación que nos permitiría autenticarnos y en donde se
encuentra el archivo donde se encuentran las cuentas de los usuarios.
134
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
acl password proxy_auth REQUIRED
5) Por ultimo tendremos que habilitar la regla acl encargada de la autenticación de
password.
acl password proxy_auth REQUIRED
Con esto ya tendremos habilitada la regla para la autenticación de los usuarios.
CONTROL DE ACCESO
El control de acceso define si se permite o deniega el acceso a las reglas para que
empecemos a crear el filtrado.
http_access allow/Deny Regla
Para permitir por ejemplo a una regla anteriormente definidida como admins que se
salten el filtrado de proxy.
http_access allow admins
Toda los de mas clientes de la red no tendrán acceso a internet.
http_access deny redlocal
Dentro de la configuración http_access, existe una expresión “!” que significa no,
esto permite que una regla se permitida o denegada. Es lo contrario a la primera
definición del control de acceso.
Esta regla permite navegar a todo la red en un horario de 09:00 a 14:00 Hrs para decir
que cierre fuera de ese horario una forma seria.
http_access deny redlocal !horario
16.2 Configuración Proxy Squid
Como vemos en el siguiente diagrama de red, especificaremos los siguientes reglas que
tendrá nuestra red.
Todas las computadoras de la empresa se encuentran dentro del segmento de
red 192.168.1.0/24.
 Los jefes de cada departamento tienen salida a sin ninguna restricción a internet
y sus IP son 92.168.1.10, 192.168.1.20.
 El resto de la red solamente tiene acceso a la página de la empresa con un
horario de 08:00 a 14:00 hrs, sin poder descargar archivos de música y vídeos.
Crearemos las reglas del squid.

acl redlocal src 192.168.1.0/24
acl direccion src 192.168.1.10 192.168.1.20
acl permitidas dstdomain “/etc/squid/permitidas”
135
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
acl horario time MTWHF 08:00-14:00
acl extensiones urlpath_regex “/etc/squid/extensiones”
Comenzaremos a configurar el control de accesos.
http_access allow direccion
http_access deny redlocal !permitidas !horario extensiones
Con esto tendremos ya configurado nuestro squid, para poder exportar en proxy desde
consola tendremos que hacer lo siguiente:
export http_proxy=[http://192.168.1.9:3128]
Para poder configurar este tipo de proxy, tendremos que configurar reglas de firewall,
en nuestro caso usaremos reglas de Iptables.
iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j REDIRECT --to-port
3128
Habilitamos el reenvío de paquetes dentro de la red.
echo 1 > /proc/sys/net/ipv4/ip_forward
Y Guardamos las reglas con el siguiente comando.
iptables-save > /etc/sysconfig/iptables
Reiniciamos el servicio de firewall
/etc/init.d/iptables restart
136
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
17. Dansguardian
INSTALACIÓN DANSGUARDIAN/CLAMAV
¿QUÉ ES DANSGUARDIAN?
Dansguardian es un filtro de contenido que se usa conjuntamente con un Proxy (Por
ejemplo Squid) para realizar labores de filtrado como por ejemplo: por URL,
dominio, IP, etc.
LOS ARCHIVOS DE CONFIGURACIÓN
Dansguardian tiene muchos archivos de configuración que necesitan ser modificados
para que el programa pueda llevar a cabo sus labores de filtrado, vamos a hablar
brevemente de los más importantes:
dansguardian.conf -> Es el fichero de configuración principal, contiene directivas
muy importantes que nos permiten modificar el idioma, el puerto por el que
escucha Dansguardian, detalles del proxy que estamos utilizando, etc.
template.html -> Es la platilla que utiliza Dansguardian cuando nos muestra los
mensajes de error, para su edición es necesario tener unos conocimientos mínimos
de HTML.
bannedextensionlist -> Este archivo nos permite bloquear las extensiones que
elijamos. Ejemplo: .zip o .exe.
bannediplist -> Este archivo nos permite prohibir el acceso a las IP‟s que deseemos.
bannedmimetypelist -> Este archivo nos permite prohibir cierto tipo de contenidos.
Ejemplo: mpeg o quicktime.
bannedphraselist -> Este archivo nos permite bloquear ciertas frases que contienen
contenido inapropiado. Ejemplo: “Windows es el mejor sistema operativo”.
bannedregexpurllist -> Este archivo bloqueara las expresiones elegidas en las URL
que accedemos. Ejemplo: Bloqueamos la palabra “linux” y denegaremos el acceso a
todas las webs que contengan dicha palabra en su URL, como es el caso de la web
www.sliceoflinux.com.
bannedsitelist -> Este archivo nos permite bloquear el acceso a los dominios que
elijamos. Ejemplo: www.tuenti.com.
137
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
bannedurllist -> Este archivo nos permite prohibir el acceso a una determinada parte
del dominio, pero no a todo el dominio. Ejemplo: www.teknoconsolas.es/foro, de
esta forma prohibimos el acceso al apartado foro de Teknoconsolas pero no al
dominio www.teknoconsolas.es.
banneduserlist -> Este archivo nos permitirá bloquear el acceso a los usuarios que
deseemos.
contentregexplist -> Este archivo nos permite remplazar las plabras que
consideremos inadecuadas por otras a elegir. Ejemplo: Bloquearemos la palabra
“mierda” y la sustituiremos por “caca”.
exceptioniplist -> Este archivo nos permite elegir la lista de IP‟s que no serán
filtradas.
exceptionphraselist -> Este archivo nos servirá para elegir aquellas palabras o frases
que no queremos que se filtren.
exeptionsitelist -> Este archivo nos permite elegir aquellas webs que no queremos
que sean bloqueadas.
exceptionurllist -> Este archivo nos permite elegir la parte de un dominio que no se
bloqueará.
exceptionuserlist -> Este archivo nos permite elegir a los usuarios que tendran
acceso.
greysitelist -> Este archivo nos permite desbloquear los dominios prohibidos con los
archivos “banned” pero los seguirá analizando con el resto de filtros.
greyurllist -> Este archivo nos permite desbloquear parte de los dominios prohibidos
con los archivos “banned” pero los seguirá analizando con el resto de filtros.
pics -> Este archivo sirve para configurar el filtrado de imágenes.
weightedphraselist -> Este archivo sirve para bloquear una web si una o varias
palabras que tenemos bloqueadas superan el número máximo de veces que pueden
aparecer. Ejemplo: <Windows><10>, si la palabra Windows aparece en alguna
Web más de 10 veces se nos bloqueará el acceso a dicha Web.
Para poder instalar DansGuardian es necesario instalar los siguientes y librerias para su
funcionamiento:
1) Tendremos que instalar el antivirus clamav.
#apt-get install dansguardian
2) También tendremos que instalar openssl, es un herramienta de seguridad y tiene
herramientas de cifrado.
# nano apt-get install openssl-devel openssl
3)Tendremos que instalar las librerías de compilación.
#apt-get install rpm-build gcc-c++ gcc zlib
4)Descargaremos las librerías de smtp, este se encarga de envío de correo.
Ya que los tenemos descargados tendremos que crearemos un enlace simbólico a la
libreria de clamav.
# ln -s /usr/lib/libclamav.so.6 /usr/lib/libclamav.so.1
138
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
5) Por momento solamente queda configurar nuestro dansguardian, su archivo de
configuración se encuentra en /etc/dansguardian/dansguardian.conf.
#nano /etc/dansguardian/dansguardian.conf
Modificaremos o habilitaremos los siguientes parametros:
language = 'spanish'
filterip = 192.168.1.10
filterport = 8080
proxyip = 192.168.1.10
proxyport = 3128
daemonuser = 'clamav'
daemongroup = 'clamav'
clamdsocket = '/tmp/clamd.socket'
virusengine = 'clamdscan, clamav'
loglocation = '/var/log/dansguardian/access.log'
Crearemos el archivo access.log que contendrá los acceso al dansguardian.
# touch /var/log/dansguardian/access.log
# chown root.root /var/log/dansguardian/access.log
# chmod 666 /var/log/dansguardian/access.log
Iniciamos los servicios de antivirus, proxy y dansguardian:
# /etc/init.d/clamd restart
# /etc/init.d/squid restart
# /etc/init.d/dansguardian start
139
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
CONFIGURACIÓN DE DANSGUARDIAN/SQUID
Ya que tenemos funcionando el dansguardian y clamav solo falta modificar
algunos parámetros dentro de la configuración del squid para que tengan comunicación
entre squid y dansguardian.
Como siempre debemos indicar la IP del servidor y puerto de escucha, y
agregaremos otros parámetros de los cuales permite crear el enlace entre las dos
aplicaciones.
http_port 192.168.1.10:3128
tcp_outgoing_address 192.168.1.1
cache_peer 127.0.0.1 sibling 8080 7
cache_peer 192.168.1.1 parent 3128 7
Con esto ya tendremos configurado nuestro squid solo queda reiniciarlo.
# /etc/init.d/squid restart
Una de las ventajas que tiene dansguardian es que tiene por defecto blacklist a sitios ya
predeterminados y organizados por tipos , haciendo muy fácil su actualización o inclusión de nuevas
blacklist.
140
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
CONFIGURACIÓN DE IPTABLES
Que configurar nuestro reglas de ruteo y de acceso a la red interna
###Hacemos limpieza de reglas existentes de entrada, salida, Ruteo y nateo
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t nat -X
iptables -t nat –Z
###Habilitamos el reenvio de paquetes y como a máquinas dinámicas
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
##Aceptamos conexiones locales
iptables -A INPUT -i lo -j ACCEPT
###Aceptamos conexiones de tipo de DNS a nuestro servidor
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
##Aceptamos conexiones del segmento de red 192.168.1.0 por la interfaz eth1
iptables -A INPUT -s 192.168.1.0/24 -i eth1 -j ACCEPT
##Creamos un nateo de la red interna hacia afuera de la red.
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQUERADE
#Aceptamos peticiones de la tarjeta de red eth1
iptables -A FORWARD -i eth1 -j ACCEPT
141
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
#Aceptamos peticiones de la red local al puerto 80.
iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 80 -j ACCEPT
#Aceptamos peticiones de entrada/salida por medio de protocolo udp del servidor DNS
192.168.1.1
iptables -A INPUT -s 192.168.1.1 -p udp -m udp --sport 53 -j ACCEPT
iptables -A OUTPUT -s 192.168.1.1 -p udp -m udp --dport 53 -j ACCEPT
###Todo petición que venga de la red local que vaya hacia el puerto 80 mandalo al
puerto 8080
iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --toport 8080
### Todo conexiones que venga de la red local haz un nateo con salida de la ip del
servidor.
iptables -t nat -A POSTROUTING -i eth1 192.168.1.0/24 -o eth0 -j SNAT --to-sources
192.168.1.9
###Genera un archivo de configuracion de la reglas y lo guardas en la ruta indicada
iptables-save > /etc/sysconfig/iptables
###reinicia el servicio de iptables o firewall
/etc/init.d/iptables restart
Con esto ya tendremos configurado nuestro servicio de Squid con DansGuardian
y Clamav.
Toda petición al puerto 80 sera reenviada al 8080 que tiene DansGuardian,
analiza con el antivirus y al terminar todo este proceso sera enviada a squid.
142
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
HERRAMIENTAS DE ANÁLISIS DE TRAFICO
Dentro de squid existen dos herramientas:
sarg
calamaris
Esta herramientas nos permite generar reportes de la información que esta pasando
por el squid, como podemos ver la información de cada máquina que paginas han
visitado, es como u histórico de cada computadora de nuestra red. Para poder ocupar
estas herramientas es necesario tener instalado el servicio de apache dentro de squid,
por que si no sera posible utilizar estas herramientas.


143
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
17.CALAMARIS
INSTALACIÓN/CONFIGURACIÓN CALAMARIS
Tendremos que instalar la herramienta de calamaris.
#apt-get install calamaris
En calamaris no tiene un archivo de configuración propio cuando se instala aplicación,
lo que tendremos que hacer es crear el archivo manualmente ( o usar webmin )
#nano /etc/calamaris.conf
Y tendremos que agregarle los siguientes parámetros:
## Reporte Por Dia
daily:root:/var/www/calamaris/daily.html:both:'Squid daily'
### Reporte por Semana
weekly:root:/var/www/calamaris/weekly.html:both:'Squid weekly'
### Reporte por Mes
monthly:root:/var/www/monthly.html:both:'Squid monthly'
También crearemos el archivo de configuración para apache.
#nano /etc/httpd/conf.d/calamaris.conf
Deberá contener a la siguientes parámetros.
Alias /calamaris "/var/www/calamaris"
<Directory "/var/www/calamaris">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
# Allow from all
Allow from 192.168.1.0/24
</Directory>
144
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Se creara el directorio de alojamiento de reportes, tambien se le otorgara permisos al
usuario squid y grupo apache.
# mkdir /var/www/calamaris
# chown squid.apache /var/www/calamaris -R
Reiniciamos el servicio de apache.
# /etc/init.d/httpd restart
Generando el reporte.
# cat /var/log/squid/access.log | calamaris -R -1 -a -F html >
/var/www/calamaris/reporte-hoy.html
Solo falta entrar con nuestro navegador a la dirección http://127.0.0.1/calamaris o
http://192.168.1.10/calamaris. Con esto ya podremos ver toda la información que
es genera en la red cuando los usuarios acceden a internet
145
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
18.CONFIGURACIÓN DE LA RED
146
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
CONFIGURACIÓN DE RED – PACKETTRACER 5.3
Configuracion de los switchs
SWITCH PLANTA BAJA
SERVIDORES
CREATIVO
DESARROLLO
PUNTO_ACCESO_BAJA
2
3
4
9
nº de las vlans
147
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuracion por terminal
En
Conf t
Switch(config)#vlan 2
Switch(config)#name servidores
Switch(config)#exit
Switch(config)#vlan 3
Switch(config)#name creativo
Switch(config)#exit
Switch(config)#vlan 4
Switch(config)#name desarrollo
Switch(config)#exit
Switch(config)#vlan 9
Switch(config)#name punto_acceso_baja
Switch(config)#exit
148
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuramos los puertos que van hacer en mode trunk
Mode trunk:
Switch(config)#Int range fa 0/1-2
Switch(config)#Switchport mode trunk
Switch(config)#Exit
Los puertos 3 y 4 son puertos de la vlan 2 servidores
Switch(config)#Int range fa 0/3-4
Switch(config)#Switchport access vlan 2
Switch(config)#exit
Los puertos 5 a 12 son puertos de la vlan 3 creativos
Switch(config)#Int range fa 0/5-12
Switch(config)#switchport access vlan 3
Switch(config)#exit
Los puertos 13 a 23 son puertos de la vlan 4 desarrollo
Switch(config)#Int range fa 0/13-23
Switch(config)#switchport access vlan 4
Switch(config)#exit
El puerto 24 es puerto de la vlan 9 punto_acceso_baja
Switch(config)#Int range fa 0/24
Switch(config)#switchport access vlan 9
Switch(config)#exit
Switch(config)#end
Final de la configuracion del switch 1
Guardamos la configuracion
Switch#copy running-config startup-config
Mostramos la configuracion
Switch#show vlan
149
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
SWITCH PLANTA ALTA
COMERCIAL
ADMINISTRACION
DIRECCION
PUNTO_ACCESO_ALTA
5
6
7
8
nº de vlans
150
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuracion por terminal
En
Conf t
Switch(config)#vlan 5
Switch(config)#name comercial
Switch(config)#exit
Switch(config)#vlan 6
Switch(config)#name administracion
Switch(config)#exit
Switch(config)#vlan 7
Switch(config)#name direccion
Switch(config)#exit
Switch(config)#vlan 8
Switch(config)#name punto_acceso_alta
Switch(config)#exit
Configuramos los puertos que van hacer asignados a modo truncal
Mode trunk:
Switch(config)#Int range fa 0/1-2
Switch(config)#Switch mode trunk
Switch(config)#Exit
Los puertos 3 a 7 son puertos de la vlan 5 comercial
Switch(config)#Int range fa 0/3-7
Switch(config)#switchport access vlan 5
Switch(config)#exit
Los puertos 8 a 10 son puertos de la vlan 6 administración
Switch(config)#int range fa 0/8-10
Switch(config)#switchport access vlan 6
Switch(config)#exit
Los puertos 11 a 15 son puertos de la vlan 7 dirección
Int range fa 0/11-15
switchport access vlan 7
exit
El puerto 24 es puerto de la vlan 8 punto_acceso_alta
Switch(config)#Int range fa 0/24
151
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Switch(config)#switchport access vlan 8
Switch(config)#exit
end
Final de la configuracion del switch
Guardamos la configuración
Switch#copy running-config startup-config
Mostramos la configuración
Switch#show vlan
152
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuracion del router
Configuración por terminal
Configuracion del router
no
enable
configure terminal
Asignamos la ip al router#
interface fastethernet 0/0
#ip address 192.168.1.1 255.255.255.240
#no shutdown
#exit
153
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Asignamos las ip's a las vlan
num
vlan
2
ip red
Primera
ultima
broadcast
mascara
192.168.1.16
192.168.1.17
192.168.1.30
192.168.1.31
255.255.255.240
nombre
vlan
servidores
switch
planta
baja
ip dhcp pool servidores
network 192.168.1.16 255.255.255.240
default-router 192.168.1.31
exit
num
vlan
3
ip red
primera
ultima
broadcast
mascara
nombre
vlan
switch
192.168.1.32
192.168.1.33
192.168.1.46
192.168.1.47
255.255.255.240
creativos
planta
baja
switch
ip dhcp pool creativo
network 192.168.1.32 255.255.255.240
default-router 192.168.1.47
exit
num
vlan
4
ip red
primera
ultima
broadcast
mascara
nombre
vlan
192.168.1.48
192.168.1.49
192.168.1.62
192.168.1.63
255.255.255.240
desarrollo planta
baja
ip dhcp pool desarrollo
network 192.168.1.48 255.255.255.240
default-router 192.168.1.63
exit
num
vlan
5
ip red
primera
ultima
broadcast
mascara
nombre
vlan
switch
192.168.1.64
192.168.1.65
192.168.1.78
192.168.1.79
255.255.255.240
comercial planta
alta
ip dhcp pool comercial
network 192.168.1.64 255.255.255.240
default-router 192.168.1.79
exit
154
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
num
vlan
6
ip red
primera
ultima
broadcast
mascara
nombre vlan
switch
192.168.1.80
192.168.1.81
192.168.1.94
192.168.1.95
255.255.255.240
administracion planta
alta
ip dhcp pool administracion
network 192.168.1.80 255.255.255.240
default-router 192.168.1.95
exit
num
vlan
7
ip red
primera
ultima
broadcast
mascara
nombre
vlan
switch
192.168.1.96
192.168.1.97
192.168.1.110
192.168.1.111
255.255.255.240
direccion
planta
alta
ip dhcp pool direccion
network 192.168.1.96 255.255.255.240
default-router 192.168.1.111
exit
num
vlan
8
ip red
primera
ultima
broadcast
mascara
nombre vlan
switch
192.168.1.112
192.168.1.113
192.168.1.126
192.168.1.127
255.255.255.240
punto_acceso_alta planta
alta
ip dhcp pool punto_acceso_alta
network 192.168.1.112 255.255.255.240
default-router 192.168.1.127
exit
num
vlan
9
ip red
primera
ultima
broadcast
mascara
nombre vlan
switch
192.168.1.128
192.168.1.129
192.168.1.142
192.168.1.143
255.255.255.240
punto_acceso_baja planta
baja
ip dhcp pool punto_acceso_baja
network 192.168.1.128 255.255.255.240
default-router 192.168.1.143
exit
155
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuramos las interficies del router
int fa 0/0.2
encaptulation dot1q 2
ip address 192.168.1.17 255.255.255.240
exit
int fa 0/0.3
encaptulation dot1q 3
ip address 192.168.1.33 255.255.255.240
exit
int fa 0/0.4
encaptulation dot1q 4
ip address 192.168.1.49 255.255.255.240
exit
int fa 0/0.5
encaptulation dot1q 5
ip address 192.168.1.65 255.255.255.240
exit
int fa 0/0.6
encaptulation dot1q 6
ip address 192.168.1.81 255.255.255.240
exit
int fa 0/0.7
encaptulation dot1q 7
ip address 192.168.1.97 255.255.255.240
exit
int fa 0/0.8
encaptulation dot1q 8
ip address 192.168.1.113 255.255.255.240
exit
int fa 0/0.9
encaptulation dot1q 9
ip address 192.168.1.129 255.255.255.240
exit
156
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Subimos la interface 0/0
int fa 0/0
no shutdown
end
Guardamos y salimos
copy running-config startup-config
exit
Introducimos el que será el DNS principal
dns-server 192.168.1.9
Salimos del modo configuración
Router(dhcp-config)# end
Ahora excluimos las IPs que no queremos que el servidor ofrezca a los clientes (en este caso la del router y
la de los servidores)
ip dhcp excluded-address 192.168.1.1(router)
ip dhcp excluded-address 192.168.1.10(servidor-openldap)
ip dhcp excluded-address 192.168.1.9(servidor-dns
Mostramos la configuracion del router
157
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Configuracion de los equipos por dhcp
Hacemos click en un equipo
Y nos vamos a la pestaña Escritorio.
158
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Desde este panel de control podemos configurar el equipo ya sea por cable o por Wireless
Si nos vamos al icono Configur. IP -> clickeamos por dhcp
Nos aparece la configracion de la ip con la mascara de subred la ruta por defecto.
ESTO PASO LO DEBERIAMOS REPETIR CON TODOS LOS EQUIPOS DE LA RED.
159
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
19.SERVIDOR DNS
Definicion:
Sistema de nombres de dominio es un sistema de nomenclatura jerárquica para
computadoras, servicios o cualquier recurso conectado a internet o a una red
privada. Este sistema asocia información variada con nombres de dominio asignado a
cada uno de los participantes. Su función más importante, es traducir (resolver)
nombres inteligibles para los humanos en identificadores binarios asociados con los
equipos conectados a la red, esto con el propósito de poder localizar y direccionar
estos equipos mundialmente.
Utiliza una base de datos distribuida y jerarquica que almacena información
asociada a nombres de dominio en redes como internet. Aunque como base de datos
el DNS es capaz de asociar diferentes tipos de información a cada nombre, los usos
más comunes son la asignación de nombres de dominio a direcciones IP y la
localización de los servidores de correo electronico de cada dominio.
La asignación de nombres a direcciones IP es ciertamente la función más
conocida de los protocolos DNS. Por ejemplo, si la dirección IP del sitio FTP de
prox.mx es 200.64.128.4, la mayoría de la gente llega a este equipo especificando
ftp.prox.mx y no la dirección IP. Además de ser más fácil de recordar, el nombre es
más fiable. La dirección numérica podría cambiar por muchas razones, sin que tenga
que cambiar el nombre.
Instalacion:
sudo aptitude install bind9
Hacemos una copia de seguridad del archivo que vamos a modificar:
cp /etc/bind/named.conf.local /etc/bind/named.conf.local.original
Editamos el archivo /etc/bind/named.conf.local con el siguiente comando:
nano /etc/bind/named.conf.local
160
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
y añadimos el siguiente contenido:
zone "empresa.com" {
type master;
file "db.empresa.com";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "db.192.168.1";
};
DOMINIO A CREAR EMPRESA.COM
RESOLUCION INVERSA
Para comprobar la sintaxis de los archivos de configuración ejecutamos el siguiente
comando:
named-checkconf
Si no aparece nada, la sintaxis de los archivos de configuración es correcta.
Creamos el archivo /var/cache/bind/db.empresa.com:
e incluimos el siguiente contenido:
$ORIGIN empresa.com.
$ttl 86400
empresa.com. IN SOA hydra root.hydra. (
10
6H
1H
2W
3H )
NS hydra
hydra A 192.168.1.10
Ubuntu1.empresa.com. IN A
192.168.1.20
www.empresa.com.
IN CNAME hydra.empresa.com.
Contenido del archivo: aquí añadimos todos los equipos de nuestra red que
quisiéramos mantener identificados, como es el caso de CLIENTE1con la direccion
192.168.1.20.
El dominio a crear es www.empresa.com donde el alias es www
root.hydra. Es la direccion de correo de root. root@hydra
161
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Comprobamos la zona que acabamos de crear:
named-checkzone empresa.com /var/cache/bind/db.empresa.com
La salida es
zone empresa.com/IN: loaded serial 10
OK
A continuación creamos el archivo /var/cache/bind/db.192.168.2 para la zona
inversa:
nano /var/cache/bind/db.192.168.1
e incluimos el siguiente contenido:
$ORIGIN 1.168.192.in-addr.arpa.
$TTL 86400 ; 1 dia
@
IN SOA hydra postmaster (
8
6H
1H
2W
3H )
NS hydra.empresa.com.
10 PTR hydra.empresa.com.
20.1.168.192.in-addr.arpa. IN PTR
Ubuntu1.empresa.com.
10 es la ip de nuestro servidor 192.168.1.10
postmaster. Es la direccion de correo de postmaster
Comprobamos la zona inversa recién creada:
named-checkzone 1.168.192.in-addr.arpa /var/cache/bind/db.192.168.1
Al igual que antes obtendremos un mensaje para indicarnos tanto si la zona es
correcta como si no lo es.
zone 1.168.192.in-addr.arpa/IN: loaded serial 8
162
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
OK
Reiniciamos el servicio:
service bind9 restart
Editamos el archivo /etc/resolv.conf para que nuestro servidor resuelva las peticiones
DNS:
nano /etc/resolv.conf
Cambiando el primero de los servidores DNS por la IP del nuestro:
nameserver 192.168.1.10
Probamos nuestro servidor de nombres:
dig empresa.com
la salida es la siguiente
Probamos la resolución inversa:
dig -x 192.168.1.10
163
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
la salida es la siguiente
Por último, para poder sacarle partido al servidor que hemos creado nos faltaría
incluir este servidor DNS en la configuración de los clientes. Para esto iremos al
servidor dhcp y lo incluiremos, en el fichero
nano /etc/dhcp3/dhcpd.conf
e incluimos la opcion
option domain-name "empresa.com";
Verificacion del servidor DNS en el cliente1.
La direccion 192.168.1.20 es correcta
conprobamos que el fichero /etc/resolv.conf contenga el dominio
164
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
En clientes windows agregamos la direccion dns en la interfaz local
165
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
20.SERVIDOR DHCP
Instalación
apt-get install dhcp3-server
Que es DHCP
Es un protocolo de red, donde un servidor provee los parámetros necesarios de
configuración y asignación de direcciones IP a las máquinas de una red.
Son las siglas del inglés Protocolo de Configuración Dinámica de Máquinas (Dynamic
Host Configuration Protocol).
Es un estándar en redes que también podemos encontrar en Windows u otros
Sistemas Operativos.
Configuración de parametros
Nombre de la máquina
Dirección del servidor DNS 192.168.1.10 , empresa.com
Puerta de enlace (pasarela o gateway)
Dirección de difusión (broadcast)
Máscara de red
Otros parámetros opcionales (direcciones de servicios adicionales, configuraciones
extras, bootp, etc.)
Asignaciones de IPs:
Manual: Hay una tabla que asigna las direcciones IP según las direcciones MAC.
Automática: Se asigna de forma permanente una dirección IP obtenida de un rango
de direcciones determinado por el administrador de DHCP. Los clientes pueden pedir
parámetros, quiero esta o cual MAC, sino, no me quiero configurar.
Dinámica: El procedimiento es idéntico al anterior pero las direcciones no son fijas.
Cada vez que un PC se conecta a la red consigue una IP diferente.
166
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Híbrida: Se pueden combinar opciones, por ejemplo, tener algunos PCs de la red con
direcciones manuales y el resto con direcciones asignadas de forma dinámica.
Paquetes del protocolo:
DHCPDISCOVER: envía el cliente DHCP en todas las direcciones de la red (broadcast)
buscando un servidor DHCP.
DHCPOFFER: envía el servidor a todas las direcciones, ya que el cliente aún no tiene
dirección de red. El servidor inicia el proceso de asignación de IP y parámetros de red
y hace una oferta de configuración al cliente.
DHCPREQUEST: El cliente recibe la oferta y responde con un paquete de petición.
También es broadcast, aún sabiendo la dirección del servidor DHCP. El cliente guarda
la configuración a la espera de una confirmación por parte del servidor.
DHCPACK: Una vez el servidor recibe una petición contesta con un paquete de
reconocimiento. El cliente, una vez recibe la confirmación, inicializa la NIC.
DHCPRELEASE: No es obligatorio pero los clientes pueden informar a los servidores
de cuando dejan de configurarlo (NIC apagada).
Acceso web
A traves de webmin.
Script de inicialización, reinicio, stop
/etc/init.d/dhcp3-server start - inicialización.
/etc/init.d/dhcp3-server restart - reinicio.
/etc/init.d/dhcp3-server stop - stop.
Ficheros de configuración
/etc/dhcp3/dhclient.conf
/etc/dhcp3/dhcpd.conf
/etc/default/dhcp3-server
dhclient.conf -> Ficheros de configuración del cliente
dhcpd.conf -> Ficheros de configuración del servidor
167
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
/etc/default/dhcp3-server -> Ficheros de configuración del servidor para configurar
por cual interfaz de red esta escuchando, se puede configurar una o varias inetrfaces.
Configuracion del servidor EMPRESA
Tenemos 8 subredes configuradas por subnetting
Tenemos 6 departamentos servidores – creativos – Desarrollo – comercial –
administracion – direccion
Tenemos 2 puntos de acceso inalámbricos
punto_accesso_alta - punto_access_obaja
Configuracion de interfaces
Una interfaz de red por cada vlan(eth1.---), una interfaz de red para el
servidor(eth1) y finalmente una interfaz de red que es la salida a internet(eth0).
168
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Fichero de configuración de intefaces /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo eth0 eth1 eth1.2 eth1.3 eth1.4 eth1.5 eth1.6 eth1.7 eth1.8 eth1.9
iface lo inet loopback
# The primary network interface salida a internet
iface eth0 inet static
address 192.168.6.10
netmask 255.255.255.0
broadcast 192.168.6.255
gateway 192.168.6.1
# The primary network interface ip del servidor empresa
iface eth1 inet static
address 192.168.1.10
netmask 255.255.255.240
broadcast 192.168.1.15
gateway 192.168.1.1
169
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
#VLAN2 servidores
iface eth1.2 inet static
address 192.168.1.17
netmask 255.255.255.240
network 192.168.1.16
broadcast 192.168.1.31
mtu 1500
vlan_raw_device eth1
#VLAN3 creativos
iface eth1.3 inet static
address 192.168.1.33
netmask 255.255.255.240
network 192.168.1.32
broadcast 192.168.1.47
mtu 1500
vlan_raw_device eth1
#VLAN4 Desarrollo
iface eth1.4 inet static
address 192.168.1.49
netmask 255.255.255.240
network 192.168.1.48
broadcast 192.168.1.63
mtu 1500
vlan_raw_device eth1
#VLAN5 comercial
iface eth1.5 inet static
address 192.168.1.65
netmask 255.255.255.240
network 192.168.1.64
broadcast 192.168.1.79
mtu 1500
vlan_raw_device eth1
170
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
#VLAN6 administracion
iface eth1.6 inet static
address 192.168.1.81
netmask 255.255.255.240
network 192.168.1.80
broadcast 192.168.1.95
mtu 1500
vlan_raw_device eth1
#VLAN7 direccion
iface eth1.7 inet static
address 192.168.1.97
netmask 255.255.255.240
network 192.168.1.96
broadcast 192.168.1.111
mtu 1500
vlan_raw_device eth1
#VLAN8 punto_accesso_alta
iface eth1.8 inet static
address 192.168.1.113
netmask 255.255.255.240
network 192.168.1.112
broadcast 192.168.1.127
mtu 1500
vlan_raw_device eth1
#VLAN9 punto_accesso_baja
iface eth1.9 inet static
address 192.168.1.129
netmask 255.255.255.240
network 192.168.1.128
broadcast 192.168.1.143
mtu 1500
171
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
vlan_raw_device eth1
Fichero de configuración por donde escucha el servidor dhcp
/etc/default/dhcp3-server
Configuracion del fichero dhcpd.conf
# Sample configuration file for ISC dhcpd for Debian
#
# Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as
# configuration file instead of this file.
#
# $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $
#
# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
# behavior of the version 2 packages ('none', since DHCP v2 didn't
# have support for DDNS.)
ddns-update-style none;
# option definitions common to all supported networks...
option domain-name "hydra.empresa.com";
option domain-name-servers 192.168.1.10;
default-lease-time 600;
max-lease-time 7200;
172
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
######################################################################
########################################
######################################################################
########################################
####################################### R E D E S
############################################################
# servidores
subnet 192.168.1.16 netmask 255.255.255.240 {
range 192.168.1.17 192.168.1.30;
option routers 192.168.1.1;
}
# Creativos
subnet 192.168.1.32 netmask 255.255.255.240 {
range 192.168.1.33 192.168.1.46;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
host prueba_creativos {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.34;
option host-name "prueba_creativos";
}
}
# Desarrollo
subnet 192.168.1.48 netmask 255.255.255.240 {
range 192.168.1.49 192.168.1.62;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
host prueba_desarrollo {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.50;
option host-name "prueba_desarrollo";
}
}
#comercial
173
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
subnet 192.168.1.64 netmask 255.255.255.240 {
range 192.168.1.65 192.168.1.78;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
host prueba_comercial {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.66;
option host-name "prueba_comercial";
}
}
#administracion
subnet 192.168.1.80 netmask 255.255.255.240 {
range 192.168.1.81 192.168.1.94;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
host prueba_administracion {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.82;
option host-name "prueba_administracion";
}
}
#direccion
subnet 192.168.1.96 netmask 255.255.255.240 {
range 192.168.1.97 192.168.1.110;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
host prueba_direccion {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.98;
option host-name "prueba_direccion";
}
}
#punto_acceso_alta
subnet 192.168.1.112 netmask 255.255.255.240 {
range 192.168.1.113 192.168.1.126;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
174
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
host prueba_punto_acceso_alta {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.114;
option host-name "prueba_punto_acceso_alta";
}
}
#punto_acceso_baja
subnet 192.168.1.128 netmask 255.255.255.240 {
range 192.168.1.129 192.168.1.142;
option routers 192.168.1.1;
# equipo cliente con el que se realizan las pruebas
host prueba_punto_acceso_baja {
hardware ethernet 08:00:27:a5:7b:50;
fixed-address 192.168.1.130;
option host-name "prueba_punto_acceso_baja";
}
}
log-facility local7;
Clientes del servidor DHCP
175
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
Actividad de servidor dhcp
176
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
21. BACKUP LDAP
Backup y disaster recovery de BBDD en LDAP y OPENLDAP
Desgraciadamente OpenLDAP no se integra muy bien con las aplicaciones comerciales
de backup.
Por suerte el sistema de réplica nos permite tener varios servidores que son accedidos
desde las aplicaciones, de tal forma que si falla uno siempre podemos tener otro
servidor con todos los datos.
1.- En “caliente”. Exportando todo el directorio con el comando
slapcat -v -l backup.txt
Para importarlo de Nuevo se usaría el comando:
slapadd -v -l backup.txt
Ejemplo de un script de backup diario para Linux:
Previamente deberemos crear la carpeta /SEGURIDAD donde guardaremos la copias de
seguridad de todos los dias, este script borrara las copias de mas de 15 dias de
antigüedad.
#!/bin/sh
FECHA_ACTUAL=`date +%d-%m-%Y`
# Creamos la copia de seguridad en la carpeta SEGURIDAD
cd /root/SEGURIDAD
slapcat -v -l backup-$FECHA_ACTUAL.txt
# Borra las copias almacenadas más de 15 días
find ~/SEGURIDAD/ -type f -name "*txt" -ctime +15 -exec rm -f {} \;
CRON
Escribimos crontab e y agregamos
0 0 * * * . ~/SEGURIDAD/seguridad.sh
177
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
178
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
22.BIBLIOGRAFIA
LDAP Y OPENLDAP
http://tldp.org/HOWTO/LDAP-HOWTO/
http://www.openldap.org/
http://es.wikipedia.org/wiki/LDAP
http://www.faqs.org/rfcs/rfc2251.html
http://tuxjm.net/2009/10/11/configurar-un-servidor-controlador-de-dominio-con-samba-yopenldap-en-ubuntu-server-hardy-804/
https://help.ubuntu.com/10.10/serverguide/C/openldap-server.html
http://albanianwizard.org/ubuntu-10-0-4-lucid-lynx-ldap-configuration-the-working-howto.albanianwizard
http://cvirtual.filosofia.cu/almacen/cursos-y-manuales/linux-debian-yubuntu/openldap/ubuntu-10.04-lucid-lynx-configuracion-ldap
SAMBA ( PDC )
http://tuxnetworks.blogspot.com/2010/07/howto-samba-ldap-on-1004-lucid-short.html
http://www.howtoforge.com/openldap-samba-domain-controller-ubuntu7.10
http://www.opinsys.fi/en/setting-up-openldap-on-ubuntu-10-04-alpha2
http://basictheprogram.blogspot.com/2011/03/ubuntu-bloke-howto-samba-ldap-on-1004.html
http://tuxjm.net/docs/samba+ldap-como/html-multiples/index.html
http://tuxjm.net/docs/Configurar_Servidor_Controlador_de_Dominio_con_Samba_y_OpenLDAP/Ub
untu/html-multiples/
http://www.guia-ubuntu.org/index.php?title=Samba
http://www.bdat.net/documentos/validacion_ldap/c15.html
SERVIDOR NTP
http://www.linuxparatodos.net/portal/staticpages/index.php?page=como-ntp
SERVIDOR DHCP y DNS
http://es.scribd.com/doc/40651592/Manual-Dhcp-DNS-Linux-ubuntu-La-Red-38110
179
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
http://www.copernic.cat/portal2/
http://www.educiencia.org/miwiki/index.php?title=DNS
http://www.educiencia.org/miwiki/index.php?title=DHCP
SERVIDOR SSH
http://www.guia-ubuntu.org/index.php?title=Servidor_ssh
SERVIDOR CUPS
http://doc.ubuntu-es.org/CUPS_servidor_de_impresi%C3%B3n
http://ulibertad.wordpress.com/2007/09/24/instalar-servidor-de-impresion-y-una-impresoracon-cups/
PAM
http://www.educiencia.org/miwiki/index.php?title=Pam
SERVIDOR SQUID
http://www.linuxparatodos.net/portal/staticpages/index.php?page=19-0-como-squid-general
http://www.squid-cache.org/
IPTABLES
http://www.pello.info/filez/firewall/iptables.html
PHPLDAPADMIN
http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page
WEBMIN
http://www.webmin.com/docs.html
GENÉRICAS
http://www.linuxparatodos.net/
http://www.educiencia.org/portal/
http://www.estrellateyarde.org/
180
CFGS - ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS /2011
http://www.tuxapuntes.com/drupal/
http://tuxjm.net/
http://sliceoflinux.com/
…
Y sobretodo muchísimo http://www.google.es/
Esta lista no es exhaustiva. De hecho se han visitado unas decenas más de webs donde se ha
recogido información de algún tipo, así como manuales de la red.
181

Documentos relacionados