Sistemas Operativos Avanzados

117
Sistemas Operativos Avanzados

Transcript of Sistemas Operativos Avanzados

Sistemas

Operativos

Avanzados

2

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

3

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Índice

Presentación 5 Red de contenidos 7

Unidad de Aprendizaje 1

NETWORKING LINUX, ARREGLOS DE DISCOS Y VOLÚMENES LÓGICOS 10 1.1 Tema 1 : Networking en Linux 11

1.1.1 : Configuración básica de los parámetros IP 11 1.1.2 : Configuración avanzada de IPv4 17 1.1.3 1.1.4 1.1.5

: : :

Acoplamiento de las interfaces de red - Bonding Utilitarios de red: ping, netstat y traceroute Acceso remoto por SSH

17 20 21

: 1.2 Tema 2 : Arreglo de discos y Volúmenes Lógicos 25

1.2.1 1.2.2 1.2.3

: : :

Niveles de RAID Configuración de arreglos de discos RAID 1 Administración de volúmenes lógicos – LVM

26 30 39

Unidad de Aprendizaje 2

SERVICIOS DE INFRAESTRUCTURA DE RED 48 2.1 Tema 3 : Servidor de Nombres de Dominio 49

2.1.1 : Jerarquía del árbol DNS 49 2.1.2 : Zonas de Dominios y registros DNS 51 2.1.3 : Servidor DHCP 57

2.2 Tema 4 : Servidor de autenticación LDAP 61

2.2.1 : Servicio LDAP 61 2.2.2 : Estructura del árbol de directorio LDAP 61 2.2.3 : Implementación del servidor OPENLDAP 62

2.3 Tema 5 : Servidor SAMBA 71

2.3.1 : Servicio SAMBA 71 2.3.2 : Componentes del servicio SAMBA. 72 2.3.3 : Implementación del servidor SAMBA 72

Unidad de Aprendizaje 3

SERVICIO DE MENSAJERÍA 79 3.1 Tema 6 : Servidor de Correo Electrónico 80

3.1.1 : Servicio de correo electrónico 80 3.1.2 : Componentes de un sistema genérico de correo electrónico 81 3.1.3 : Servicio de correo electrónico colaborativo Zimbra ZCS 82

4

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Unidad de Aprendizaje 4

SERVICIO DE SEGURIDAD PERIMETRAL 98 4.1 Tema 6 : Servidor de Seguridad Perimetral 98

4.1.1 : Servicio de Seguridad Perimetral 99 4.1.2 : UTM 99 4.1.3 : Endian Firewall UTM 160 4.1.4 : Escenarios de implementación de Endian Firewall UTM 101 4.1.5 : Instalación de Endian Firewall UTM 104

4.1.6 : Configuración de Endian Firewall UTM 109

5

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Presentación Sistemas Operativos Avanzados es un curso que pertenece a la línea de sistemas operativos y se dicta en la carrera de Redes y Comunicaciones. Brinda un conjunto de conocimientos y herramientas que permite a los estudiantes implementar servicios de redes que permitan cubrir las necesidades y expectativas de las empresas, considerando criterios de alta disponibilidad, tolerancia a fallos y balanceo de carga. En las implementaciones de los servicios de red utilizaremos la distribución Linux Centos que es un clon de Red Hat Enterprise Linux utilizado como plataforma de servidores en la mayoría de empresas. Además en la parte final de curso utilizaremos soluciones integrales creadas con software libre para implementar servicios se correo electrónico colaborativo y sistemas de seguridad unificado. En este mundo dinámico, de constantes cambios en infraestructura y redes debemos aceptar el reto de proponer soluciones que estén directamente relacionadas con los necesidades de las empresas utilizando las diversas propuestas de la comunidad de software libre. El curso es eminentemente práctico que está centrado en la administración avanzada de servicios de infraestructura. En primer lugar, se inicia con la configuración básica y avanzada de los parámetros IP en el servidor. Luego se implementaran los arreglos de discos para conocer las soluciones de alta disponibilidad en las unidades de almacenamiento. En este punto realizaremos la implementación por software con la finalidad de conocer los beneficios de los arreglos RAID. Luego veremos las implementaciones de los servicios de redes como SSH, DNS, DHCP, LDAP y SAMBA como servicios necesarios de infraestructura corporativa. Luego se implementara una solución de correo electrónico colaborativo como Zimbra Collaboration Suite y cerramos el curso implementando una solución de seguridad unificada como Endian Firewall UTM, que es una versión reducida de Linux Centos preparada como solución de seguridad perimetral.

6

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

7

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Red de contenidos

Sistemas Operativos Avanzados

Unidad 1

Unidad 3

Unidad 2

Unidad 4

Configuración de Red

Servidor de Correo

Colaborativo

Alta disponibilidad

RAID LVM

Servicio De directorio

LDAP

Servicios DNS y DHCP

Servidor SAMBA

UTM Endian Firewall

Instalación de Zimbra

Collaboration Suite

8

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

9

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

CONFIGURACIÓN DE RED

IMPLEMENTACIÓN DE ARREGLOS

DE DISCOS Y VOLÚMENES

LÓGICOS

LOGRO DE LA UNIDAD DE APRENDIZAJE Al término de la unidad, los estudiantes realizaran la configuración de los parámetros de red para un servidor en producción y también desplegara soluciones de alta disponibilidad y tolerancia a fallos.

TEMARIO:

ACTIVIDADES PROPUESTAS

Configurar eficientemente los parámetros IP para un servidor en producción.

Establecer conexión remota administrativa al servidor Linux Centos.

Implementar arreglos de discos. RAID por software

Implementar volúmenes lógicos LVM.

1.1 Tema 1 : Networking en Linux 1.1.1 : Configuración básica de los parámetros IP. 1.1.2 : Configuración avanzada de red – IP Alias 1.1.3 : Acoplamiento de interfaces de red – Bonding 1.1.4 : Utilitarios: ping, netstat, traceroute 1.1.5 : Acceso remoto con SSH

1.2 Tema 2 : Arreglo de Discos y Volúmenes Lógicos

1.2.1 : Niveles de RAID 1.2.2 : implementación de arreglos de discos RAID 1 1.2.3 : Administración de Volúmenes Lógicos - LVM

UNIDAD

1

10

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

11

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

1.1 NETWORKING EN LINUX

Configurar la red en Linux Centos requiere se entienda perfectamente los fundamentos del direccionamiento IPv4 y saber cómo utilizar cualquier editor de texto (vi, vim, nano, gedit, etc)

En Centos, Fedora y Red Hat Enterprise Linux la detección de las tarjetas de red es automática mientras se trate de dispositivos soportados. Para consultar la lista de dispositivos compatibles, visite hardware.redhat.com.

Pueden determinarse los dispositivos de red presentes en el sistema revisando el contenido del directorio /sys/class/net/:

[root@server ~]# ls -l /sys/class/net/

lrwxrwxrwx. 1 root root 0 Ago 14 17:24 eth0 -> ../../devices/pci0000:00/0000:00:03.0/net/eth0 lrwxrwxrwx. 1 root root 0 Ago 14 17:24 lo -> ../../devices/virtual/net/lo

1.1.1 Configuración básica de los parámetros IP La configuración de la dirección IP en un servidor determina la efectiva implementación del servicio de red. En este capítulo aprenderá a configurar los parámetros del direccionamiento IPv4, recuerde que los servidores en la red siempre deben tener una configuración estática del direccionamiento.

1.1.1.1 Herramienta NetworkManager.

En Centos 6 y Red Hat Enterprise Linux 6, “NetworkManager” viene activo de modo predeterminado, salvo que se haga la instalación mínima o la instalación básica de servidor. Si desea impedir que NetworkManager gestione algún dispositivo de red en particular y que éste sea gestionado por el servicio network, edite el archivo de configuración correspondiente al dispositivo a utilizar. Por ejemplo si quiere desactivar NetworkManager en la tarjeta eth0 ejecute la siguiente línea de comando:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

Modifique el valor de la variable NM_CONTROLLED de yes a no, de la siguiente manera:

DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp NM_CONTROLLED=no DOMAIN=cibertec.pe

Para aplicar los cambios, reinicie el servicio de red:

[root@server ~]# service network restart

12

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Otra opción para prescindir del uso de NetworkManager, es desactivar por completo es

servicio, siendo que su uso sólo tiene sentido en una computadora portátil que se conecta a múltiples redes inalámbricas o bien un sistema escritorio donde se quiere permitir al usuario regular poder controlar los dispositivos de red. Para desactivar NetworkManager, ejecute la

siguiente línea de comandos:

[root@server ~]# service NetworkManager stop

[root@server ~]# chkconfig NetworkManager off

1.1.1.2 Nombre de host (HOSTNAME)

La resolución de nombres local utiliza el archivo HOSTS, por lo tanto tiene que editar el

archivo /etc/hosts y agregar una entrada con el nombre de host y la dirección IP asociada:

[root@server ~]# vim /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.2 server.cibertec.pe server

El nombre de host debe ser un FQDN (Fully Qualified Domain Name o Nombre de Dominio Plenamente Calificado) resuelto por un servidor de nombres de domino (DNS). Puede definir esta configuración editando el archivo /etc/sysconfig/network y asignado el valor de la variable HOSTNAME de la siguiente manera:

[root@server ~]# vim /etc/sysconfig/network

NETWORKING=yes HOSTNAME=server.cibertec.pe

A partir de Centos 6 y Red Hat Enterprise Linux 6, la variable HOSTNAME puede ser

establecida en el archivo de configuración de cualquier dispositivo de red del sistema. A continuación un ejemplo de la configuración:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp NM_CONTROLLED=no DOMAIN=cibertec.pe HOSTNAME=server.cibertec.pe

Para aplicar los cambios, ejecute lo siguiente:

13

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# service network restart

1.1.1.3 Configuración de los parámetros IPv4 Para configurar la dire4ccion IP debe editar el archivo ifcfg-ethX, donde x=0, 1, 2, etc. Recuerde el objetivo de cada uno de los parámetros al momento de asignar el valor respectivo:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 ONBOOT=yes BOOTPROTO=static

HWADDR=42:77:FE:AA:CC:2B NM_CONTROLLED=no IPADDR=192.168.1.2 NETMASK=255.255.255.0 GATEWAY=192.168.1.1

DEVICE: Indica el nombre del dispositivo que está configurando

ONBOOT: Si necesita que el sistema reconozca el adaptador de red en el proceso de carga o cuando reinicie el servicio network el valor que debe asignar es yes, caso contrario utilice el valor no.

BOOTPROTO: Define si la configuración será manual (static) o si va a recibir la dirección IP desde un servidor DHCP.

IPADDR: Permite asignar la dirección IP.

NETMASK: Permite asignar la máscara de subnet.

GATEWAY: Permite asignar la dirección IP del dispositivo que se utiliza como pasarela en la red.

Para aplicar los cambios, ejecute la siguiente línea de comandos:

[root@server ~]# service network restart

1.1.1.4 Servidores de nombres DNS

Hay dos variables a configurar: dominio de búsqueda predeterminado y al menos un servidor de nombres. En CentOS 6 y Red Hat Enterprise Linux 6, se pueden establecer añadiendo al archivo de configuración de cualquier dispositivo de red, las variables DOMAIN, DNS1, DNS2 y DNS3. Editar el archivo ifcfg-eth0 (eth0 es el ejemplo en este escenario)

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp

DOMAIN=cibertec.pe DNS1=8.8.8.8 DNS2=8.8.4.4

14

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Para aplicar los cambios, ejecute la siguiente línea de comandos:

[root@server ~]# service network restart

En CentOS 5 y Red Hat Enterprise Linux 5 (y versiones anteriores), para configurar las direcciones IP de los servidores DNS hay que editar el archivo /etc/resolv.conf:

[root@server ~]# vim /etc/resolv.conf

search cibertec.pe nameserver 8.8.8.8 nameserver 8.8.4.4

Si se modifica directamente el archivo /etc/resolv.conf los cambios aplican de manera inmediata, sin necesidad de reiniciar el servicio de red.

1.1.1.5 Configuración no persistente de una tarjeta de red

La configuración no persistente permite asignar los parámetros Ip a una tarjeta de red de manera temporal, es decir, si reiniciamos el sistema o el servicio de red perdemos la configuración realizada. Para la configuración no persistente utilizamos la siguiente línea de comandos: [root@server ~]# ifconfig eth0 192.168.1.2 netmask 255.255.255.0 [root@server ~]# route add default gw 192.168.1.1 eth0

1.1.1.6 Verificación de la configuración de las interfaces de red Para verificar la configuración de todas las interfaces de red utilizamos la siguiente línea de comandos:

[root@server ~]# ifconfig

eth0 : Link encap:Ethernet HWaddr 08:00:27:04:AE:83

inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe04:ae83/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:47 errors:0 dropped:0 overruns:0 frame:0 TX packets:60 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:6168 (6.0 KiB) TX bytes:8251 (8.0 KiB)

lo : Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:4 errors:0 dropped:0 overruns:0 frame:0 TX packets:4 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0

15

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

v

Si Ud. desea visualizar solo la configuración de una tarjeta de red, por ejemplo verificar la configuración de la tarjeta de red eth0 puede utilizar la siguiente línea de comandos:

[root@server ~]# ifconfig eth0

eth0 : Link encap:Ethernet HWaddr 08:00:27:04:AE:83

inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe04:ae83/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:47 errors:0 dropped:0 overruns:0 frame:0 TX packets:60 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:6168 (6.0 KiB) TX bytes:8251 (8.0 KiB)

Pero si necesita visualizar el resumen de la configuración IPv4 de todas las interfaces de red puede utilizar la siguiente línea de comandos:

[root@server ~]# ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

link/ether 08:00:27:04:ae:83 brd ff:ff:ff:ff:ff:ff inet 192.168.1.2/24 brd 192.168.1.255 scope global eth0 inet6 fe80::a00:27ff:fe04:ae83/64 scope link valid_lft forever preferred_lft forever

Si necesitamos verificar la configuración del Default Gateway utilizamos la siguiente línea de comandos:

[root@server ~]# route –n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

Por último, hay que verificar la resolución de nombres DNS, y este procedimiento es muy importante para que nuestro servidor tenga una configuración adecuada y poder implementar cualquier otro servicio de red.

16

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Para realizar las consultas DNS podemos utilizar dos comandos dig y nslookup con la siguiente línea de comandos:

[root@server ~]# dig google.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> google.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19714 ;; flags: qr rd ra; QUERY: 1, ANSWER: 16, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;google.com. IN A ;; ANSWER SECTION: google.com. 208 IN A 181.64.130.112 google.com. 208 IN A 181.64.130.90 google.com. 208 IN A 181.64.130.101 google.com. 208 IN A 181.64.130.88 google.com. 208 IN A 181.64.130.121 google.com. 208 IN A 181.64.130.84 google.com. 208 IN A 181.64.130.102 google.com. 208 IN A 181.64.130.106 google.com. 208 IN A 181.64.130.99 google.com. 208 IN A 181.64.130.95 google.com. 208 IN A 181.64.130.110 google.com. 208 IN A 181.64.130.113 google.com. 208 IN A 181.64.130.80 google.com. 208 IN A 181.64.130.91 google.com. 208 IN A 181.64.130.123 google.com. 208 IN A 181.64.130.117

;; Query time: 222 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Thu Ago 14 19:00:03 2014 ;; MSG SIZE rcvd: 284

[root@server ~]# nslookup

> google.com Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer:

Name: google.com Address: 181.64.130.37 Name: google.com Address: 181.64.130.27 Name: google.com Address: 181.64.130.38

17

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

1.1.2 Configuración Avanzada - IP Alias

En CentOS y Red Hat Enterprise Linux podemos configurar direcciones IPv4 secundarias a una tarjeta de red, a esto se denomina IP Alias.

Debemos configurar interfaces virtuales que estarán referenciadas a una interface de red física, es decir, podemos asignar más de una dirección IP a una tarjeta de red.

Para configurar una interface virtual (por ejemplo eth0:0) de manera no persistente debemos escribir la siguiente línea de comandos: [root@server ~]# ifconfig eth0:0 172.16.1.5 netmask 255.255.255.0 Si necesitamos configurar de manera permanente la configuración de nuestra interface virtual, debemos editar el archivo ifcfg-eth0:0:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0:0

DEVICE=eth0:0 ONBOOT=yes BOOTPROTO=static

IPADDR=172.16.1.5 NETMASK=255.255.255.0

1.1.3 Acoplamiento de las interfaces de red (bonding) El acoplamiento de tarjetas (bonding) permite configurar una solución de alta disponibilidad, tolerancia a fallos y balanceo de carga a nivel de las interfaces físicas (tarjetas de red). Por lo tanto permite aumentar la seguridad y el rendimiento de las tarjetas de red en nuestros servidores Linux.

1.1.3.1 Tipos de Bonding

Modo 0 (BALANCE-RR): Se emplea un algoritmo round robin entre la cola virtual y las de los esclavos. Es algo así como un pequeño paquete para un esclavo y otro paquete pequeño para el siguiente esclavo, etc. Es el algoritmo que se usa por defecto.

Modo 1 (ACTIVE BACKUP): Este modo no balancea la carga, usa sólo un esclavo y en caso de fallar, usa el siguiente disponible.

Modo 2 (BALANCE-XOR): Emplea una fórmula para decidir por qué tarjeta de red sale: (source-MAC xor dest-MAC).

Modo 3 (BROADCAST): Se transmite todo por todas las interfaces. Este método no balancea tampoco, pero provee tolerancia a fallos.

Modo 4 (802.3ad): Emplea algoritmos definidos en el estándar IEEE 802.3ad.

18

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Modo 5 (BALACE-TB): Balancea la carga de transmisión entre los esclavos dependiendo de la velocidad de estos y de la carga total. El tráfico es recibido por un esclavo, en caso de fallar otro esclavo toma su MAC y continúa recibiendo tráfico.

Modo 6 (BALANCE-ALB): Realiza el balanceo anterior además de un balanceo también en la recepción. Este método debe modificar las MAC de los esclavos estando las tarjetas activas, esto debe estar soportado por el driver para poder usar este método.

Es importante resaltar que algunos métodos necesitan ciertas configuraciones y capacidades en el switch al que conectas las tarjetas de red esclavos. Si el switch tiene un único link de salida a la red y va a la misma velocidad que nuestras tarjetas de red esclavos, el balanceo se hace inútil ya que se produce un cuello de botella en el link de salida del switch. Los modos 1, 5 y 6 no requiere ninguna configuración especial en el switch, ideales si no tenemos acceso a la configuración del equipamiento de red pero el modo 4 requiere que el switch tenga los puertos donde conectamos los esclavos en modo 802.3ad. Esto depende de cada switch, por ejemplo, en los switches de Cisco se puede implementar EtherChannel y debe estar en modo LACP.

1.1.3.2 Escenario de implementación de bonding: El servidor de base datos necesita un sistema de alta disponibilidad a nivel de interfaces de red. Usted tiene dos tarjetas “eth0” y “eth1” para configurar el multilink o bonding “bond0”

Figura 1: Interface Bonding Fuente: Elaboración Propia

(1) Como usuario root crear y editar el archivo bonding.conf en el directorio /etc/modprobe.d. Puede utilizar cualquier nombre, lo importante es que la extensión del archivo sea .conf.

[root@server ~]# vim /etc/modprobe.d/bonding.conf

alias bond0 bonding options bonding mode=5 miimon=100

eth0

eth1

bond0

Interface Bonding

19

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(2) Crear y editar el archive de configuración ifcfg-bond0 para la interface bonding:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0 ONBOOT=yes BOOTPROTO=none

IPADDR=192.168.1.2 NETMASK=255.255.255.0 USERCTL=no

(3) Por ultimo debemos editar las interfaces que forman parte del bonding (eth0 y eth1), para esto hay que editar los archivos de configuración de cada interface:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 ONBOOT=yes BOOTPROTO=none MASTER=bond0 SLAVE=yes USERCTL=no

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1 ONBOOT=yes BOOTPROTO=none

MASTER=bond0 SLAVE=yes USERCTL=no

(4) Finalmente reiniciamos el servicio de red y verificamos la existencia de la interface bonding (bond0)

[root@server ~]# service network restart

[root@server ~]# ifconfig

20

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

bond0 Link encap:Ethernet HWaddr 08:00:27:04:AE:83 inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe04:ae83/64 Scope:Link

UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1

RX packets:1453 errors:0 dropped:0 overruns:0 frame:0 TX packets:857 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:157878 (154.1 KiB) TX bytes:140571 (137.2 KiB) eth0 Link encap:Ethernet HWaddr 08:00:27:04:AE:83

UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1

RX packets:1316 errors:0 dropped:0 overruns:0 frame:0 TX packets:828 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:144159 (140.7 KiB) TX bytes:134053 (130.9 KiB) eth1 Link encap:Ethernet HWaddr 08:00:27:04:AE:83

UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:138 errors:0 dropped:0 overruns:0 frame:0 TX packets:30 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:13785 (13.4 KiB) TX bytes:6776 (6.6 KiB)

1.1.4 Utilitarios de Red: Ping, Traceroute, Netstat

1.1.4.1 PING

PING es una herramienta que permite comprobar si hay realmente conectividad. Puede

ejecutar ping hacia cualquier dirección de la red local o de internet con la siguiente línea de

comandos:

[root@server ~]# ping 192.168.1.10

[root@server ~]# ping dc.cibertec.pe

[root@server ~]# ping www.google.com

1.1.4.2 NETSTAT

Netstat es una herramienta utilizada para supervisar las conexiones de red, estadísticas de

interfaces y asignaturas de multidifusión. Se utiliza principalmente para encontrar problemas

en una red y para medir el tráfico de red como una forma de calcular el desempeño de ésta.

21

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Para visualizar todas las conexiones activas en el sistema, tanto TCP como UDP, se utiliza la opción – a: [root@server ~]# netstat -a

Para mostrar solo las conexiones activas por TCP, se utiliza:

[root@server ~]# netstat -t

Para mostrar solo las conexiones activas por UDP, se utiliza:

[root@server ~]# netstat -u

1.1.4.3 TRACEROUTE Traceroute es una herramienta que permite determinar el camino que siguen los paquetes

de red desde un equipo a otro y así determinar si existe algún problema en algún momento

entre ambos. Si tenemos un problema notable de velocidad, con Traceroute podemos

verificar en qué momento sucede el problema y así intentar encontrar la solución más

adecuada.

[root@server ~]# traceroute google.com

traceroute to google.com (181.64.130.42), 30 hops max, 60 byte packets

1 10.130.0.1 (10.130.0.1) 13.068 ms 12.894 ms 16.412 ms

2 10.226.254.1 (10.226.254.1) 12.803 ms 16.902 ms 16.419 ms

3 10.111.2.93 (10.111.2.93) 40.756 ms 10.111.2.97 (10.111.2.97) 40.607 ms

10.111.2.81 (10.111.2.81) 40.514 ms

6 10.7.0.173 (10.7.0.173) 40.330 ms 22.038 ms 16.121 ms

7 181.64.130.1 (181.64.130.1) 17.699 ms 17.544 ms 17.340 ms

8 192.168.1.25 (192.168.1.25) 3001.151 ms !H 3000.721 ms !H 3000.685 ms

1.1.5 Acceso remoto por SSH SSH (Secure Shell) es un protocolo de red que permite establecer una comunicación a

través de un canal seguro entre un cliente local y un servidor remoto. Utiliza una clave

pública cifrada para autenticar el servidor remoto y, opcionalmente, permitir al servidor

remoto autenticar al usuario.

22

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SSH provee confidencialidad e integridad en la transferencia de los datos utilizando

criptografía y MAC (Message Authentication Codes, o Códigos de Autenticación de

Mensaje). De modo predeterminado, escucha peticiones a través del puerto 22 por TCP.

Figura 2: Establecimiento de la conexión SSH Fuente: Elaboración Propia

A continuación revisaremos algunas herramientas que integran al protocolo SSH:

SFTP (SSH File Transfer Protocol) SFTP es un protocolo que provee funcionalidad de transferencia y manipulación de ficheros a través de un flujo confiable de datos. Utiliza SSH para proveer una transferencia segura de ficheros.

SCP.(Secure Copy) SCP es un protcolo seguro para transferir ficheros entre un equipo local y otro remoto, a través de SSH. Básicamente, es idéntico a RCP (Remote Copy, o Copia Remota), con la diferencia de que los datos son cifrados durante la transferencia para evitar la extracción potencial de información a través de programas de captura de las tramas de red. SCP solo implementa la transferencia de ficheros, pues la autenticación requerida es realizada a través de SSH.

OpenSSH. (Open Secure Shell) OpenSSH es un proyecto creado por el equipo de desarrollo de OpenBSD y actualmente dirigido por Theo de Raadt. Se considera es más segura que su contraparte propietaria debido a la constante auditoria que se realiza sobre el código fuente por parte de una gran comunidad de desarrolladores, una ventaja que brinda al tratarse de un proyecto de fuente abierta.

Enviar clave SSH

Las claves publicas coinciden

Inicio de sesión SSH

Servidor SSH Cliente SSH

23

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

OpenSSH incluye servicio y clientes para los protocolos SSH, SFTP y SCP. Puede descargarlo la última versión de la siguiente dirección: http://www.openssh.org/. También puede utilizar la herramienta yum.

1.1.5.1 Implementación de OPENSSH

(1) Descargar e instalar el paquete utilizando la siguiente línea de comandos:

root@server ~]# yum –y install openssh openssh-server openssh-clients

(2) Editar el archivo de configuración del servicio sshd_config

[root@server ~]# vim /etc/ssh/sshd_config

Debe cambiar los siguientes parámetros:

Port:

Para elevar el nivel de seguridad del servicio SSH debe cambiar el puerto por defecto

del servicio (22/TCP) por cualquier otro puerto por ejemplo:

Port 46699.

ListenAddress: Por defecto el servicio SSH será atendido por todas las interfaces de red, es

recomendable especificar la dirección IP de la interface por donde debe atender el

servicio, por ejemplo:

ListenAddress 192.168.1.2

PermitRootLogin: Establece si se va a permitir el acceso directo del usuario root al servidor SSH. Si se

va a permitir el acceso hacia el servidor desde redes públicas, resultará importante

utilizar este parámetro con el valor no, por ejemplo:

PermitRootLogin no

X11Forwarding: Establece si se permite o no la ejecución remota de aplicaciones gráficas. Si se va a acceder hacia el servidor desde red local, este parámetro puede quedarse con el valor yes. Si se va a permitir el acceso hacia el servidor desde redes públicas, resultará prudente utilizar este parámetro con el valor no.

X11Forwarding yes

AllowUsers: Permite restringir el acceso por usuario y, opcionalmente, el equipo desde el cual pueden hacerlo. El siguiente ejemplo restringe el acceso hacia el servidor SSH para que solo puedan hacerlo los usuarios user1 y user2, desde cualquier equipo.

AllowUsers user1 user2

24

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Si desea restringir el acceso de usuario y el equipo desde el cual pueden conectarse

entonces utilice la siguiente línea de comandos:

AllowUsers [email protected]

(3) Ahora debe iniciar el servicio SSH, utilizando la siguiente línea de comandos:

[root@server ~]# service sshd start

(4) Si el servicio ya está levantado puede reiniciarlo para aplicar los cambios:

[root@server ~]# service sshd restart

1.1.5.2 Prueba y conexión SSH (1) Para acceder al servidor SSH desde un cliente Linux hacia el servidor por SSH, basta

con ejecutar desde el sistema cliente el comando ssh definiendo el usuario a utilizar y el servidor al cual conectar:

[root@server ~]# ssh usuario@servidor

[root@server ~]# ssh [email protected]

(2) Para acceder hacia un puerto en particular, se utiliza el parámetro -p. En el siguiente

ejemplo, utilizando la cuanta del usuario “user1”, se intentará acceder al servidor con dirección IP 192.168.1.2, el cual tiene un servicio de SSH que responde peticiones a

través del puerto 46699.

[root@server ~]# ssh -p 46699 [email protected]

(3) Prueba con el commando SCP

Para realizar transferencias de ficheros a través de SCP, es necesario conocer las rutas de los directorios objetivos del equipo remoto. A continuación se describen algunas de las opciones más importantes del mandato scp.

- p : Preserva el tiempo de modificación y tiempo de acceso del fichero original.

- P : Especifica el puerto para realizar la conexión.

- r : Copia recursivamente los directorios especificados.

Ejemplos de uso del comando SCP:

Transferir el fichero archivo.txt preservando los permisos y tiempos hacia el directorio del usuario user2 en el servidor 192.168.1.2:

[root@server ~]# ssh -p archive.txt [email protected]:~/

25

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Transferir la carpeta MisDocumentos y su contenido preservando los permisos y tiempos hacia el directorio del usuario user2 en el servidor 192.168.1.2:

root@server ~]# scp -rp MisDocumentos [email protected]:~/

1.2 ARREGLO DE DISCOS Y VOLÚMENES LÓGICOS

El término RAID (Redundant Array of Independent or Inexpensive Disks) es una arquitectura para el almacenamiento de datos en discos duros, que basada en niveles define el tipo de tolerancia del sistema y la forma en la que los datos se distribuyen entre los dos o más discos que conforman el “array” o arreglo.

RAID utiliza una técnica llamada “striping” para dividir la información antes de distribuirla en bloques que son almacenados de forma organizada en los diferentes discos del “array”. Es importante indicar que un sistema RAID puede ser interno o externo y su implementación puede ser hecha a nivel de hardware o software. En este último caso le corresponde a la BIOS del sistema operativo controlar el RAID cuyos discos podrán ser de tipo IDE, SATA o SAS. En una implementación por hardware el controlador es independiente, cuenta con capacidad de proceso propia y dispone de un interfaz SCSI o SATA para la conexión de los discos que conforman el arreglo.

Beneficios de implementar un arreglo de discos

Un disco duro se caracteriza entre otros parámetros por su MTBF (Mean Time Between Failure o tiempo medio entre fallos) cuya importancia no sólo radica en su valor sino también en su significado. EL MTBF nos avisa que los discos pueden dejar de funcionar, ocasionando pérdidas de datos o imposibilitando el acceso a la información por parte de los usuarios. Además un sistema de almacenamiento basado en arquitectura RAID ofrece cuatro ventajas principales:

Mayor fiabilidad que los discos individuales por tratarse de una arquitectura tolerante a fallos con soporte de elementos redundantes.

Mayor rendimiento y tasa de transferencia de datos que los discos individuales como resultado de las operaciones de lecturas/escritura simultáneas realizada sobre múltiples disco en paralelo.

Mayor capacidad de almacenamiento que los discos individuales. Un “array” de disco RAID puede verse como un disco lógico formado por la suma de los discos individuales que lo conforman, por lo que en la mayoría de las configuraciones, la capacidad total será superior.

Mayor integridad. Ante un error en los datos almacenados en alguno de los discos del arreglo (corrupción de datos, error de grabación, etc.), la información de paridad generada por los sistemas RAID permitirá reconstruir los datos perdidos manteniendo así la integridad de la información

Si bien es cierto un sistema RAID aporta múltiples ventajas, es importante resaltarlos aspectos más importantes para los que los arreglos RAID no han sido diseñado.

26

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

RAID no protege los datos. Un sistema RAID no impedirá que los datos se vean modificados o borrados como consecuencia de errores accidentales. Ni tampoco podrá evitar que los datos se dañen o que sean destruidos por un agujero de seguridad. Para evitar estos riesgos deberemos disponer de herramientas de “backup o data recovery”.

RAID no hace que la recuperación ante desastres sea más simple. Las herramientas de recuperación de datos deberán soportar los controladores RAID apropiados, de lo contrario no podrán acceder a los datos almacenados en los discos afectados. Generalmente los dispositivos NAS/SAN incluyen funcionalidades de “backups”, como la replicación remota, que permite duplicar los arreglos entre unidades o en ubicaciones remotas utilizando servicios en la nube.

RAID no facilita la migración a sistemas nuevos. Mover un RAID de una controladora a otra ubicada en un nuevo sistema puede resultar complejo, y en algunos ocasiones hasta imposible (tal es el caso de los sistemas que integran la controladora en la placa base). Una implementación RAID por software eliminaría este inconveniente.

1.2.1 Niveles de RAID

1.2.1.1 RAID-0: Disk Striping

RAID-0 es un arreglo de discos con striping (separación o fraccionamiento) de alta transferencia. Realiza “striping” de datos a nivel bloque sin información de paridad con una distribución equitativa de estos entre dos o más discos. Este nivel mejora el rendimiento pero no ofrece tolerancia a fallos. En caso de avería en cualquiera de los discos miembros del arreglo, el sistema fallará en su totalidad.

Figura 3: Arreglo de discos RAID-0 Fuente: http://www.avastor.com

Ventajas:

Permite el acceso a más de un disco a la vez, logrando una tasa de transferencia más

elevada.

Al no requerir espacio para almacenar información de redundancia, el coste por

megabyte resulta inferior.

Desventajas:

No se dispone de información de paridad.

27

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

No ofrece tolerancia a fallos.

Uso recomendado:

A pesar de la desventaja, RAID 0 es utilizado por aquellos que desean el máximo rendimiento de dos o más unidades.

Para sistemas de edición de vídeo y audio por la transferencia rápida de datos.

Mínimo número de discos para ser implementado: Dos discos duros

1.2.1.2 RAID-1: Mirroring

RAID-1 es un arreglo de discos en espejo, es conocido también como "mirroring" o "Duplicación" (Creación de discos en espejo). Se basa en la utilización de discos adicionales sobre los que se realiza una copia en todo momento de los datos que se están modificando. RAID 1 ofrece una excelente disponibilidad de los datos mediante la redundancia total de los mismos. RAID-1 no tiene paridad ni fraccionamiento o striping.

Figura 4: Arreglo de discos RAID-1 Fuente: http://www.avastor.com

Ventajas:

Protección de la información en caso de fallos del disco y/o de la controladora (en caso

de tener instalada una controladora duplicada).

Ofrece tolerancia a fallos.

Desventajas:

Ineficiencia debido a las tareas de escritura en el disco espejo.

Se “desperdicia” el 50% de la capacidad de almacenamiento del sistema haciendo que el coste por megabyte “útil” sea mayor.

Uso recomendado:

Para soluciones donde se necesite almacenar archivos importantes (contables,

registros financieros, personales, etc.) son comúnmente respaldadas con una

solución RAID 1.

28

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Mínimo número de discos para ser implementado: Dos discos duros

1.2.1.3 RAID-5: Striping + Parity

Este array ofrece tolerancia al fallo, pero además, optimiza la capacidad del sistema

permitiendo una utilización de hasta el 80% de la capacidad del conjunto de discos.

Esto lo consigue mediante el cálculo de información de paridad y su almacenamiento

alternativo por bloques en todos los discos del conjunto. La información del usuario se

graba por bloques y de forma alternativa en todos ellos. De esta manera, si cualquiera de

las unidades de disco falla, se puede recuperar la información en tiempo real, sobre la

marcha, mediante una simple operación de lógica de O exclusivo, sin que el servidor deje

de funcionar.

Figura 5: Arreglo de discos RAID-5 Fuente: http://www.avastor.com

Ventajas:

Proporciona un buen rendimiento con mínima pérdida de capacidad de

almacenamiento.

Aporta un nivel de redundancia suficiente para ser considerado tolerante a fallos.

Desventajas:

Menores prestaciones que en RAID 1. No ofrece solución al fallo simultáneo en dos

discos.

Cuando las aplicaciones requieren muchas escrituras de tamaño inferior a la división

de datos establecida (stripe), el rendimiento ofrecido por RAID 5 no es el óptimo.

Uso Recomendado:

En servidores de base de datos, correo electrónico, soluciones de virtualización y en

sistemas donde se necesite un rendimiento sea equilibrado con tolerancia a fallos.

Mínimo número de discos para ser implementado: Tres discos duros.

29

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

1.2.1.4 RAID 1+0 o RAID-10

Primero se crea un espejo RAID-1 y luego, sobre los anteriores, se establece un RAID-0. El resultado es un “array” dotado de redundancia con una mejora de rendimiento al no precisar escritura de paridad. Para que no se pierdan datos cada RAID-1 deberá mantener al menos uno de sus discos sin fallos.

Figura 6: Arreglo de discos RAID-10 Fuente: http://www.avastor.com

Ventajas:

RAID-10 ofrece los beneficios combinados de RAID 1 y 0 con el doble de capacidad

de RAID 1

La capacidad total es la mitad de la suma de los cuatro discos. Los cuatro discos del

“array” son controlados como una sola unidad más grande.

RAID-10 puede mantener una falla en el disco por cada “sub array” y ofrece el

rendimiento más rápido con redundancia.

Desventajas:

Mayor costo.

Escalabilidad limitada.

Uso recomendado:

Es una excelente solución para los profesionales de audio y video que requieren un

alto rendimiento, así como una alta tolerancia a fallos.

Mínimo número de discos para ser implementado: Cuatro discos duros.

30

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

1.2.2 Implementación de arreglos de discos (RAID-1) en linux

En Linux Centos vamos a implementar un arreglo de discos basado en software, es decir, dependiente de los controladores en el sistema operativo.

1.2.2.1 Escenario: Implementación de RAID-1:

Nuestro servidor cuenta con dos discos duros de 500 GB Disk0 y Disk1. El primer disco es reconocido por Linux Centos como /dev/sdb y el segundo disco como /dev/sdc. A continuación se deben crear las respectivas particiones para unirlas de manera lógica en una unidad RAID de Nivel 1, es decir, se implementa un arreglo de discos en espejo.

Observe que el tamaño del RAID-1 (/dev/md0) es de 500 GB porque la información se encuentra en reflejada en ambos discos, es decir si uno de los discos que conforman el arreglo falla la información queda respaldada en el otro disco. Por lo tanto esta solución nos ofrece un sistema tolerante a fallos.

Figura 7: Implementación de arreglo de discos RAID-1 Fuente: Elaboración Propia

Importante: Antes de comenzar a configurar el arreglo de discos, agregue dos discos duros a su servidor utilizando la opción Configuración de VirtualBox.

(1) Listamos los discos en nuestro servidor con la información de las particiones de cada disco:

[root@server ~]# fdisk –l

Disk 0: /dev/sdb Disk 1: /dev/sdc

RAID-1: /dev/md0

500 GB

500 GB

500 GB

31

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Disk /dev/sda: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000e2644 Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 2611 20458496 8e Linux LVM Disk /dev/sdb: 4294 MB, 4294967296 bytes 255 heads, 63 sectors/track, 522 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Disk /dev/sdc: 4294 MB, 4294967296 bytes 255 heads, 63 sectors/track, 522 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000

(2) Crear una partición en el disco /dev/sdb utilizando la herramienta fdisk. Escriba la siguiente línea de comandos:

[root@server ~]# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0xe339577c. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to

switch off the mode (command 'c') and change display units to sectors (command 'u').

Command (m for help):

(3) Ahora vamos a utilizar el comando “m” para visualizar las opciones de fdisk:

32

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0x79ed5909. Changes will remain in memory only, until you decide to write them.

After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u').

Command (m for help): m Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only)

Command (m for help):

(4) Creamos una nueva partición utilizando la opción “n” y luego la definimos como partición

primaria con la opción “p”:

Command (m for help): n Command action e extended p primary partition (1-4)

p Partition number (1-4): 1 First cylinder (1-522, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-522, default 522): Using default value 522

33

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(5) Ahora cambiamos el System ID de la partición para que pueda formar parte del arreglo RAID-1. Utilizamos la opción “t” y para listar todas las opciones hacemos uso de la opción “L”. Finalmente escogemos la opción “fd” para cambiar el System ID a Linux raid auto:

Command (m for help): t Selected partition 1 Hex code (type L to list codes): L 0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- 2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- 4 FAT16 <32M 41 PPC PReP Boot 85 Linux extended c7 Syrinx 5 Extended 42 SFS 86 NTFS volume set da Non-FS data 6 FAT16 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / . 7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt 9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access a OS/2 Boot Mg 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor c W95 FAT32 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs e W95 FAT16 54 OnTrackDM6 a5 FreeBSD ee GPT f W95 Ext'd 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b 11 Hidden FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 12 Compaq d 61 SpeedStor a9 NetBSD f4 SpeedStor 14 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 16 Hidden FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS 17 Hidden HPFS 65 Novell Netware b7 BSDI fs fcVMware VMKCORE

18 AST Smart 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto 1b Hidden W95 75 PC/IX bb Boot Wizard hid fe LANstep 1c Hidden W95 80 Old Minix be Solaris boot ff BBT 1e Hidden W95 FAT1

Hex code (type L to list codes): fd

Changed system type of partition 1 to fd (Linux raid autodetect)

(6) Finalmente debemos mostrar la tabla de particiones del disco /dev/sdb para comprobar la configuración realizada. Utilizamos la opción “p”:

Command (m for help): p Disk /dev/sdb: 4294 MB, 4294967296 bytes 255 heads, 63 sectors/track, 522 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xd1c9698b

Device Boot Start End Blocks Id System /dev/sdb1 1 522 4192933+ fd Linux raid autodetect

34

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(7) Grabamos la configuración del disco con la opción “w”:

Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.

(8) Crear una partición en el disco /dev/sdc utilizando el mismo procedimiento anteriormente utilizado para el disco /dev/sdb.

(9) Listamos los discos y sus particiones utilizando la siguiente línea de comandos:

[root@server ~]# fdisk –l

Disk /dev/sda: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000e2644

Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 2611 20458496 8e Linux LVM

Disk /dev/sdb: 4294 MB, 4294967296 bytes 255 heads, 63 sectors/track, 522 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xd1c9698b

Device Boot Start End Blocks Id System /dev/sdb1 1 522 4192933+ fd Linux raid autodetect

Disk /dev/sdc: 4294 MB, 4294967296 bytes 255 heads, 63 sectors/track, 522 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xad484b25

Device Boot Start End Blocks Id System /dev/sdc1 1 522 4192933+ fd Linux raid autodetect

35

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(10) Ahora que los discos están preparados para formar parte del RAID-1, procederemos a crear el arreglo de discos con el comando mdadm de la siguiente manera:

[root@server]# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1

mdadm: Note: this array has metadata at the start and may not be suitable as a boot device. If you plan to store '/boot' on this device please ensure that your boot-loader understands md/v1.x metadata, or use --metadata=0.90 Continue creating array? y mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started.

Opciones:

- - create: Crea el dispositivo RAID, en este caso /dev/md0 por tratarse del primer array. Para el siguiente array se asigna el dispositivo /dev/md1.

- - level=1: Indica el nivel del RAID: 0 para el RAID-0, 1 para el RAID-1, 5 para el RAID-5, 10 para el RAID-10.

- - raid-devices: Indica la cantidad de discos que forman parte del RAID.

(11) Verificamos que el arreglo se haya creado correctamente:

[root@server ~]# mdadm --detail /dev/md0

/dev/md0: Version : 1.2 Creation Time : Sat Sep 20 13:49:16 2014 Raid Level : raid1 Array Size : 4190848 (4.00 GiB 4.29 GB) Used Dev Size : 4190848 (4.00 GiB 4.29 GB) Raid Devices : 2 Total Devices : 2 Persistence : Superblock is persistent Update Time : Sat Sep 20 13:49:40 2014 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Name : server.cibertec.pe:0 (local to host server.cibertec.pe) UUID : 29e9c49f:9abfbedb:c4926dda:256882e6 Events : 17 Number Major Minor RaidDevice State 0 8 17 0 active sync /dev/sdb1 1 8 33 1 active sync /dev/sdc1

36

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(12) Asignamos el sistema de archivos “ext4” al dispositivo RAID:

[root@server ~]# mkfs.ext4 /dev/md0

mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 262144 inodes, 1047712 blocks 52385 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=1073741824 32 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736 Writing inode tables: done Creating journal (16384 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 34 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.

(13) Examinamos el RAID implementado:

[root@server ~]# mdadm --examine --scan

ARRAY /dev/md/0 metadata=1.2 UUID=29e9c49f:9abfbedb:c4926dda:256882e6 name=server.cibertec.pe:0

(14) El resultado anterior debe ser agregado al archivo de configuración /etc/mdadm.conf

[root@server ~]# mdadm --examine –scan >> /etc/mdadm.conf

(15) Finalmente debemos montar el dispositivo RAID configurado. Ademas debemos configurar el fichero /etc/fstab para automatizar el proceso.

[root@server ~]# mkdir /mnt/raid1

[root@server ~]# mount /dev/md0 /mnt/raid1

37

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# vim /etc/fstab

# /etc/fstab # Created by anaconda on Thu Sep 11 09:22:57 2014 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # tmpfs /dev/shm tmpfs defaults 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0

/dev/md0 /mnt/raid1 ext4 defaults 0 0

1.2.2.2 Recuperación de un arreglo RAID-1

(1) Antes de forzar el error en uno de los discos que conforman el RAID-1 debemos verificar el estado de nuestro arreglo:

[root@server ~]# cat /proc/mdstat

Personalities: [raid1] md0: active raid1 sdc1[2] sdb1[0]

4190848 blocks super 1.2 [2/2] [UU] unused devices: <none>

(2) Nuestro RAID-1 está conformado por los discos /dev/sdb1 y /dev/sdc1. Vamos a simular un fallo en el disco /dev/sdc1 utilizando la siguiente línea de comandos:

[root@server ~]# mdadm --manage --set-faulty /dev/md0 /dev/sdc1

mdadm: set /dev/sdc1 faulty in /dev/md0

(3) Visualizamos el estado del arreglo y apreciamos que solo tenemos en funcionamiento uno de los dos discos [2/1] [U_] que forman el RAID.

[root@server ~]# cat /proc/mdstat

Personalities: [raid1] md0: active raid1 sdc1[2](F) sdb1[0]

4190848 blocks super 1.2 [2/1] [U_] unused devices: <none>

(4) Ahora hay que remover el disco error /dev/sdc1 del arreglo RAID 1.

38

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# mdadm --manage --set-faulty /dev/md0 /dev/sdc1

mdadm: hot removed /dev/sdc1 from /dev/md0

(5) Luego añadimos un nuevo disco /dev/sdd1 al arreglo que hemos implementado con la finalidad de mantener nuestro sistema tolerante a fallos. Utilizamos la siguiente línea de comandos:

[root@server ~]# mdadm /dev/md0 --manage --add /dev/sdd1

(6) Finalmente verificamos el estado de nuestro RAID:

[root@server ~]# cat /proc/mdstat

Personalities: [raid1] md0: active raid1 sdc1[2] sdb1[0]

4190848 blocks super 1.2 [2/2] [UU] unused devices: <none>

39

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

1.2.3 ADMINISTRADOR DE VOLÚMENES LÓGICOS - LVM La administración de volumen crea una capa de abstracción en el almacenaje físico, lo que permite crear volúmenes lógicos de almacenaje. Proporciona mucha más flexibilidad en una cantidad de formas que el uso directo de almacenaje físico. Con un volumen lógico no hay restricción física de espacio del disco. Además, la configuración de almacenaje del hardware se oculta del software permitiendo así redimensionar y desplazar sin tener que detener la aplicación o desmontar el sistema de archivos minimizando los costos operacionales. Los volúmenes lógicos proporcionan las siguientes ventajas sobre el uso directo de almacenamiento físico:

Capacidad flexible Cuando se utilizan volúmenes lógicos, los sistemas de archivos pueden extenderse a lo largo de varios discos, ya que se pueden agregar discos y particiones en un único volumen lógico.

Grupos de almacenaje dimensionables Puede extender los volúmenes lógicos o reducir los volúmenes lógicos con comandos de software sencillos, sin necesidad de volver a dar formato o crear particiones en los dispositivos de discos subyacentes.

Asignación de datos en línea Para implementar subsistemas de almacenamiento más modernos, más rápidos o resistentes, puede trasladar los datos mientras su sistema está activo. Los datos pueden ser reorganizados en discos mientras los discos están siendo utilizados.

Nombres de dispositivos convenientes Los volúmenes de almacenaje lógico pueden ser administrados en grupos definidos por el usuario, los cuales se pueden especificar de acuerdo con las necesidades.

Volúmenes en espejos Los volúmenes lógicos proporcionan una manera conveniente de configurar copias para sus datos.

Instantáneas del volumen Al usar volúmenes lógicos, se puede crear instantáneas del dispositivo para obtener copias de seguridad consistentes o para probar el efecto de algunos cambios sin afectar los datos reales.

1.2.3.1 Conceptos LVM

a) Volume Group (VG) Sería el equivalente a un disco duro, es el punto de abstracción más alto en LVM. Puede contener volúmenes físicos y lógicos.

b) Physical Volume (PV) Puede ser un disco duro, aunque también un arreglo RAID por software.

c) Logical V olume (LV) Equivale a una partición, contiene su propio sistema de archivos.

40

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

d) Physical Extend (PE)

La extensión física está compuesta por trozos de datos de los volúmenes físicos.

e) Logical Extent (LE) La extensión lógica está compuesta por trozos de datos de los volúmenes lógicos.

Figura 8: Implementación de Volúmenes Lógicos

Fuente: Elaboración Propia

1.2.3.2 implementación de LVM en linux

Antes de empezar a configurar los volúmenes lógicos debemos tener las particiones creadas en los discos duros, en nuestro caso serán /dev/sdd1 y /dev/sde1.

También debe configurar el System ID de los discos con la opción “8e: Linux LVM”, para poder implementar el volumen lógico. El procedimiento lógico debe seguir el siguiente orden

1. Crear los volúmenes físicos (PV)

2. Crear el volumen de grupo (VG)

3. Crear los volúmenes lógicos (LV)

(1) Revisamos las particiones en nuestro disco:

[root@server ~]# fdisk -l

41

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Disk /dev/sdd: 8589 MB, 8589934592 bytes 255 heads, 63 sectors/track, 1044 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x1405d47a

Device Boot Start End Blocks Id System /dev/sdd1 1 393 3156741 8e Linux LVM Disk /dev/sde: 8589 MB, 8589934592 bytes 255 heads, 63 sectors/track, 1044 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xf0cbf3fb

Device Boot Start End Blocks Id System /dev/sde1 1 393 3156741 8e Linux LVM

(2) Creamos los volúmenes físicos (PV) en cada uno de los discos. Utilizamos las siguientes líneas de comandos:

[root@server ~]# pvcreate /dev/sdd1

Physical volume "/dev/sdd1" successfully created

[root@server ~]# pvcreate /dev/sde1

Physical volume "/dev/sde1" successfully created

(3) Si necesita analizar todos los dispositivos de bloque LVM soportado en el sistema de volúmenes físicos, puede utilizar el siguiente comando: [

[root@server ~]# pvscan

(4) Verificamos los volumenes creados

[root@server ~]# pvdisplay

42

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

"/dev/sdd1" is a new physical volume of "3.01 GiB" --- NEW Physical volume --- PV Name /dev/sdd1 VG Name PV Size 3.01 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID DqTwLk-4369-cgfA-t9bW-D0dQ-5o6s-8xfmay "/dev/sde1" is a new physical volume of "3.01 GiB" --- NEW Physical volume --- PV Name /dev/sde1 VG Name PV Size 3.01 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID jgeJuh-v4Xh-llOf-4FCX-DHT6-3aLf-asLVXk

(5) Ahora creamos el grupo de volúmenes (VG) considerando los volúmenes físicos anteriormente configurados, es decir, creamos el volumen de grupo LVM1 considerando los volúmenes físicos /dev/sdd1 y /dev/sde1.

[root@server ~]# vgcreate LVM1 /dev/sdd1 /dev/sde1

Volume group "LVM1" successfully created

(6) Verificamos si el grupo de volumen ha sido creado de manera correcta. Vamos a comprobar el grupo de volumen (VG) configurado y además los volúmenes físicos que lo componen. Observara también el tamaño del grupo de volumen ahora es de 6 GB, es decir, la suma de las capacidades de los PV.

[root@server ~]# vgdisplay LVM1

43

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

--- Volume group --- VG Name LVM1 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 6.02 GiB PE Size 4.00 MiB Total PE 1540 Alloc PE / Size 0 / 0 Free PE / Size 1540 / 6.02 GiB VG UUID d1LtCx-sc43-lBGd-6SQJ-WLE6-v2Vh-2zceva

(7) Ahora configuramos los volúmenes lógicos (LV) tomando como referencia el espacio que nos proporciona el grupo de volúmenes (VG) configurado en el paso anterior.

[root@server ~]# lvcreate -n DATABASE -L 1G LVM1

Logical volume "DATABASE" created

Opciones:

-n: Creamos un nuevo volumen lógico, en este caso el nom|bre es DATABASE.

-L: Define el tamaño del volumen lógico. En este caso se define 1GB. espacio tomado del grupo de volumen LVM1.

(8) Verificamos la configuración del volumen lógico (LV) para esto utilizamos la siguiente línea de comandos:

[root@server ~]# lvdisplay LVM1

44

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

--- Logical volume --- LV Path /dev/LVM1/DATABASE LV Name DATABASE VG Name LVM1 LV UUID PJdTbI-s7XK-6Zd9-pCYk-SlNt-TJug-0snLwv LV Write Access read/write LV Creation host, time server.cibertec.pe, 2014-09-21 22:11:16 -0500 LV Status available # open 0 LV Size 1.00 GiB Current LE 256 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2

(9) Asignamos el sistema de archivos al volumen creado:

[root@server ~]# mkfs.ext4 /dev/LVM1/DATABASE

mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 131072 inodes, 524288 blocks 26214 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=536870912 16 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 Writing inode tables: done Creating journal (16384 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.

(10) Montamos el volume lógico:

[root@server ~]# mkdir /mnt/database

[root@server ~]# mount /dev/LVM1/DATABASE /mnt/database

45

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(11) Visualizamos la información de espacio de los discos del servidor:

[root@server ~]# df -h

Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_server-lv_root 18G 3.6G 13G 22% / tmpfs 940M 72K 940M 1% /dev/shm /dev/sda1 485M 39M 421M 9% /boot /dev/mapper/LVM1-DATABASE 1.0G 67M 1.9G 4% /mnt/database

1.2.3.3 Expandiendo un volumen lógico

(1) Una de las ventajas de implementar LVM es que podemos expandir o reducir el tamaño del volumen. Vamos a expandir el tamaño de nuestro LV DATABASE de 1GB a 2GB, Utilizamos la siguiente línea de comandos:

[root@server ~]# lvextend -L +1G /dev/LVM1/DATABASE

Extending logical volume DATABASE to 2.00 GiB Logical volume DATABASE successfully resized

(2) Verificamos el estado de nuestro volumen lógico:

[root@server ~]# lvdisplay /dev/LVM1/DATABASE

--- Logical volume --- LV Path /dev/LVM1/DATABASE LV Name DATABASE VG Name LVM1 LV UUID PJdTbI-s7XK-6Zd9-pCYk-SlNt-TJug-0snLwv LV Write Access read/write LV Creation host, time server.cibertec.pe, 2014-09-21 22:11:16 -0500 LV Status available # open 1 LV Size 2.00 GiB Current LE 512 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2

(3) Visualizamos el espacio de disco y observamos que el nuevo tamaño del dispositivo no ha sido actualizado por el filesystem:

[root@server ~]# df -h

46

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_server-lv_root 18G 3.6G 13G 22% / tmpfs 940M 72K 940M 1% /dev/shm /dev/sda1 485M 39M 421M 9% /boot /dev/mapper/LVM1-DATABASE 1.0G 67M 1.9G 4% /mnt/database

(4) Para que el filesystem actualice el tamaño del dispositivo /dev/LVM1/DATABASE

debemos utilizar el comando resize2fs de la siguiente manera:

[root@server ~]# resize2fs –p /dev/LVM1/DATABASE

(5) Finalmente utilizamos el comando “df” para visualizar la información de los discos:

[root@server ~]# df -h

Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_server-lv_root 18G 3.6G 13G 22% / tmpfs 940M 72K 940M 1% /dev/shm /dev/sda1 485M 39M 421M 9% /boot /dev/mapper/LVM1-DATABASE 2.0G 67M 1.9G 4% /mnt/database

47

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Resumen

Para configurar los parámetros IP de un servidor antes hay que conocer el diseño del

direccionamiento de la red donde se va a publicar el servicio. Luego debe editar el archivo

de configuración ifcfg-eth0 que se encuentra en el directorio /etc/sysconfig/network-

scripts. En ese mismo directorio guardamos los archivos de configuración de las

direcciones IP Secundarias conocidas también como IP Alias para tener la posibilidad de

asignar más de una dirección IP a una misma interface física.

Luego aprendió a configurar las conexiones remotas hacia y desde un servidor Linux

utilizando OPENSSH cuidando el puerto que apertura la aplicación, los usuarios y los

equipos desde donde se pueden conectar.

Para la implementación de un sistema tolerante a fallos a nivel de unidades de

almacenamiento se implementaron los arreglos de discos RAID por software. Finalmente se

implementaron y administraron los volúmenes lógicos.

48

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SERVICIOS DE

INFRAESTRUCTURA DE RED

LOGRO DE LA UNIDAD DE APRENDIZAJE Al término de la unidad, los estudiantes implementan servicios de infraestructura de red.

TEMARIO:

ACTIVIDADES PROPUESTAS

Configurar los servicios de infraestructura DNS y DHCP.

Configurar el servicio de directorio OPENLDAP

Configurar el servicio de archivos SAMBA, además de integrar las plataformas Windows y Linux en las redes mixtas.

2.1 Tema 3 : Servidor Nombres de Dominio 2.1.1 : Jerarquía de nombres de dominio. 2.1.2 : Zonas de dominio y registros DNS 2.1.3 : Servicio DHCP

2.2 Tema 4 : Servicio de autenticación LDAP 2.2.1 : Estructura del árbol de directorios LDAP 2.2.2 : implementación del servidor OPENLDAP

2.3 Tema 5 : Servidor de Archivos Samba 2.3.1 : Componentes del servicio Samba 2.3.2 : implementación del servicio SAMBA

UNIDAD

2

49

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

2.1 SERVIDOR DE NOMBRES DE DOMINIO

DNS (Domain Name System) es el sistema de nombres de dominio que tiene como principal objetivo la resolución de nombres de los recursos en las redes TCP/IP. Gracias el servicio DNS los usuarios podemos acceder a los recursos en las redes utilizando nombres y no números (direcciones IP). Si el servidor DNS no tiene ninguna entrada en su base de datos para el host remoto, puede responder al cliente con la dirección de un servidor DNS que pueda tener información acerca de ese host remoto, o bien puede consultar al otro servidor DNS. Este proceso puede tener lugar de forma recursiva hasta que el equipo cliente reciba las direcciones IP o hasta que se establezca que el nombre consultado no pertenece a ningún host del espacio de nombres DNS especificado.

Nombre de Host Dirección IP Resolución Directa

Dirección IP Nombre de Host Resolución Inversa

Figura 9: Resolución de Nombres DNS Fuente: Elaboración Propia

2.1.1.1 Jerarquía del Árbol DNS

El sistema DNS utiliza una base de datos distribuida y jerárquica para almacenar la información necesaria para resolver los nombres de dominio. Gracias al servicio DNS los usuarios utilizamos nombres y no números (direcciones IP) para acceder a los recursos de la red.

El cliente DNS consulta por el recurso www.cibertec.edu.pe

El servidor DNS responde con ta dirección IP del recurso

69.89.26.163

Servidor DNS

Cliente DNS Base de datos DNS

Archivo de Zona DNS www IN A 69.89.26.163

50

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Figura 10: Jerarquía del Sistema DNS Fuente: Elaboración Propia

La estructura jerárquica de nombres DNS se define de la siguiente manera:

• Dominio Raíz (.) Se trata de la parte superior del árbol DNS, que representa un nivel sin nombre y se utiliza para designar que el nombre se encuentra en la raíz o el nivel más alto de la jerarquía de dominios. En este caso, el nombre de dominio DNS se considera completo y apunta a una ubicación exacta en el árbol de nombres. Los nombres indicados de esta manera son FQDN (Fully Qualify Domain Name).

• Dominio de Primer Nivel

Dominio Raíz

com pe org

com edu gob

pucp cibertec upc

Dominio de Primer Nivel

Dominio de Segundo Nivel

Subdominio

Host: www

51

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Es un nombre que se utiliza para indicar un país o región o el tipo de organización que usa un nombre. Ejemplo: Perú=pe

• Dominio de Segundo Nivel Nombres de longitud variable registrados a un individuo u organización para su uso en Internet. Estos nombres siempre se basan en un dominio de nivel superior apropiado, dependiendo del tipo de organización o ubicación geográfica donde se utiliza un nombre. Ejemplo: Las instituciones educativas en el Perú utilizan el sufijo edu.

• Subdominio Nombres adicionales que puede crear una organización que se derivan del nombre de dominio de segundo nivel registrado. Estos incluyen los nombres agregados para crecer el árbol DNS de nombres en una organización y se divide en departamentos o ubicaciones geográficas. Por ejemplo cibertec como institución educativa en el Perú reservo el nombre cibertec.edu.pe

• Nombres de Host o recurso Nombres que representan una hoja en el árbol DNS de nombres e identifican un recurso específico. Normalmente, la etiqueta de la izquierda de un nombre de dominio DNS identifica un equipo específico de la red. Por ejemplo, si el nombre del servidor web (www) de Cibertec en este nivel utiliza un

registro de recursos de host (A) para buscar la dirección IP 69.89.26.163 del equipo

según su nombre de host.

2.1.1.2 Componentes del servicio DNS

• Servidor DNS: Son los equipos que responden a las peticiones de los clientes DNS consultando la base de datos propia o a otros servidores DNS.

• Clientes DNS: Son los equipos que envían peticiones de resolución de nombres s los servidores DNS.

• Espacio de Nombres de Dominio: Es una base de datos distribuida y jerárquica que clasifica los dominios en niveles.

2.1.2 Zonas de Dominios

El sistema de nombres de dominio de Internet está administrado por una autoridad de registro de nombre en Internet, responsable de mantener dominios de nivel superior que se asignan por organización y por país o región. Estos nombres de dominio siguen el estándar internacional 3166. Algunas de las muchas abreviaturas existentes, reservadas para uso en las organizaciones, así como dos letras y tres letras abreviaturas utilizadas para países o regiones se muestran en la siguiente tabla:

52

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Nombres de dominio DNS Tipo de Organización

Com Organizaciones comerciales

org

Organizaciones sin fines de lucro

Pe Representa a un país (Perú)

Mil Instituciones militares

Gob Organizaciones públicas o de gobierno

Edu Instituciones educativas

Arpa DNS Inverso

2.1.2.1 Consultas DNS

Los Servidores DNS responden dos tipos de consultas:

• Consultas Iterativas (no recursivas) El cliente hace una consulta al Servidor DNS y este le responde con la mejor respuesta que pueda darse basada sobre su caché o en las zonas locales. Si no es posible dar una respuesta, la consulta se reenvía hacia otro Servidor DNS repitiéndose este proceso hasta encontrar al Servidor DNS que tiene la Zona de Autoridad capaz de resolver la consulta.

• Consultas Recursivas

El Servidor DNS asume toda la carga de proporcionar una respuesta completa para la consulta realizada por el Cliente DNS. El Servidor DNS desarrolla entonces Consultas Iterativas separadas hacia otros Servidores DNS (en lugar de hacerlo el Cliente DNS) para obtener la respuesta solicitada.

2.1.2.2 Archivos de Zonas y Registros de Recursos

53

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Un archivo de zona o zona DNS, es un archivo que contiene los datos para poder resolver las peticiones de nombres asociadas al dominio en direcciones IP. Estos utilizan los Registros de Recursos (RR) para cumplir con los procesos de resolución de nombres. Los registros más utilizados son:

Tipo de Registro

Descripción

SOA (start of authority)

Registro de inicio de autoridad que especifica el Servidor DNS Maestro que proporcionará la información con autoridad acerca de un dominio de Internet, dirección de correo electrónico del administrador, número de serie del dominio y parámetros de tiempo para la zona.

A (address)

Registro de dirección que resuelve un nombre de host a una dirección IPv4 de 32 bits.

AAAA

Registro de dirección que resuelve un nombre de host a una dirección IPv6 de 128 bits.

NS (name server)

Registro de servidor de nombres que sirve para definir una lista de servidores de nombres con autoridad para un dominio.

MX (mail

exchanger)

Registro utilizado por el servicio de correo electrónico y sirve para definir una lista de servidores de correo para un dominio, así como la prioridad entre éstos.

CNAME (canonical

name)

Registro utilizado para definir un alias o sobrenombre a un registro autentico o existente. También suele ser utilizado para asignar un subdominio.

PTR (pointer)

Registro de apuntador que resuelve direcciones IPv4 hacia el nombre anfitriones. Es decir, hace lo contrario al registro A. Se utiliza en zonas de resolución Inversa.

2.1.2.3 Implementación del Servidor DNS

(1) Instalamos los paquetes necesarios:

[root@server ~]# yum –y install bind*

(2) Editar el archive de configuración named.conf:

[root@server ~]# vim /etc/named.conf

54

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

options {

listen-on port 53 { 127.0.0.1; 192.168.1.2; }; listen-on-v6 port 53 { ::1; }; forwarders { 8.8.8.8; 8.8.4.4; }; forward first; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; 192.168.1.0/24; }; recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; };

logging { channel default_debug { file "data/named.run"; severity dynamic;

}; }; zone "." IN { type hint; file "named.ca"; }; zone "cibertec.pe" IN { type master; file "cibertec.pe.zone"; allow-update { none; }; }; zone "1.168.192.in-addr.arpa" IN { type master; file "1.168.192.in-addr.arpa.zone"; allow-update { none; }; };

include "/etc/named.rfc1912.zones"; include "/etc/named.root.key";

55

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(3) Luego configuramos el archive de zona de resolución directa. Editamos el archivo /var/named/cibertec.pe.zone:

[root@server ~]# vim /var/named/cibertec.pe.zone

$TTL 1D @ IN SOA mail.cibertec.pe. root.cibertec.pe. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS mail.cibertec.pe. IN A 192.168.1.2 www IN A 192.168.1.2 mail IN A 192.168.1.2 mail2 IN A 192.168.1.3 cibertec.pe. IN MX 10 mail.cibertec.pe. cibertec.pe. IN MX 20 mail2.cibertec.pe. cibertec.pe. IN A 192.168.1.2

(4) Ahora editamos el archive de zona de resolución inversa:

[root@server ~]# vim /var/named/1.168.192.in-addr.arpa

$TTL 1D @ IN SOA mail.cibertec.pe. root.cibertec.pe. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS mail.cibertec.pe. IN PTR cibertec.pe. IN A 255.255.255.0 2 IN PTR www.cibertec.pe. 2 IN PTR mail.cibertec.pe. 3 IN PTR mail2.cibertec.pe.

(5) Cambiamos los permisos a los archivos del directorio /var/named:

[root@server ~]# cd /var/named

[root@server named]# chown named,named * -R

[root@server named]# ls -l

56

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

-rw-r----- 1 named named 168 Sep 22 06:48 1.168.192.in-addr.arpa drwxr-x---. 6 named named 4096 Sep 22 05:31 chroot

-rw-r-----. 1 named named 330 Sep 22 06:47 cibertec.pe.zone drwxrwx---. 2 named named 4096 Jan 20 2014 data drwxrwx---. 2 named named 4096 Jan 20 2014 dynamic -rw-r-----. 1 named named 1892 Feb 18 2008 named.ca -rw-r-----. 1 named named 152 Dec 15 2009 named.empty -rw-r-----. 1 named named 152 Jun 21 2007 named.localhost -rw-r-----. 1 named named 168 Dec 15 2009 named.loopback drwxrwx---. 2 named named 4096 Jan 20 2014 slaves

(6) Iniciamos el servicio DNS:

[root@server ~]# service named start

Starting named: [ OK ]

(7) Para ejecutar el servicio “named” durante el proceso de arranque del servidor:

[root@server ~]# chkconfig named on

(8) Es importante verificar que el puerto 53/UDP se encuentra abierto, para esto utilizamos el siguiente comando:

[root@server ~]# netstat -lnup | grep named

udp 0 0 192.168.1.2:53 0.0.0.0:* 2123/named-sdb udp 0 0 127.0.0.1:53 0.0.0.0:* 2123/named-sdb udp 0 0 ::1:53 ::* 2123/named-sdb

2.1.2.4 Configuración del Cliente DNS

Como revisamos en el capítulo de Networking Avanzado en Linux Centos, debemos configurar el archivo “ifcfg-eth0” de la siguiente manera:

(1) [root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

.

GATEWAY=192.168.1.1 DNS1=192.168.1.2

.

57

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(2) Reiniciar el servicio de red:

[root@server ~]# service network restart

(3) Probar la resolución de nombres en el servidor DNS:

2.1.3 SERVIDOR DHCP El servidor DHCP permite asignar de manera dinámica la configuración IP a los equipos en la red ya sea de forma permanente o durante un periodo determinado. El servidor DHCP utiliza un mecanismo para determinar durante cuánto tiempo un cliente puede utilizar una dirección que no sea permanente, a este proceso se le denomina “leasing DHCP”. Cuando se deja de utilizar la dirección, se devuelve al servidor DHCP para que pueda estar disponible para otros equipos en la red. El servidor contiene información sobre la vinculación de direcciones IP a los clientes de sus tablas de red DHCP, con lo cual se garantiza que no haya más de un cliente que utilice la misma configuración IP. Además el servidor DHCP no solo asigna la dirección IP y mascara de subnet también puede proporcionar otra información como default Gateway y servidores de nombres DNS.

Figura 11: Asignación de direcciones dinámicas Fuente: Elaboración Propia

Existen tres métodos de asignación en el protocolo DHCP:

a. Asignación manual: La asignación utiliza una tabla con direcciones MAC Sólo los equipos con una dirección MAC definida en dicha tabla recibirán la dirección IP definida en la configuración.

b. Asignación automática: Una dirección IP disponible dentro de un rango

determinado se asigna permanentemente al equipo que la requiera.

DHCP Discover

DHCP Offer

DHCP Request

DHCP Ack Servidor DHCP Cliente DHCP

IP: 192.168.1.5/24 IP: 192.168.1.55/24

58

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

c. Asignación dinámica: Se determina arbitrariamente un rango de direcciones IP y cada equipo conectado a la red está configurada para solicitar su dirección IP al servidor cuando se inicia el dispositivo de red, utilizando un intervalo de tiempo controlable de modo que la asignación de direcciones IP es de manera temporal y éstas se reutilizan de forma dinámica

2.1.3.1 Escenario de implementación del servidor DHCP

La empresa Laboratorios Roster S.A. cuenta con 20 servidores y 200 estaciones de trabajo. Usted como integrante del equipo de Infraestructura y TI de la empresa debe configurar el servidor DHCP en Linux Centos con la siguiente información:

Identificador de Red: 192.168.1.0/24

Dirección IP del Servidor DHCP: 192.168.1.5

Máscara de subnet: 255.255.255.0

Puerta de enlace: 192.168.1.1

Servidor de nombres: 192.168.1.2

Rango de direcciones IP a asignar de modo dinámico: 192.168.1.50 hasta 192.168.1.250.

Figura 12: Asignación de direcciones IP Fuente: Elaboración Propia

(1) Instalamos el paquete dhcpd utilizando la siguiente línea de comandos:

[root@server ~]# yum -y install dhcp

(2) Si tenemos varias tarjetas de red en el servidor, es recomendable que el servicio dhcpd solamente funcione a través de la tarjeta de red conectada a la red LAN. Nunca debe habilitar la opción en la tarjeta de red conectada a la red WAN. Para cubrir esta

Rango de direcciones IP 192.168.1.50 192.168.1.51 . . .192.168.1.250

Servidor DHCP Cliente DHCP Cliente DHCP

Leasing DHCP

59

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

configuración debemos editar el archivo /etc/sysconfig/dhcpd y agregue el valor eth0, eth1, eth2, etc., como argumento de la opción DHCPDARGS.

[root@server ~]# vim /etc/sysconfig/dhcpd

# Command line options here DHCPDARGS=eth0

(3) El archivo de configuración nos referencia que el archivo de configuración se encuentra en el directorio /usr/share/doc/dhcp*. Por lo tanto debemos copiar el archivo dhcpd.conf.sample al directorio /etc/dhcp como dchcpd.conf:

[root@server ]# cp /usr/share/doc/dhpd*/dhcpd.conf.sample /etc/sysconfig/dhcpd.conf

(4) Editamos el archivo de configuración utilizando la siguiente línea de comandos:

[root@server ~]# vim /etc/dhcp/dhcpd.conf

ddns-update-style interim; ignore client-updates; authoritative; default-lease-time 900; max-lease-time 7200; option ip-forwarding off; option domain-name "cibertec.pe"; shared-network cibertec.pe { subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option domain-name-servers 192.168.1.2; range 192.168.1.50 192.168.1.250; } }

(5) Iniciamos el servicio DHCP:

[root@server ~]# service dhcpd start

Starting dhcpd: [OK]

(6) Para ejecutar el servicio “dhcpd” durante el proceso de arranque del servidor, utilizamos la siguiente línea de comandos

60

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# chkconfig dhcpd on

(7) Si necesitamos fijar una dirección IP, por ejemplo la dirección 192.168.1.250 para que el servidor DHCP la asigne siempre a un mismo equipo (asumiendo que es el equipo del gerente general de la empresa) debemos obtener la dirección MAC Address y configurar las siguientes líneas en el archivo /etc/dhcp/dhcpd.conf:

[root@server ~]# vim /etc/dhsp/dhcpd.conf

host pp_gg { option host-name "pc_gg.cibertec.pe"; hardware ethernet 00:70:F4:65:B4:24; fixed-address 192.168.1.250; }

(8) Aplicamos los cambios al servicio utilizando la siguiente línea de comandos:

[root@server ~]# service dhcpd restart

2.1.3.2 Configuración del Cliente DHCP

(1) Editar el archivo ifcfg-eth0 y cambiar el valor del parámetro BOOTPROTO a “dhcp”

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp

IPADDR=192.168.1.2 NETMASK=255.255.255.0 USERCTL=no

(2) Reiniciar el servicio de red para solicitar al servidor DHCP la asignación de los parámetros de red:

[root@server ~]# service network restart

(3) Verificamos la dirección IP asignada

[root@server ~]# ifconfig eth0

61

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

2.2 SERVIDOR DE AUTENTICACIÓN LDAP El Protocolo ligero de acceso a directorios (LDAP: Lightweight Directory Access Protocol) es un conjunto de protocolos abiertos usados para acceder información guardada centralmente a través de la red. Está basado en el estándar X.500 para compartir directorios, pero es menos complejo e intensivo en el uso de recursos. Por esta razón, a veces se habla de LDAP como "X.500 Lite." El estándar X.500 es un directorio que contiene información de forma jerárquica y categorizada, que puede incluir nombres, directorios y números telefónicos. Como X.500, LDAP organiza la información en un modo jerárquico usando directorios. Estos directorios pueden almacenar una gran variedad de información y se pueden incluso usar de forma similar al Servicio de información de red (NIS), permitiendo que cualquiera pueda acceder a su cuenta desde cualquier máquina en la red acreditada con LDAP. Sin embargo, en la mayoría de los casos, LDAP se usa simplemente como un directorio telefónico virtual, permitiendo a los usuarios acceder fácilmente la información de contacto de otros usuarios. Pero LDAP va mucho más lejos que un directorio telefónico tradicional, ya que es capaz de propagar su consulta a otros servidores LDAP por todo el mundo, proporcionando un repositorio de información ad-hoc global. Sin embargo, en este momento LDAP se usa más dentro de organizaciones individuales, como universidades, departamentos del gobierno y compañías privadas. LDAP es un sistema cliente/servidor. El servidor puede usar una variedad de bases de datos para guardar un directorio, cada uno optimizado para operaciones de lectura rápidas y en gran volumen. Cuando una aplicación cliente LDAP se conecta a un servidor LDAP puede, o bien consultar un directorio, o intentar modificarlo. En el evento de una consulta, el servidor, puede contestarla localmente o puede dirigir la consulta a un servidor LDAP que tenga la respuesta. Si la aplicación cliente está intentando modificar información en un directorio LDAP, el servidor verifica que el usuario tiene permiso para efectuar el cambio y después añade o actualiza la información.

2.2.1 Estructura del árbol de directorio LDAP

La estructura del árbol de directorios se define utilizando el término DIT (Directory Information Tree). El DIT en un servidor LDAP normalmente se organiza utilizando la estructura de árbol, donde las ramas de este pueden ser contenedores de información, en donde puede contener otras entradas o más ramas/contenedores, por ejemplo una rama para almacenar cuentas de usuario, otra rama para almacenar grupos, etc. Cada entrada en el árbol posee un identificador único llamado DN (Distinguished Name).

El primer paso para diseñar el DIT es definir el DN Base que es el nivel más alto en el árbol de directorio, es decir, la base o raíz del directorio.

En nuestro caso el DN Base será definido utilizando los llamados DC ó Domain Components, similar a la estructura del Sistema de Nombres de Dominio (DNS) que revisamos en el capítulo anterior.

Podemos organizar la estructura DIT de la siguiente manera:

62

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Figura 13: Árbol de directorio LDAP Fuente: Elaboración Propia

En la estructura mostrada se define lo siguiente:

a) dc=example,dc=com Raíz del directorio

b) ou=usuarios

Contenedor para almacenar cuentas de usuario para sistemas Linux/Unix y Windows.

c) ou=grupos

Contenedor para almacenar Grupos de sistema para sistemas Unix y Windows.

d) ou=equipos Contenedor para las cuentas de computadoras (Trusted Machine Accounts) para sistemas Windows.

2.2.2 Implementación del Servidor LDAP:

(1) Instalar los paquetes necesarios:

[root@server ~]# yum –y install openldap-servers openldap-clients authconfig

(2) Crear una cuenta de usuario en el sistema

[root@server ~]# useradd rdiaz -d /home/rdiaz -m

[root@server ~]# passwd rdiaz

(3) Generar una contraseña encriptada con el comando slappasswd::

dc=cibertec, dc=pe

ou=usuarios ou=grupos ou=equipos

uid=jperez uid=rdiaz cn=TI cn=Domain Users uid=pc_conta01

63

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# slappaswd

New password: XXXXXXXX Re-enter new password: XXXXXXXX {SSHA}D4u9cTJ7ErP7YBSiPzPhl3lEKV/Vnrls

(4) Editar el archivo de configuración /etc/openldap/slapd.conf

[root@server ~]# vim /etc/openldap/slapd.conf

include /etc/openldap/schema/core.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema database bdb suffix "dc=cibertec,dc=pe"

rootdn "cn=admin,dc=cibertec,dc=pe" rootpw {SSHA}D4u9cTJ7ErP7YBSiPzPhl3lEKV/Vnrls directory /var/lib/ldap

index objectClass eq,pres index ou,cn,mail,surname,givenname eq,pres,sub index uidNumber,gidNumber,loginShell eq,pres index uid,memberUid eq,pres,sub index nisMapName,nisMapEntry eq,pres,sub

(5) Levantar servicio LDAP:

[root@server ~]# service ldap start Starting ldap: [OK]

(6) Si sale un mensaje relacionado con el fichero DB_CONFIG, realizar el siguiente procedimiento:

[root@server ~]# cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

[root@server ~]# cp DB_CONFIG.example /var/lib/ldap/DB_CONFIG

[root@server ~]# chown ldap.ldap /var/lib/ldap/DB_CONFIG

[root@server ~]# chmod 640 /var/lib/ldap/DB_CONFIG

(7) Para ejecutar el servicio “ldap” durante el proceso de arranque del servidor, utilizamos la siguiente línea de comandos

64

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# chkconfig ldap on

(8) Verificar que el puerto TCP 389 se encuentre levantado:

[root@server ~]# netstat –lntp

tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 2022/ldap

2.2.2.1 Migrando cuentas de usuarios y grupos de linux a LDAP

(1) Editar el siguiente fichero:

[root@server ~]# vim /usr/share/openldap/migration/migarte_common.ph

$NETINFOBRIDGE = (-x

"/usr/sbin/mkslapdconf"); if

($NETINFOBRIDGE) { $NAMINGCONTEXT{'aliases'} = "cn=aliases"; $NAMINGCONTEXT{'fstab'} = "cn=mounts"; $NAMINGCONTEXT{'passwd'} = "cn=users"; $NAMINGCONTEXT{'netgroup_byuser'} = "cn=netgroup.byuser"; $NAMINGCONTEXT{'group'} = "cn=groups"; $NAMINGCONTEXT{'netgroup'} = "cn=netgroup"; $NAMINGCONTEXT{'hosts'} = "cn=machines"; $NAMINGCONTEXT{'networks'} = "cn=networks"; $NAMINGCONTEXT{'protocols'} = "cn=protocols"; $NAMINGCONTEXT{'rpc'} = "cn=rpcs"; $NAMINGCONTEXT{'services'} = "cn=services";

} else { $NAMINGCONTEXT{'aliases'} = "ou=aliases"; $NAMINGCONTEXT{'fstab'} = "ou=mounts"; $NAMINGCONTEXT{'passwd'} = "ou=people"; $NAMINGCONTEXT{'netgroup_byuser'} = "nisMapName=netgroup.byuser"; $NAMINGCONTEXT{'netgroup_byhost'} = "nisMapName=netgroup.byhost"; $NAMINGCONTEXT{'group'} = "ou=group"; $NAMINGCONTEXT{'netgroup'} = "ou=netgroup"; $NAMINGCONTEXT{'hosts'} = "ou=hosts"; $NAMINGCONTEXT{'networks'} = "ou=networks"; $NAMINGCONTEXT{'protocols'} = "ou=protocols"; $NAMINGCONTEXT{'rpc'} = "ou=rpc"; $NAMINGCONTEXT{'services'} = "ou=services";

}

# Default DNS domain $DEFAULT_MAIL_DOMAIN = "cibertec.pe";

# Default base $DEFAULT_BASE = "dc=cibertec, dc=pe";

65

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(2) Generar los archivos *.ldif

[root@server ~]# mkdir /etc/openldap/ldif

[root@server ~]# cd /etc/openldap/ldif

[root@server ~]# /usr/share/openldap/migration/migrate_base.pl > base.ldif

[root@server ~]# /usr/share/openldap/migration/migrate_group.pl /etc/group group.ldif

[root@server]# /usr/share/openldap/migration/migrate_passwd.pl /etc/passwd passwd.ldif

(3) Importamos los archivos *.ldif al servidor LDAP:

[root@server ~]# ldapadd -x -W -D “cn=admin, dc=cibertec,dc=pe” -f base.ldif [root@server ~]# ldapadd -x -W -D “cn=admin, dc=cibertec, dc=pe” -f group.ldif [root@server ~]# ldapadd -x -W -D “cn=admin, dc= cibertec, dc=pe” -f passwd.ldif

Las opciones del comando “ldap” se describen a continuación:

- x : Autenticación simple - W : Solicitar clave de acceso - D binddn : Nombre Distinguido (DN) a utilizar - h host : Servidor LDAP a acceder - f fichero : Fichero a utilizar

2.2.2.2 Configuración del cliente LDAP:

(1) Ejecutamos el siguiente comando:

[root@server ~]# authconfig-tui

(2) Verificar que directorios existen en el servidor LDAP:

66

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# ldapsearch -h 127.0.0.1 -x -b '' -s base '(objectclass=*)' namingContexts

2.2.2.3 Administración de OPENLDAP grafico

Aunque LDAP permite trabajar con comandos y archivos ldif, para acceder al directorio LDAP y poder crear y modificar elementos en dicho directorio, es más práctico utilizar un explorador de directorios LDAP (LDAP browser). Existen muchos exploradores LDAP tanto de pago como libres. Entre las aplicaciones libres destacamos gq, phpldapadmin (aplicación web), LAM y JXplorer.

LAM (LDAP Account Manager)

LAM es una interface gráfica para la gestión de las entradas (por ejemplo, usuarios, grupos, configuración de DHCP) almacenada en un directorio LDAP. LAM fue diseñado para que la gestión LDAP sea lo más fácil posible para el usuario. Se abstrae de los detalles técnicos de LDAP y permite que las personas sin experiencia técnica en la gestión de entradas LDAP puedan administrar el servicio de directorio. Si es necesario, los usuarios avanzados pueden editar directamente las entradas LDAP a través del navegador LDAP integrado.

Instalación de LDAP ACCOUNT MANAGER (LAM)

(1) Instalar los paquetes necesarios:

[root@server ~]# yum -y install httpd php-cli php-ldap php-gd php-mbstring mysql php-pear

(2) Descargar LAM desde el siguiente sitio web:

http://lam.sourceforge.net

(3) Desempaquetar el tarball ldap-account-manager-XXX.tar.gz

root@server ~]# cd /var/www/html

[root@server ~]# tar –zxvf /root/Desktop/ldap

[root@server ~]# mv ldap tab lam

[root@server ~]# cd lam

[root@server ~]# mv config/config.cfg_sample config/config.cfg

[root@server ~]# chmod 777 config/ config/config.cfg sess/ tmp/

(4) Iniciamos los servicios de apache y mysql:

[root@server ~]# service httpd restart

[root@server ~]# chkconfig httpd on

67

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# service mysqld start [root@server ~]# chkconfig mysqld on

(5) Cargamos LAM desde un navegador web: http://192.168.1.2/lam

a) Si no carga la página de LAM por problema con el parámetro memory_limit de php. Debe configurar el siguiente archivo: [root@server ~]# vim /etc/php.ini

memory_limit=128M

b) Si hay problemas con las libreiras pcre, debe descargarlas e instalarlas con la siguiente línea de comandos:

[root@server ~]# rpm –Uhv pcre-XXX.rpm

(6) Una vez cargada la interface web de LAM vamos a la opción LAM Configuration:

68

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(7) Ahora utilizamos la opción “Edit General Settings”:

(8) Cambiamos la contraseña del usuario “admin” de LAM:

69

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(9) En la ventana de Configuración General, configuramos la opción Preferencias del Servidor:

70

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(10) Finalmente accedemos a la interface administrativa y probamos la autenticación de los usuarios desde la base de datos LDAP.

71

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

2.3 SERVIDOR SAMBA

Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para sistemas de tipo UNIX. De esta forma, es posible que ordenadores con Linux o Mac actúen como clientes en redes de Windows. Samba también permite validar usuarios haciendo de Controlador Principal de Dominio, como miembro de dominio e incluso como un dominio Active Directory para redes basadas en Windows Server 2012; aparte de ser capaz de servir colas de impresión, directorios compartidos y autenticar con su propio archivo de usuarios. Ademas es una excelente alternativa para el ahorro de costos de sistemas operativos para servidores.

Samba fue desarrollado originalmente para Unix por Andrew Tridgell utilizando un sniffer o capturador de tráfico para entender el protocolo a través de la ingeniería inversa. El nombre viene de insertar dos vocales al protocolo estándar que Microsoft usa para sus redes, el SMB o server message block. En un principio, Samba tomó el nombre de smbserver pero tuvieron que cambiarlo por problemas con una marca registrada. Tridgell buscó en el diccionario de su máquina Unix alguna palabra que incluyera las letras “s”, “m” y “b” con la orden grep hasta que dio con Samba.

Samba configura directorios Unix-Linux (incluyendo sus subdirectorios) como recursos para compartir a través de la red. Para los usuarios de Microsoft Windows, estos recursos aparecen como carpetas normales de red. Los usuarios de Linux pueden montar en sus sistemas de archivos estás unidades de red como si fueran dispositivos locales, o utilizar la orden smbclient para conectarse a ellas muy al estilo del cliente de la línea de órdenes ftp. Cada directorio puede tener diferentes permisos de acceso sobrepuestos a las protecciones del sistema de archivos que se esté usando en Linux. Por ejemplo, las carpetas home pueden tener permisos de lectura y escritura para cada usuario, permitiendo que cada uno acceda a sus propios archivos; sin embargo, deberemos cambiar los permisos de los archivos localmente para dejar al resto ver nuestros archivos, ya que con dar permisos de escritura en el recurso no será suficiente.

Figura 14: Redes con servicio SAMBA Fuente: Elaboración Propia

Servidor Samba Cliente Samba Cliente Samba

72

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

2.3.1 Componentes del servicio Samba Los componentes del servicio samba los podemos clasificar según el rol del equipo en la red: 1) Samba Server

a) nmbd: Servicio responsable de la solicitudes de ficheros e impresión.

b) nmbd: Registra todos los nombres NetBIOS y responde a las consultas de nombres.

c) /etc/samba/smb.conf: Fichero de configuración del servidor Samba.

d) testparm: Comprueba la sintaxis del fichero smb.conf

e) /etc/samba/smbpasswd: Base de Datos de cuentas de usuarios para las

contraseñas Samba codificadas.

2) Samba Client a) smbclient: Permite acceder a los recursos compartidos NetBIOS, consultar la lista

de recursos compartidos, asegurar los recursos compartidos NetBIOS e imprimir en impresoras NetBIOS.

b) nmblookup: Herramienta de diagnóstico para la resolución de nombres NetBIOS. 2.3.2 Implementación del servicio Samba (1) Instalamos los paquetes de samba utilizando la siguiente línea de comandos:

[root@server ~]# yum install –y samba samba-client samba-common

(2) Editamos el archivo de configuración /etc/samba/smb.conf

[root@server ~]# vim /etc/samba/smb.conf

[global] workgroup = CIBERTEC netbios name = samba.cibertec server string = Servidor Samba Cibertec interfaces = lo eth0 192.168.1.3/24 local master = no domain master = no domain logons = no security = user

(3) Ahora iniciamos el servicio samba:

[root@server ~]# service smb start

73

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(4) Utilizamos el comando chkconfig para iniciar el servicio automáticamente:

[root@server ~]# chkconfig smb on

2.3.2.1 Configuración de Samba como Standalone

(1) Crear el directorio que se va a compartir por samba y asignar los permisos:

[root@server ~]# mkdir /home/publico

[root@server ~]# chown prueba.users /home/public

[root@server ~]# chmod 770 /home/publico

(2) Editar el archivo de configuracion del servicio samba:

[root@server ~]# vim /etc/samba/smb.conf

[publico] comment = Directorio Publico path = /home/publico public = yes browseable = yes writeable = yes force group = users directory mask = 0777 create mask = 0777

(3) Verificar la sintaxis de samba :

[root@server ~]# testparm –v

(4) Ahora reiniciamos el servicio samba:

[root@server ~]# service smb restart

(5) Verificar status de los servicios implementados:

[root@server ~]# smbclient -L localhost (no ingresar el password)

[root@server ~]# netstat -lntp (deben figurar los puertos 139 y 445)

2.3.2.2 Creación de recursos privados (homes)

(1) Crear usuario “jperez” de prueba en el sistema:

[root@server ~]# useradd jperez -d /home/jperez –m -s /bin/false

74

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(2) Crear usuario en samba y asignar password “abc123” :

[root@server ~]# pdbedit -a jperez

[root@server ~]# smbpasswd -a jperez

(3) Verificar existencia de usuario en la base de datos de contraseñas de samba:

[root@server ~]# pdbedit -L

[root@server ~]# cat /etc/samba/smbpasswd

(4) Crear recursos privados (homes) para usuarios, en /etc/samba/smb.conf:

[homes] comment = Carpetas Home de Usuarios valid users = %S browseable = no read only = no

(5) Verificar sintaxis de configuración:

[root@server ~]# testparm -v

(6) Reiniciar servicios para aplicar los cambios:

[root@server ~]# service smb restart

(7) Para acceder al recurso creado mediante clientes linux:

[root@server ~]# smbclient //fileserver/publico -U jperez (ingresar password)

2.3.2.3 Crear recurso compartido para un grupo de usuarios

(1) Crear una cuenta de usuario y grupo para compartir un recurso:

[root@server ~]# groupadd sistemas

[root@server ~]# useradd -md /home/operador1 operador1 -G sistemas

(2) Crear un directorio de trabajo y asignar los permisos necesarios:

[root@server ~]# mkdir /home/sistemas [root@server ~]# chown operador1.sistemas /home/sistemas

[root@server ~]# chmod 770 /home/sistemas

75

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(3) Crear una cuenta de usuario en la base de datos de samba:

[root@server ~]# smbpasswd -a operador1 (asignar password “abc123”) (4) Crear un recurso compartido en /etc/samba/smb.conf:

[sistemas] comment = Directorio Compartido para Grupo Sistemas path = /home/sistemas valid users = @sistemas write list = @sistemas force group = sistemas browseable = yes directory mask = 0770 create mask = 0770

(5) Probar la sintaxis de configuración:

[root@server ~]# testparm -v

(6) Reiniciar el servicio para aplicar los cambios:

[root@server ~]# service smb restart

2.3.2.4 Configuración de Samba como un PDC de dominio

(1) Agregar las siguientes líneas en el archivo /etc/samba/smb.conf:

[global]

local master = yes domain master = yes domain logons = yes

(2) Probar la sintaxis de configuración:

[root@server ~]# testparm -v

(3) Reiniciar el servicio para aplicar los cambios:

[root@server ~]# service smb restart

2.3.2.5 Agregar equipos al dominio generado por el servicio samba (para cientes windows 7/8)

(1) Crear cuenta en el sistema linux para un equipo windows:

76

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

[root@server ~]# useradd lab01-pc05$ -s /bin/false (no se asigna un password)

(2) Agregar a la base de datos de samba (machine trust account) :

[root@server ~]# pdbedit –am lab01-pc05

[root@server ~]# smbpasswd -am lab01-pc05

(3) Ahora debemos realizar cambios en el registro del Windows 7 a unir en el dominio. Navegaremos hasta la ruta: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LammanWorkstation\Parameters

(4) Agregamos los siguientes valores DWORD, con el mismo nombre y valores: DomainCompatibilityMode = 1 DNSNameResolutionRequired = 0 (5) Luego modificamos y verificamos que los siguientes valores DWORD del registro se

encuentren y tengan los valores indicados. Navegamos hasta la ruta: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters

(6) Agregamos o modificamos los valores DWORD: RequireSignalOrSeal = 1 RequireStrongKey = 1 (7) Finalmente modificamos en el registro del sistema los siguientes valores:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters Y modificamos el nombre de nuestro dominio en los siguientes archivos: Domain = "cibertec.pe" ICSDomain = "cibertec.pe"

2.3.2.6 Configuración adicional en las estaciones de trabajo

(1) Configuración de red. Primero debe editar la Configuración Avanzada de TCP/IP de la interfaz a utilizar y establecer manualmente la dirección IP del Servidor Samba como servidor Wins y habilitar la casilla de Activar Netbios sobre TCP/IP.

(2) Cambios en Opciones de seguridad de Directivas locales.

a) Ir a Panel de control → Sistema y Seguridad → Herramientas Administrativas → Directiva de seguridad local → Directivas locales → Opciones de seguridad.

b) En Seguridad de red: nivel de autenticación de LAN Manager, establecer enviar respuestas LM y NTML.

77

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(3) En Seguridad de red: seguridad de sesión mínima para clientes NTML basados en SSP y Seguridad de red: seguridad de sesión mínima para servidores NTML basados en SSP, deshabilitar Requerir cifrado de 128-bit.

78

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Resumen

Los servicios de infraestructura permiten que los usuarios en las redes puedan acceder a los

recursos utilizando nombres y no direcciones IP, porque resulta más simple y practico ya

que retener números sería más complejo.

También los equipos en las redes van a poder obtener la configuración de los parámetros IP

de manera automática a través del servicio DHCP, que permite de manera eficiente entregar

las direcciones IP de manera ordenada.

Implementar servicios de directorio con OpenLDAP permitirá integrar otros servicios de red

teniendo una única instancia de autenticación, Podemos integrar servicios de core,

seguridad, aplicaciones contra la base de autenticación LDAP sin necesidad de tener un

Directorio Activo de Microsoft implementado.

79

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SERVICIO DE MENSAJERÍA

LOGRO DE LA UNIDAD DE APRENDIZAJE Al término de la unidad, los estudiantes implementan servicios colaborativos de correo electrónico.

TEMARIO:

ACTIVIDADES PROPUESTAS

Revisar los requisitos para implementar una solución de correo colaborativo Configurar la solución de correo colaborativo Zimbra ZCS

3.1 Tema 6 : Servidor de Correo Electrónico 3.1.1 : Servicio de correo electrónico. 3.1.2 : Componentes en un sistema genérico de correo electrónico 3.1.3 : Servidor de Correo Colaborativo ZImbra ZCS

UNIDAD

3

80

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

3.1.1 SERVIDOR DE CORREO ELECTRÓNICO

El correo electrónico es la herramienta más antigua y a la vez más útil de Internet. Permite enviar y recibir mensajes a cualquiera de los usuarios de Internet en el mundo. Dichos mensajes consisten en la transferencia de información (texto, imágenes, sonido, etc.), es decir ficheros electrónicos de diversos tipos, entre dos ordenadores.

Fue diseñado para que las personas intercambien mensajes utilizando ordenadores, como en la vida cotidiana se intercambian cartas utilizando el servicio postal convencional. El primer software de correo electrónico permitía sólo esa función básica: una persona en un ordenador redactaba un mensaje que era enviado, a través de la red, a otra persona que utilizara otro ordenador. Hoy en día las soluciones de correo electrónico son contienen herramientas colaborativas que permiten que los usuarios puedan intercambiar listas de contactos, ubicaciones, chat, software de ofimática, etc.

A pesar de su aparente sencillez, las prestaciones del correo electrónico son inmensas: mandar un mismo mensaje a tantas personas como queramos, con independencia de que vivan en los lugares más alejados del planeta, sin separarnos del ordenador, en cuestión de segundos, con la posibilidad de añadir al mensaje archivos de textos, imágenes, programas informáticos.

La estructura de un mensaje es simple: suele incluir varios campos como son el destinatario (que pueden ser varios), el remitente, el asunto (que es el título del mensaje) y el texto. Éste suele ser breve, saltándose gran parte de los convencionalismos del correo normal como membretes, direcciones, fechas, etc. Al final, se puede incluir un archivo de firma con nuestros datos. También se pueden adjuntar archivos de cualquier tipo (texto, imágenes, sonidos, vídeo, programas, etc.)

Una ventaja del correo electrónico es la fiabilidad, ya que si un mensaje no llega a su destino (porque no exista esa dirección o esté mal escrita) es devuelto al remitente con un mensaje aclaratorio.

Recuerde que existen unas normas de cortesía en el correo electrónico y que no está permitido realizar cualquier tipo de abuso en el correo electrónico. Para reducir y minimizar los efectos de los virus y del correo basura, el servicio de correo dispone de un antivirus y una serie de reglas contra el SPAM.

Ventajas del servicio de correo electrónico:

Las principales ventajas que proporciona el correo electrónico son:

• Es asíncrono, es decir, no requiere la intervención del emisor y receptor al mismo tiempo.

• La información se puede reprocesar. Los mensajes intercambiados a través del correo electrónico pueden ser almacenados para su consulta o pueden ser incorporados en otros documentos.

• El correo electrónico es muy económico. Al coste de llamada local puede enviar mensajes a cualquier lugar del mundo.

81

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

• Permite enviar cualquier tipo de información. Con el correo electrónico se puede intercambiar cualquier tipo de información, sean textos, imágenes, dibujos o video.

• Es prácticamente inmediato. A diferencia de un mensaje enviado por el sistema de correo convencional que puede tardar varios días en llegar a su destino, uno enviado por correo electrónico tardará por lo general algunos segundos.

3.1.2 Componentes en un sistema genérico de correo electrónico

Un sistema básico de correo electrónico está compuesto por tres agentes:

MTA: Mail Transfer Agent

MDA: Mail Delivery Agent

MUA: Mail User Agent

MTA

MDA

MUA

MTA

MDA

MUA

Figura 14: Agentes del sistema de correo electrónico Fuente: Elaboración Propia

MUA (Mail User Agent) Es el agente de correo que se instala en el ordenador del usuario y dispone de un interfaz de usuario local que permite editar, redactar y leer los correos. .Algunos ejemplos de MUA: Outlook, Thunderbird, Mailx.

MDA (Mail Delivery Agent) Es el agente de correo encargado de copiar los mensajes desde el servidor de correo hasta el buzón de usuario. Para reparte los correos al MUA utiliza los protocolos POP (Post Office Protocol) e IMAP (Internet Message Access Protocol). Algunos de los más usados son: Cyrus, Maildrop (Unix) y Dovecot.

Servidor de Correo Servidor de Correo

mail.cibertec.pe mail.upc.edu.pe Internet

SMTP / SMTPS

POPS / IMAPS

82

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

MTA (Mail Transfer Agent) Es el agente encargado de la transferencia de los correos entre servidores, empleando el protocolo SMTP. Ademas se encarga de revisar los correos entrantes, verificando si existe la cuente de usuario destino en la base de datos del sistema. Algunos ejemplos de MTA: Postfix, Microsoft Exchange, Qmail.

Proceso de envío de un Correo Electrónico El correo se envía desde el MUA hacia el MTA, para ello utiliza el protocolo SMTP y se enruta de servidor MTA en servidor MTA hasta llegar al servidor MTA del destinatario, empleando para la comunicación el protocolo SMTP. Una vez recibido el correo el MTA destino recibe el correo siempre y cuando la cuenta de usuario exista en la base de datos del servicio, caso contrario rechaza el correo electrónico, Después el MTA de destino entrega el correo al agente de reparto de correo (MDA), el cuál almacena el correo en el buzón del usuario. El agente de correo MUA accede al buzón para leer el correo empleando protocolo los protocolos POP (Post Office Protocol) o IMAP (Internet Message Access Protocol).

3.1.3 Servidor de Correo Colaborativo Zimbra ZCS

Zimbra es un cliente/servidor de correo y calendario, al estilo del Yahoo! Mail en cuanto contenido y al estilo de Gmail en cuanto a velocidad. Para hacer un interfaz tan rápido han usado, al igual que Gmail, del lenguaje AJAX (Javascript + XML) que almacena parte de la página en el cliente, por lo que gran parte de la comunicación entre el cliente y el servidor se reduce inversamente proporcional a la velocidad.

Zimbra ha sido desarrollado en Java, complementado con AJAX, del que se dispone el código fuente completo (y binarios para distribuciones Red Hat Linux como Fedora y RHEL), documentación, herramientas de migración (para Exchange, por ejemplo), entre otros. Zimbra soporta acceso POP, acceso IMAP, entre otros; e incluye protección anti-spam y antivirus.

El Servidor ZCS hace uso de proyectos Open Source existentes como ser: Postfix, MySQL, OpenLDAP y Lucene. Expone una interface de programación de aplicaciones (API) SOAP para toda su funcionalidad y actúa tanto como un servidor IMAP y POP3

El Cliente Web ZCS es una interface de colaboración y administración completa creada empleando el Toolkit Zimbra Ajax. Soporta correos electrónicos y calendarios a través de una impresionante interface web Ajax, que provee tips de sus objetos, ítems arrastrables, y menús que se expanden al hacer clic derecho. También incluye capacidades de búsqueda avanzada y permite relacionar fechas (por ejemplo si se arrastra el cursor sobre “mañana a las 6:00 PM” el sistema desplegara cualquier cita a esa hora). El calendario compartido en grupo también está incluido.

ZCS es compatible con clientes propietarios tales como Microsoft Outlook, Novell Evolution y Apple Mail. También provee soporte de sincronización nativo de dos vías para muchos

83

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

dispositivos móviles (Nokia E-Series, BlackBerry, Windows Mobile, etc). Las versiones ZCS Enterprise se adquieren con licenciamiento por usuarios, renovables mensualmente o anualmente. De acuerdo al valor de la renovación anual se puede acceder a 3 modalidades de soporte.

Permite reutilizar el conocimiento de quienes han adoptado herramientas como Postfix, Amavis, OpenLDAP, ClamAV, SpamAssassin y también ofrece una rápida adaptación para quienes no están familiarizados con el entorno Open Source. Todo en una administración centralizada con un concepto totalmente intuitivo e innovador, que muestra el potencial y la robustez del producto, y que además permite optar por una versión 100% Open Source o su versión Network Enterprise con soporte Zimbra.

ZCS permite optar por AJAX/HTML o su versión móvil adaptada a smartphones. Incluso es posible utilizar su conector para Blackberry Enterprise Server. Junto con ZCS es posible obtener Zimbra Desktop, desarrollado en AJAX, el cual ofrece ricas experiencias visuales a la vez que permite trabajar con múltiple cuentas POP/IMAP/SOAP y múltiples bandejas de entrada sin restricciones de espacio, ofrece total compatibilidad con clientes como Microsoft Outlook, Apple Desktop Suite y Mozilla Thunderbird. ZCS aporta beneficios y prestaciones como: 1. A nivel de Administración:

Consola centralizada

Instalación en múltiples servidores

Gestión de colas de mensajes

Gestión de Antivirus/Spam

Gestión de cuentas, Clases de servicios, Políticas Enterprise

Reportes Avanzados

Estadísticas por servidores, como el tráfico de mensajería o la actividad Spam/Antivirus

2. A nivel de Usuario

Mail

Libretas de direcciones

Calendario

Block de notas

Mensajería instantánea

Listas de tareas

Maletín de documentos

Búsquedas configurables

Antispam/Antivirus

Conjunto de preferencias

84

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

3.1.3.1 Arquitectura de Zimbra

Figura 15: Arquitectura del servidor Zimbra

Fuente: www.zimbra.com 3.1.2.2 Componentes de Zimbra Colaboration Suite

Zimbra Core, instala las bibliotecas, los servicios y herramientas de supervisión.

85

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Zimbra LDAP, instala el software OpenLDAP, que proporciona los servicios de directorio LDAP.

Zimbra MTA, instala el MTA Postfix, el antivirus Clamav, el filtro de SPAM SpamAssassin, y el filtro de contenido Amavisd.

Zimbra Store, instala el servidor de buzones de correo y el webmail, incluyendo Jetty, el contenedor de servlets para el servidor Zimbra.

Zimbra Spell instala el servidor de corrector ortográfico Aspell.

Zimbra Apache, se instala automáticamente cuando Zimbra Spell está instalado.

Zimbra SNMP instala el paquete de SNMP para el monitoreo. Este paquete es opcional.

Zimbra Logger instala herramientas de agregación y presentación de informes de syslog. Si no instala Logger las estadísticas del servidor no se captura, y la sección de estadísticas del servidor de la consola de administración no se muestra.

Zimbra-memcached, Memcached se selecciona automáticamente cuando se instala zimbra-proxy. Al menos un servidor debe ejecutar zimbra-memcached cuando el proxy está en uso. Todos los servidores con zimbra-proxy pueden usar un solo servidor de memcached.

Zimbra Proxy instala la características de proxy POP e IMAP y para proxy reverso de peticiones HTTP, esto es útil para un esquema de instalación en multiservidores.

Zimbra Archiving, instala el almacenamiento y archivado de buzones Zimbra y la función de auditoría de correos. Esta es una característica opcional para ZCS Network Edition que ofrece la capacidad de almacenar y buscar todos los mensajes que fueron enviados o recibidos por ZCS. Cuando este paquete se instala en el servidor de correo, la función de búsqueda global en buzones de correo se habilita. El uso de la función de archivado y auditoría requiere de licencias adicionales.

3.1.2.3 Requisitos para implementar de Zimbra Collaboration Suite

(1) Configurar el nombre del host con mail.cibertec.pe

[root@server ~]# vim /etc/sysconfig/network

HOSTNAME=mail.cibertec.pe

(2) Configurar la dirección IP y el FQDN en el archivo hosts:

[root@server ~]# vim /etc/hosts

86

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

192.168.1.5 mail.cibertec.pe mail

(3) Verificar la resolución DNS con dig. Probar la resolución directa (revisar la unidad 2 Servidor de Nombres de Dominio)

[root@server ~]# dig google .com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.5 <<>> cibertec.pe

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63731

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:

;cibertec.pe. IN A

;; ANSWER SECTION:

cibertec.pe. 86400 IN A 192.168.1.5

;; AUTHORITY SECTION:

cibertec.pe. 86400 IN NS mail.cibertec.pe.

;; ADDITIONAL SECTION:

mail.cibertec.pe. 86400 IN A 192.168.1.5

;; Query time: 8 msec

;; SERVER: 192.168.1.5#53

;; WHEN: Sun Jul 6 14:46:52 2014

;; MSG SIZE rcvd: 82

(4) Probamos la resolución DNS inversa, asegurando que los registros de correo sean resueltos por nuestro servidor DNS

[root@server ~]# dig –x 192.168.1.5

87

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.5 <<>> -x 192.168.1.5

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 437

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:

;5.1.168.192.in-addr.arpa. IN PTR

;; ANSWER SECTION:

5.1.168.192.in-addr.arpa. 86400 IN PTR mail.cibertec.pe.

5.1.168.192.in-addr.arpa. 86400 IN PTR www.cibertec.pe.

;; AUTHORITY SECTION:

1.168.192.in-addr.arpa. 86400 IN NS mail.cibertec.pe.

;; ADDITIONAL SECTION:

mail.cibertec.pe. 86400 IN A 192.168.1.5

;; Query time: 0 msec

;; SERVER: 192.168.1.5#53

;; WHEN: Sun Jul 6 15:37:44 2014

;; MSG SIZE rcvd: 121

(5) Descargar la última versión de Zimbra Open Source desde www.zimbra.com:

88

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(6) También puede descargar el instalador utilizando la línea de comandos de la siguiente

manera: [root@server ~]# wget http://files2.zimbra.com/downloads/8.0.7_GA/zcs-8.0.7_

GA_6021. RHEL6_64. 20140408123911.tgz 3.1.2.4 Instalación de Zimbra Collaboration Suite (1) Instalar los paquetes sysstat y nc:

[root@server ~]# yum -y install sysstat nc

(2) Detener y deshabilitar el servicio del MTA existente (postfix)

[root@server ~]# service postfix stop [root@server ~]# chkconfig postfix off

(3) Descomprimir el instalador

[root@server ~]# tar -xvf zcs-8.0.7_ GA_6021. RHEL6_64. 20140408123911.tgz

(4) Entrar a la carpeta creada

[root@server ~]# cd zcs-8.0.7_ GA_6021. RHEL6_64. 20140408123911

89

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(5) Ejecutar el script de instalación:

[root@server ~]# . /install.sh --platform-override (--platform-override es para CentOS)

Operations logged to /tmp/install.log.3375 Checking for existing installation...

zimbra-ldap...NOT FOUND zimbra-logger...NOT FOUND zimbra-mta...NOT FOUND zimbra-snmp...NOT FOUND zimbra-store...NOT FOUND zimbra-apache...NOT FOUND zimbra-spell...NOT FOUND zimbra-convertd...NOT FOUND zimbra-memcached...NOT FOUND zimbra-proxy...NOT FOUND zimbra-archiving...NOT FOUND zimbra-cluster...NOT FOUND zimbra-core...NOT FOUND

PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. ZIMBRA, INC. ("ZIMBRA") WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADINGINSTALLING THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT. License Terms for the Zimbra Collaboration Suite: http://www.zimbra.com/license/zimbra_public_eula_2.1.html

Do you agree with the terms of the software license agreement? [N] Y

Checking for prerequisites...

FOUND: NPTL FOUND: sudo-1.7.2p1-5 FOUND: libidn-0.6.5-1.1 FOUND: gmp-4.1.4-10 FOUND: /usr/lib/libstdc++.so.6

Checking for suggested prerequisites... FOUND: perl-5.8.8 FOUND: sysstat

Prerequisite check complete. Checking for installable packages Found zimbra-core Found zimbra-ldap

90

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Found zimbra-logger Found zimbra-mta Found zimbra-snmp Found zimbra-store Found zimbra-apache Found zimbra-spell Found zimbra-memcached Found zimbra-proxy Select the packages to install Install zimbra-ldap [Y] Enter Install zimbra-logger [Y] Enter Install zimbra-mta [Y] Enter Install zimbra-snmp [Y] Enter Install zimbra-store [Y] Enter Install zimbra-apache [Y] Enter Install zimbra-spell [Y] Enter Install zimbra-memcached [N] Enter Install zimbra-proxy [N] Enter Checking required space for zimbra-core checking space for zimbra-store Installing: zimbra-core zimbra-ldap zimbra-logger zimbra-mta zimbra-snmp zimbra-store zimbra-apache zimbra-spell You appear to be installing packages on a platform different than the platform for which they were built. This platform is CentOS6 Packages found: RHEL5 This may or may not work. Using packages for a platform in which they were not designed for may result in an installation that is NOT usable. Your support options may be limited if you choose to continue. Install anyway? [N] Y The system will be modified. Continue? [N] Y Removing /opt/zimbra Removing zimbra crontab entry...done. done. Cleaning up zimbra init scripts...done.

91

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Cleaning up /etc/ld.so.conf...done. Cleaning up /etc/prelink.conf...done. Cleaning up /etc/security/limits.conf...done. Finished removing Zimbra Collaboration Suite. Installing packages

zimbra-core......zimbra-core-8.0.7_ GA_6021. RHEL6_64. 20140408123911.rpm... zimbra-ldap......zimbra-ldap-8.0.7_ GA_6021. RHEL6_64. 20140408123911...done zimbra-logger......zimbra-logger-8.0.7_ GA_6021. RHEL6_640140408123911.rpm...done zimbra-mta......zimbra-mta-8.0.7_ GA_6021. RHEL6_64. 20140408123911.rpm...done zimbra-snmp......zimbra-snmp-8.0.7_ GA_6021. RHEL6_64.0140408123911.rpm...done zimbra-store......zimbra-store-8.0.7_ GA_6021. RHEL6_64. 20140408123911.rpm...done zimbra-apache......zimbra-apache-8.0.7_ GA_6021. RHEL6_64. 0408123911.rpm...done zimbra-spell......zimbra-spell-6.0.8_GA_2661.RHEL5-20100820051652.i386.rpm...done

Operations logged to /tmp/zmsetup.11022010-123338.log Installing LDAP configuration database...done. Setting defaults...

DNS ERROR resolving MX for mail.cibertec.pe It is suggested that the domain name have an MX record configured in DNS Change domain name? [Yes] Enter Create domain: [mail.cibertec.pe] cibertec.pe Main menu

1) Common Configuration: 2) zimbra-ldap: Enabled 3) zimbra-store: Enabled

+Create Admin User: yes +Admin user to create: admin@ cibertec.pe ******* +Admin Password UNSET +Enable automated spam training: yes +Spam training user: spam.zhfuz2pki@ cibertec.pe +Non-spam(Ham) training user: ham.jmf6v3silv@ cibertec.pe +Global Documents Account: wiki@ cibertec.pe +SMTP host: mail.dominio2.com +Web server HTTP port: 80 +Web server HTTPS port: 443 +Web server mode: http +IMAP server port: 143 +IMAP server SSL port: 993 +POP server port: 110 +POP server SSL port: 995 +Use spell check server: yes +Spell server URL: http://mail.dominio2.com:7780/aspell.php +Configure for use with mail proxy: FALSE +Configure for use with web proxy: FALSE +Enable version update checks: TRUE

92

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

+Enable version update notifications: TRUE +Version update notification email: admin@ cibertec.pe +Version update source email: [email protected]

4) zimbra-mta: Enabled 5) zimbra-snmp: Enabled 6) zimbra-logger: Enabled 7) zimbra-spell: Enabled 8) Default Class of Service Configuration: r) Start servers after configuration yes s) Save config to file x) Expand menu q) Quit

Address unconfigured (**) items (? - help) 1 Common configuration

1) Hostname: mail.dominio2.com 2) Ldap master host: mail.dominio2.com 3) Ldap port: 389 4) Ldap Admin password: set 5) Secure interprocess communications: yes 6) TimeZone: America/Los_Angeles

Select, or 'r' for previous menu [r] 4 Password for ldap admin user (min 6 characters): [qirppfzPU] Centos$ Select, or 'r' for previous menu [r] 6 Enter the number for the local timezone: [23] 11 Select, or 'r' for previous menu [r] r Address unconfigured (**) items (? - help) 2 Ldap configuration

1) Status: Enabled 2) Create Domain: yes 3) Domain to create: dominio2.com 4) Ldap root password: set 5) Ldap replication password: set 6) Ldap postfix password: set 7) Ldap amavis password: set 8) Ldap nginx password: set

Select, or 'r' for previous menu [r] 4 Password for ldap root user (min 6 characters): [qirppfzPU] Centos$ Select, or 'r' for previous menu [r] 5 Password for ldap replication user (min 6 characters): [qirppfzPU] Centos$

93

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Select, or 'r' for previous menu [r] 6 Password for ldap Postfix user (min 6 characters): [qirppfzPU] Centos$ Select, or 'r' for previous menu [r] 7 Password for ldap Amavis user (min 6 characters): [qirppfzPU] Centos$ Select, or 'r' for previous menu [r] 8 Password for ldap Nginx user (min 6 characters): [qirppfzPU] Centos$ Select, or 'r' for previous menu [r] r

Address unconfigured (**) items (? - help) 3

Store configuration 1) Status: Enabled 2) Create Admin User: yes 3) Admin user to create: [email protected] ** 4) Admin Password UNSET 5) Enable automated spam training: yes 6) Spam training user: [email protected] 7) Non-spam(Ham) training user: [email protected] 8) Global Documents Account: [email protected] 9) SMTP host: mail. cibertec.pe 10) Web server HTTP port: 80 11) Web server HTTPS port: 443 12) Web server mode: http 13) IMAP server port: 143 14) IMAP server SSL port: 993 15) POP server port: 110 16) POP server SSL port: 995 17) Use spell check server: yes 18) Spell server URL: http://mail.cibertec.pe:7780/aspell.php 19) Configure for use with mail proxy: FALSE 20) Configure for use with web proxy: FALSE 21) Enable version update checks: TRUE 22) Enable version update notifications: TRUE 23) Version update notification email: [email protected] 24) Version update source email: admin@ cibertec.pe

Select, or 'r' for previous menu [r] 4

Password for admin@ cibertec.pe (min 6 characters): [6n0cY_YI] Centos$

Select, or 'r' for previous menu [r] r

Main menu

1) Common Configuration: 2) zimbra-ldap: Enabled 3) zimbra-store: Enabled 4) zimbra-mta: Enabled 5) zimbra-snmp: Enabled

94

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

6) zimbra-logger: Enabled 7) zimbra-spell: Enabled 8) Default Class of Service Configuration: r) Start servers after configuration yes s) Save config to file x) Expand menu q) Quit

*** CONFIGURATION COMPLETE - press 'a' to apply Select from menu, or press 'a' to apply config (? - help) a

Save configuration data to a file? [Yes] Enter

Save config in file: [/opt/zimbra/config.11431] Enter

The system will be modified - continue? [No] Yes

Save config in file: [/opt/zimbra/config.11431]

Saving config in /opt/zimbra/config.11431...done.

The system will be modified - continue? [No] Yes Operations logged to /tmp/zmsetup.11022010-123338.log Setting local config values... done. Setting up CA...done. Deploying CA to /opt/zimbra/conf/ca ...done. Creating SSL certificate...done. Installing mailboxd SSL certificates...done. Initializing ldap...done. Setting replication password...done. Setting Postfix password...done. Setting amavis password...done. Setting nginx password...done. Creating server entry for mail.cibertec.pe...done. Saving CA in ldap ...done. Saving SSL Certificate in ldap ...done. Setting spell check URL...done. Setting service ports on mail.cibertec.pe...done. Adding mail.dominio2.com to zimbraMailHostPool in default COS...done. Installing webclient skins...

bones...done. twilight...done. tree...done. sky...done. zmail...done. lake...done. steel...done. smoke...done. waves...done. lemongrass...done.

95

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

bare...done. hotrod...done. yahoo...done. lavender...done. oasis...done. beach...done. sand...done. pebble...done.

Finished installing webclient skins. Setting zimbraFeatureIMEnabled=FALSE...done. Setting zimbraFeatureTasksEnabled=TRUE...done. Setting zimbraFeatureBriefcasesEnabled=TRUE...done. Setting zimbraFeatureNotebookEnabled=TRUE...done. Setting MTA auth host...done. Setting TimeZone Preference...done. Initializing mta config...done. Setting services on mail.cibertec.pe...done. Creating domain cibertec.pe...done. Setting default domain name...done. Creating domain cibertec.pe...already exists. Creating admin account [email protected]. Creating root alias...done. Creating postmaster alias...done. Creating user [email protected]. Creating user [email protected]. Creating user [email protected]. Setting spam training accounts...done. Initializing store sql database...done. Setting zimbraSmtpHostname for mail.cibertec.pe...done. Configuring SNMP...done. Checking for default IM conference room...not present. Initializing default IM conference room...done. Setting up syslog.conf...done.

You have the option of notifying Zimbra of your installation. This helps us to track the uptake of the Zimbra Collaboration Suite. The only information that will be transmitted is: The VERSION of zcs installed (8.0.7_GA_2551_CentOS6) The ADMIN EMAIL ADDRESS created ([email protected]) Notify Zimbra of your installation? [Yes] No Notification skipped Starting servers...done. Installing common zimlets...

com_zimbra_cert_manager...done. com_zimbra_email...done. com_zimbra_adminversioncheck...done. com_zimbra_ymemoticons...done. com_zimbra_date...done. com_zimbra_url...done.

96

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

com_zimbra_phone...done. com_zimbra_dnd...done. com_zimbra_bulkprovision...done.

Finished installing common zimlets. Initializing Documents...done. Restarting mailboxd...done. Setting up zimbra crontab...done.

Moving /tmp/zmsetup.06072014-1255538.log to /opt/zimbra/log

Configuration complete - press return to exit

3.1.2.5 Acceso al panel de administración

Acceso al Panel de Administración, utilice el navegador web de su preferencia y escriba en la barra de direcciones:

https://mail.cibertec.pe:7071

Para acceder al web client de Zimbra escribimos en la barra de direcciones del navegador:

https://mail.cibertec.pe

Verificar los eventos del servicio:

[root@server ~]# tail –f /var/log/zimbra.log

97

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

.

Resumen

El servicio de correo electrónico realiza una serie de procesos con la finalidad de transportar

los correos entre los distintos usuarios. Desde que el usuario emisor redacta el correo

interviene el agente MUA, quien luego pasa el correo al MTA. Este se pone en contacto con

el MTA del destinatario quien recibe el correo para luego pasarlo al agente MDA quien se

hace cargo de depositarlo en el buzón del usuario destino.

Los servicios de correo electrónico colaborativo permiten además utilizar aplicaciones como

chat, calendario, maletín, etc. Para que los usuarios puedan tener servicios agregados como

parte de la solución de correo. Zimbra Collaboration Suite es una solución de correo

colaborativo Open Source que permite implementar soluciones de correo en las empresas

con un alto valor de servicios integrados.

98

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

SERVICIO DE SEGURIDAD

PERIMETRAL

LOGRO DE LA UNIDAD DE APRENDIZAJE Al término de la unidad, los estudiantes implementan un sistema de seguridad perimetral con administración unificada que incluye servicios de Firewall, Proxy, IPS, VPN y Antivirus

TEMARIO:

ACTIVIDADES PROPUESTAS

Implementación de escenarios de seguridad con Endian Firewall UTM

4.1 Tema 7 : Servidor de Seguridad Perimetral 4.1.1 : Seguridad Perimetral. 4.1.2 : UTM 4.1.3 4.1.4 4.1.5 4.1.6

: : : :

Endian Firewall UTM Escenarios de implementación de Endian Firewall UTM Instalación de Endian Firewall UTM Configuración de Endian Firewall UTM

UNIDAD

4

99

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

4.1.1 SERVIDOR DE SEGURIDAD PERIMETRAL

El activo más importante en las organizaciones públicas, privadas y de cualquier índole, es la información que tienen. Entre más grande es la organización más grande es el interés de mantener la seguridad en la red, por lo tanto, es de suma importancia el asegurar la información. La seguridad no es solamente el implementar usuarios y contraseñas, es también implementar políticas que garanticen la seguridad tanto física como lógica de la información. Dentro del entorno de la red se debe asegurar la privacidad de la información y de proteger las operaciones de daños no intencionados como deliberados. La seguridad al cien por ciento no existe pero es el reto de los profesionales de seguridad informática implementar los mecanismos necesarios para impedir los accesos no autorizados a la información corporativa. La planificación de la seguridad en el diseño de la red es decisiva para poder mitigar los riesgos. Algunos puntos que debemos tomar en cuenta en el proceso de planificación son:

Controlar los accesos no autorizados.

Daño intencionado y no intencionado.

Uso indebido de información (robo de información).

El nivel de seguridad de nuestra red dependerá de su tamaño e importancia de la información. Un banco deberá de tener un nivel muy alto de seguridad por las transacciones que maneja, una red casera no tendrá la misma importancia, solo se orientará a los accesos de los familiares a ciertos puntos de las computadoras que la formen. En el proceso de planificación se definen las políticas referentes a los usuarios y contraseñas, los métodos de acceso a los servidores y a los sistemas. Se definen la complejidad que debe reunir las contraseñas y su validación dentro de la red, el tiempo de trabajo de las estaciones de trabajo, áreas de acceso por cada usuario, etc. Hoy en día las organizaciones tienen la posibilidad de unificar los servicios de seguridad en una única solución, es decir, antes tenían que implementar independientemente una de otra los servicios de firewall, IDS, PROXY, VPN. Ahora todos los servicios de seguridad se pueden implementar en una solución llamada UTM (Unified Threat Management). 4.1.2 UTM (Unified Threat Management) UTM o Gestión Unificada de Amenazas es un sistema de seguridad que engloban múltiples funcionalidades (servicios) en un mismo equipo. Algunas de estos servicios son:

Función de un firewall de inspección de paquetes.

Función de VPN (para hacer túneles o redes privadas).

Antispam (para evitar los correos no deseados o spam).

Antiphishing (evitar el robo de información).

Antispyware.

Filtrado de contenidos (para el bloqueo de sitios no permitidos mediante categorías).

Antivirus de perímetro (evitar la infección de virus informáticos en computadoras clientes y servidores).

Detección/Prevención de Intrusos (IDS/IPS).

100

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Estos sistemas inspeccionan cada paquete (información) que va o viene de Internet (u otra red externa / interna) a nivel de capa de aplicación, y éste puede trabajar de dos modos:

Modo proxy: Hacen uso del proxy para procesar y redirigir todo el tráfico interno. El firewall UTM hace de cliente y de servidor, y es el intermediario indirecto de las comunicaciones desde y hacia el internet o quizás otras redes remotas.

Modo Transparente: No redirigen ningún paquete que pase por la línea, simplemente lo procesan y son capaces de analizar en tiempo real los paquetes. Este modo requiere de unas altas prestaciones hardware pero es la mejor alternativa de UTM.

En entornos de pequeñas y medianas empresas se pueden sustituir varios sistemas independientes por uno solo facilitando su gestión mediante un solo equipo que tenga todas éstas funcionabilidades. A continuación mencionaremos algunas soluciones libres de UTM:

Endian Firewall UTM

IPCop

PFSense

OpenWRT

Untangle Gateway

Zentyal UTM 4.1.3 ENDIAN FIREWALL UTM Endian Firewall es una “llave en mano” de distribución de seguridad para Linux que convierte a todo el sistema en un dispositivo de seguridad con todas las funciones y con gestión unificada de amenazas (UTM) El software ha sido firmado pensando en el usuario ya que es muy fácil de instalar, utilizar y gestionar, sin perder su flexibilidad. 4.1.3.1 Características de Endian Las características incluyen un firewall de inspección de paquetes, proxies a nivel de aplicación para los distintos protocolos (HTTP, FTP, POP3, SMTP), antivirus y spamfiltering para el tráfico de correo electrónico (POP y SMTP), filtrado de contenido de tráfico Web y una solución VPN (basada en OpenVPN) para las conexiones seguras. La principal ventaja de Endian Firewall es que es una solución Open Source.que incluye las siguientes características:

Administración unificada de amenazas para proteger la red y optimizar el flujo de información.

Funciona con cualquier tipo de Hardware y lo convierte en un dispositivo multifuncional de seguridad.

Fácil configuración y manejo de funciones avanzadas de seguridad.

Protección de correo electrónico y de internet con diversos niveles de filtro.

Siempre actualizado con lo último en anti-spam, anti-spyware, anti-virus y servicios de filtración de contenidos.

Administración y servicio centralizado a través de la red Endian.

101

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Recuperación de datos instantánea, minimizando caídas y fallas en el sistema.

Figura 16: Seguridad perimetral básica con Endian Firewall Fuente: http://docs.endian.com/2.5.2/utm/index.html

Endian Firewall UTM mantiene los correos protegidos de virus y spam, asegura cualquier servidor o cliente de correos, gracias a proxies transparentes. Cualquier servidor de correos, como Microsoft Exchange o clientes como Outlook o Mozilla Thunderbird automáticamente serán protegidos y filtrados por Endian Firewall antivirus y antispam, no hay necesidad de modificar configuraciones de su servidor o cliente de correos.

4.1.4 Escenarios de implementación de Endian Firewall UTM: 4.1.4.1 Alta disponibilidad de Internet

Esta es una red estándar con requerimientos de alta disponibilidad de Internet. Se puede configurar Endian para conectarse a múltiples proveedores de servicios de Internet (ISP) y enviar cierto tráfico saliente a través de un proveedor específico y proporcionar redundancia si un proveedor se cae.

102

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Figura 17: Solución de alta disponibilidad con Endian Firewall Fuente: http://docs.endian.com/2.5.2/utm/index.html

4.1.4.2 Acceso remoto seguro a la red LAN

Si alguno de los empleados está mucho tiempo fuera de la oficina y necesita acceder a recursos internos, entonces este es una configuración común. Configure una laptop con las credenciales requeridas para autenticarse contra el firewall e independientemente de donde se encuentre, y que cuenten con una conexión a Internet, este sentirá que está conectado directamente a su red local. Outlook, unidades de almacenamiento, software CRM y acceso a la Intranet son solo algunas de las cosas que ellos podrán tener disponibles.

Figura 18: Acceso remoto con Endian Firewall Fuente: http://docs.endian.com/2.5.2/utm/index.html

103

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

4.1.4.3 VPN Gateway to Gateway (VPN Net to Net) Endian permite la interconexión de las oficinas principales con las sucursales de manera que los usuarios de ambas oficinas pueden acceder a los recursos sin reglas de firewall ni puertos extraños. O podemos manejar un servidor DNS para ambas oficinas, reduciendo los tiempos de mantenimiento, en realidad tenemos diversas opciones de configuración según la naturaleza de los negocios.

Figura 19: Solución VPN con Endian Firewall Fuente: http://docs.endian.com/2.5.2/utm/index.html

Endian Firewall es un sistema todo en uno que integra lo mejor del software “open-source” entre ellos mencionaremos a:

Linux Centos: Sistema Operativo Linux Enterprise.

IPTables: Software de filtrado de paquetes

OpenSSH: Herramienta para realizar conexiones remotas.

DansGuardian: Software para el filtrado de contenidos web.

OpenVPN: Software para la implementar conexiones seguras.

Squid: Es un web proxy de cache que soporta HTTP, HTTPS y FTP.

Sarg: Herramienta que genera reportes detallados de navegación.

SpamAssasin: Reconocido como el mejor antispam.

ClamAV: Antivirus.

HAVP: Es un antivirus proxy HTTP.

Dnsmasq: Servidor DNS y DHCP ligero.

FROX: Proxy transparente FTP.

FreeS/WAN: Soporte para IPSec.

Postfix: Servidor de correo electrónico.

FreeRADIUS: Servidor Radius

OFICINA PRINCIPAL OFICINA SUCURSAL

104

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

4.1.4 Instalación de Endian Firewall UTM

(1) Descargar Endian Firewall UTM desde la página oficial: http://www.endian.com, opción

Community/Download

(2) Grabar la imagen descargada en un CD e insertar en la unidad de CDROM. Cargar el servidor desde la lectora.

(3) Presionar la tecla ENTER para iniciar el proceso de instalación:

105

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(4) Ahora hay que escoger el idioma para el proceso de instalación. Endian Firewall puede ser instalado en los siguientes idiomas: alemán, inglés e italiano. Escogemos el idioma inglés y vamos a la opción OK.

(5) Estamos casi listos para iniciar el proceso de instalación de los paquetes que trae Endian Firewall:

106

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(6) Nos envía una advertencia que toda la información de nuestro disco duro será eliminada. Utilizamos la opción OK para continuar el proceso de instalación.

(7) Finalmente nos avisa si queremos habilitar el puerto de consola. Le decimos que NO y vamos a la opción OK.

107

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(8) Y comienza la instalación de paquetes que vienen con Endian Firewall.

(9) Si necesitamos el progreso de instalación de los paquetes presionamos la tecla F2.

Luego regresamos a la pantalla anterior presionado la tecla F1

108

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(10) El último paso es asignar una dirección IP, que será la dirección administrativa inicial que utilizaremos para configurar Endian Firewall

(11) Reiniciamos el servidor y cargara la siguiente pantalla, luego debemos conectarnos por HTTPS utilizando un navegador web para configurar el servidor de seguridad.

109

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

4.1.5 Configuración inicial de Endian Firewall UTM (1) Para empezar a configurar Endian Firewall, utilizamos un navegador web y en la barra

de direcciones ingresamos: https://192.168.1.100:10443 (esta dirección IP especificamos en la última parte del proceso de instalación)

(2) Utilizamos el botón SIGUIENTE para escoger el idioma (ingles) del Endian

Firewall y la zona horaria (América/Lima) que utilizara nuestro servidor

110

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(3) Aceptamos la licencia de uso de Endian Firewall

(4) Luego nos pregunta si vamos a restaurar una copia de seguridad (backup), utilizamos la

opción NO, porque es nuestra primera instalación

(5) Presionamos el botón SIGUIENTE y ahora ingresamos la contraseña para el usuario

“admin” para ser utilizada en la interface web administrativa y la contraseña para el usuario “root” para conectarse al servidor por SSH.

111

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(6) Luego nos muestra las interfaces de red reconocidas (en nuestro servidor tenemos dos

tarjetas de red) y seleccionamos la interface RED que será la que se conecte a la red pública a través de nuestro router.

(7) Ahora nos muestra información para las interfaces ORANGE (DMZ) y BLUE (wifi), pero

solo tenemos dos tarjetas de red, por lo tanto presionamos el botón SIGUIENTE

112

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(8) Luego tenemos que configurar la interface GREEN (LAN) que va conectada a nuestra

red corporativa o privada.

113

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(9) Configuramos los parametros para interface GREEN que es la que esta conectada hacia nuestra red LAN

(10) Asignamos las direcciones IP de los servidores DNS publicos de nuestro Proveedor de Servicio de Internet o podemos utilizar las direcciones de los servidores DNS del proyecto OPENDNS

(11) Podemos registrar la direccion de correo electronico para que nos lleguen las notificaciones del servidor Endian Firewall

114

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(12) Finalmente aplicamos la configuración y se reiniciara el servidor

4.1.6 Configuraciones en Endian Firewall UTM En la topología vemos que el servidor Endian Firewall UTM está en el perímetro de la red LAN (172.16.1.0/24) y de la red WAN (200.31.116.16/28). Vamos a configurar las reglas de firewall para permitir el acceso desde internet a los servidores corporativos (Web y Correo Electrónico).

Figura 20: Escenario de Implementación de Seguridad Perimetral con Endian Firewall Fuente: Elaboración Propia

(1) Ingresamos a nuestro servidor Endian Firewall utilizando un navegador web y en la barra

de direcciones escribimos: http://172.16.1.1

Luego vamos a la opción Firewall-Port Forwarding/Destination NAT y configuramos las reglas para permitir el acceso a los servidores corporativos.

Web Server 172.16.1.3/24

pc_01 172.16.1.50/24

pc_02 172.16.1.50/24

Zimbra Server 172.16.1.4/24

Endian Firewall UTM

RED: 200.31.116.18

GREEN: 172.16.1.1/24

LAN: 172.16.1.0/24 WAN: 200.31.116.16/28

Usuario VPN

115

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(2) De igual forma procedemos con la apertura para servidor de correo. Configuramos el

servicio SMTP que utiliza el puerto 25/TCP y hacemos un NAT a la dirección IP Privada 172.16.1.4/24.

(3) Configuramos el acceso para que el Usuario VPN “rcueva” pueda acceder de manera segura a la red corporativa, además de utilizar los recursos como impresoras, teléfonos IP, cámaras IP, etc. Primero configuramos el servicio VPN

a. Habilitamos el servicio VPN. b. Establecer el rango de direcciones que se va a entregar a los clientes VPN

(172.16.1.220 – 172.16.1.254) c. Inmediatamente se crea el Certificado Digital para configurar los clientes VPN.

116

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

(4) Creamos la cuenta para el usuario roadwarrior [email protected]. Vamos a la opción Accounts dentro del menú VPN.

117

SISTEMAS OPERATIVOS AVANZADOS

CARRERA DE REDES Y COMUNICACIONES CIBERTEC

Resumen

La seguridad perimetral es una de las capas más importante para mantener segura la

información y además para prevenir el acceso externo no autorizado a la infraestructura

privada de nuestras redes.

Hoy en día las soluciones de seguridad permiten implementar la gestión unificada de

amenazas con la finalidad de tener los principales servicios de seguridad en una única

solución. Endian es una solución Open Source que permite desplegar mecanismos que

protejan nuestra red de manera más sencilla pero a la vez con altos niveles de seguridad.

También podemos integrar nuestras oficinas remotas o sucursales a la oficina principal

utilizando conexiones seguras VPN, para que los usuarios de la red puedan acceder a todos

los recursos que ofrece la red corporativa.