administracion servidores

33
INSTITUTO TECNOLÓGICO DE CUAUTLA Administración y seguridad de servidores. Servidor de Samba. Servidor Squid. Servidor Postfix.

Upload: isaac-gonzalez

Post on 26-May-2015

643 views

Category:

Technology


1 download

DESCRIPTION

Administración y seguridad de servidores. Servidor de Samba. Servidor Squid. Servidor Postfix.

TRANSCRIPT

Page 1: Administracion  servidores

INSTITUTO TECNOLÓGICO DE CUAUTLA

Administración y seguridad de servidores.

Servidor de Samba.

Servidor Squid.

Servidor Postfix.

Noviembre 2012.

Page 2: Administracion  servidores

Samba.

Los servidores Samba se encargan de facilitar a los usuarios la oportunidad de configurar,

mediante el uso de un software totalmente libre, un sistema por el cual se interconectan

ordenadores de sistemas operativos Windows o Linux. Esto hace que al compartir

archivos sea mucho más sencillo y que se utilicen herramientas de conexión avanzadas

entre estos dispositivos.

La principal particularidad y función de un servidor con la tecnología Samba.org es que

permite crear redes de conexión entre equipos de distintas configuraciones. Para expertos

informáticos y lugares en los que se requiere una comunicación directa entre los

ordenadores, Samba es uno de los recursos más utilizados.

Instalación y configuración Samba en Ubuntu 12.04.

Lo primero que haremos será la instalación de samba, esto se hace mediante la siguiente

instrucción.

$ sudo apt-get install samba samba-client smbfs smbclient

El archivo de configuración de Samba puede ser encontrado en /etc/samba/smb.conf

vamos a editar este archivo.

$ sudo gedit /etc/samba/smb.conf

En el archivo de configuración cambiamos donde dice workgroup.

workgroup = WORKGROUP

2

Page 3: Administracion  servidores

Donde “WORKGROUP” es el nombre del grupo de trabajo de MS Windows o el nombre

de dominio, de donde será parte el servidor Samba. Se tiene que configurar el mismo

grupo de trabajo en las computadoras Windows.

Crear, editar o eliminar usuarios en Samba.

Los usuarios que queremos que tengan acceso al servidor Samba deben estar creados

como usuarios en nuestro servidor linux, podemos crear un grupo samba y agregar a ese

grupo todos los usuarios que tendrán acceso al servidor samba:

Para agregar un usuario a linux podemos utilizar el comando:

$ sudo adduser nombre_usuario

Nos pedirá la clave que queremos utilizar para ese usuario y algunos datos que son

opcionales, luego podemos cambiar sus privilegios.

3

Page 4: Administracion  servidores

Después de crear el usuario lo agregamos a los usuarios de Samba mediante el

comando:

$ sudo smbpasswd -a nombre_usuario

Colocamos la clave que queremos que tenga ese usuario para ingresar al servidor

Samba.

Creamos un nuevo archivo donde estarán todos los usuarios autorizados para conectarse

al Servidor de Samba, para esto ejecutamos:

$ sudo gedit /etc/samba/smbusers

En el nuevo archivo escribimos la siguiente línea:

nombre_enlinux = “Nombre en Windows”

Donde nombre_enlinux es el nombre del usuario que tenemos en linux y Nombre en

Windows es el nombre del usuario de red en Windows. Tenemos que agregar una nueva

línea por cada usuario que creemos para Samba.

Para editar un usuario ejecutamos: $ smbpasswd -a nombre_usuario

Para borrar un usuario ejecutamos: $ smbpasswd -x nombre_usuario

Compartir Archivos con Samba

Vamos a modificar el archivo de configuración de Samba:

$ sudo gedit /etc/samba/smb.conf

Busca la línea que dice: ; security = user

4

Page 5: Administracion  servidores

Y la modificamos por:

security = user

username map = /etc/samba/smbpasswd

Con esto le decimos a Samba que vamos a autentificar por usuario y donde está la lista

de los usuarios permitidos que creamos anteriormente.

Para dar acceso a los usuarios a sus respectivos directorios home o personales, hacemos

lo siguiente:

Buscamos la línea donde dice

;[homes]

; comment = Home Directories;

;browseable = no

;valid users = %S

;writable = no

Y le quitamos el (;) para descomentarlos, y en writable le cambiamos no por yes para que

el usuario pueda escribir en el directorio.

5

Page 6: Administracion  servidores

Siempre que se haga un cambio en el archivo de configuración debemos reiniciar Samba,

para que los aplicar los cambios.

$ sudo restart smbd

Compartiendo directorios a través de Samba.

Para los directorios o volúmenes que se irán a compartir, en el mismo fichero de configuración encontrará distintos ejemplos para distintas situaciones particulares. En general, puede utilizar el siguiente ejemplo que funcionará para la mayoría:

[Lo_que_sea]

comment = Comentario que se le ocurra

path = /cualquier/ruta/que/desee/compartir

El volumen puede utilizar cualquiera de las siguientes opciones:

Opción Descripción

guest ok Define si ser permitirá el acceso como usuario invitado. El valor puede ser Yes o No.

public Es un equivalente del parámetro guest ok, es decir define si

6

Page 7: Administracion  servidores

ser permitirá el acceso como usuario invitado. El valor puede ser Yes o No.

browseable Define si se permitirá mostrar este recurso en las listas de recursos compartidos. El valor puede ser Yes o No.

writable Define si ser permitirá la escritura. Es el parámetro contrario de read only. El valor puede ser Yes o No. Ejemplos: «writable = Yes» es lo mismo que «read only = No». Obviamente «writable = No» es lo mismo que «read only = Yes»

valid users Define que usuarios o grupos pueden acceder al recurso compartido. Los valores pueden ser nombres de usuarios separados por comas o bien nombres de grupo antecedidos por una @. Ejemplo: fulano, mengano, @administradores

write list Define que usuarios o grupos pueden acceder con permiso de escritura. Los valores pueden ser nombres de usuarios separados por comas o bien nombres de grupo antecedidos por una @. Ejemplo: fulano, mengano, @administradores

admin users Define que usuarios o grupos pueden acceder con permisos administrativos para el recurso. Es decir, podrán acceder hacia el recurso realizando todas las operaciones como super-usuarios. Los valores pueden ser nombres de usuarios separados por comas o bien nombres de grupo antecedidos por una @. Ejemplo: fulano, mengano, @administradores

directory mask Es lo mismo que directory mode. Define que permiso en el sistema tendrán los subdirectorios creados dentro del recurso. Ejemplos: 1777

create mask Define que permiso en el sistema tendrán los nuevos ficheros creados dentro del recurso. Ejemplo: 0644

Agregar una carpeta para compartir

Primero debemos crear una carpeta con permisos, por ejemplo:

$ sudo mkdir /home/public$ sudo chmod 777 /home/public

7

Page 8: Administracion  servidores

chmod 777 archivo: sirve para dar permisos de escritura, lectura y ejecución a todos los usuarios.

Luego abrimos el archivo /etc/samba/smb.conf para modificarlo:

$ sudo gedit /etc/samba/smb.conf

Y le agregamos, al final, algo como esto:

[public]comment = Cosas publicanspath = /home/publicpublic = yeswritable = no

Acceso a los recursos compartidos

Desde Windows: Colocamos en la barra de direcciones de alguna ventana:

\\192.168.X.X\recurso

8

Page 9: Administracion  servidores

Desde Linux: Debemos tener samba-client. Luego, abrimos una carpeta y colocamos en la barra de direcciones:

smb://192.168.X.X/recurso/

9

Page 10: Administracion  servidores

o

smbclient //192.168.X.X/recurso/

Donde 192.168.X.X es "la IP privada" del equipo linux que contiene a la carpeta /home/recurso.

Referencias.

http://www.guia-ubuntu.org/index.php?title=Samba http://www.codigofantasma.com/blog/instalar-y-configurar-servidor-samba-en-

ubuntu-linux/ http://trauko.wordpress.com/2007/09/17/instalando-samba-en-ubuntu-para-

compartir-archivos-e-impresoras-en-redes-windows/

10

Page 11: Administracion  servidores

¿Servidor proxy?

Un servidor proxy es un programa informático o dispositivo con diversas funciones, entre las más habituales están:

Permitir conectarse a internet a una serie de equipos a través de una sola IP. Filtrado de contenidos. En el caso de los proxy-caché como Squid, almacenan una caché de páginas

webs para que el acceso a ellas sea mucho más rápido.

Instalación servidor proxy Squid3 en Ubuntu 12.04

Para instalar Squid3 en nuestra maquina, debemos escribir en la consola la siguiente instrucción.

$ sudo apt-get install squid3

Una vez instalado, abrimos /etc/squid3/squid.conf para habilitar una directiva.

$ sudo gedit /etc/squid3/squid.conf

11

Page 12: Administracion  servidores

Buscamos “visible_hostname localhost“.

Una vez encontrada esta línea debe de ser comentada (# al principio de la línea), y debajo de esta agregamos lo siguiente:

visible_hostname Isaac-VirtualBox

En este caso Isaac-VirtualBox porque aquí se debe colocar el nombre de nuestra maquina. Para saber el nombre de nuestra maquina debemos escribir en nuestra terminal $ hostname.

Una vez que tenemos la antigua línea comentada y la nueva línea añadida.

Vamos a reiniciar el nuestro servidor Squid3.

$ sudo /etc/init.d/squid3 start ó $sudo restart squid3

Configuración

Vamos a configurar nuestro servidor Squid3 de la siguiente manera:

Queremos 512 MB de caché en disco duro.

Vamos a cambiar los directorios de nivel 1 y de nivel 2.

12

Page 13: Administracion  servidores

Sólo se permitirá el acceso desde la red 192.168.0.0/255.255.0.0.

Filtraremos el acceso a 3 páginas web cualquiera.

Estableciendo los 512 MB de caché en disco y los niveles de directorios

Vamos ahora a establecer nuestra caché de disco, en este caso serán 512 MB. Debemos de abrir el archivo de configuración.

$ sudo gedit /etc/squid3/squid.conf

La directiva encargada de controlar la caché en disco se llama cache_dir. Debemos de buscarla en el archivo, y justo abajo escribimos:

cache_dir ufs /var/spool/squid3 512 8 64

A la directiva cache_dir le indicamos el sistema de almacenamiento que va a usar, ufs es el más recomendable. /var/spool/squid3 es el directorio donde se almacenará la caché. 512 son los MB de caché que usaremos.8 y 64 son los directorios de nivel 1 y 2 respectivamente, estos directorios están ubicados en el directorio de la caché.

Definiendo la ACL para 192.168.0.0/24

Vamos a crear reglas ACL. Básicamente, una ACL es una definición de control de acceso en la que definiremos una serie de reglas.

Debemos buscar en /etc/squid3/squid.conf donde se encuentran las ACL. Será en esa zona donde definamos nuestras propias reglas, dicha zona presenta una serie de ACL por defecto y se encuentran próximas a la línea 600.

Definimos entonces una ACL que hará referencia a todos los equipos de la red 192.168.0.0/24.

13

Page 14: Administracion  servidores

acl equipos_permitidos src 172.168.0.0/24

La dirección de la máscara debe ser escrita en CIDR (Classless Inter-Domain Routing) con esto evitaremos que el servidor nos marque error en la configuración. CIDR 24 es el equivalente a 255.255.255.0.

Esto agrupa a todas las direcciones IP de dicha red.

Definiendo la ACL de las páginas webs que vamos a restringir.

vamos a filtrar:

www.facebook.com

www.youtube.com

Vamos a añadir una ACL para cada página web, de modo que en el mismo fichero de configuración de Squid y debajo de la anterior línea escribimos:

acl facebook dstdomain www.facebook.com

acl youtube dstdomain www.youtube.com

Esto define las ACL para cada nombre de dominio.

14

Page 15: Administracion  servidores

También debemos bloquear paginas por palabras clave, esto lo hacemos creando una lista de control, el cual deberá contener las palabras clave (facebook, youtube en nuestro caso) Esto sirve porque hemos bloqueado www.facebook.com pero si se accede directamente www.facebook.com/login.php el bloqueo no será efectivo, con ayuda del archivo todo aquel que contenga la palabra facebook será bloqueado.

acl blockword url_regex "/etc/squid3/blockword"

Vamos ahora a crear las directivas http_access que manejarán nuestras ACL.

Esta es una parte muy importante, ya que las reglas http_access deben de estar en el orden adecuado. Primero debemos definir las reglas que deniegan algo, y después las que permiten. Nuestro orden va a ser el siguiente:

15

Page 16: Administracion  servidores

http_access deny youtube

http_access deny facebook

http_access deny blockword

shttp_access allow equipos_permitidos

Vamos a ubicar las directivas http_access

Las http_access las vamos a insertar en una zona en concreto de nuestro fichero de configuración, para llegar a esa zona, buscamos INSERT YOUR OWN en el fichero.

Una vez añadidas las http_access, guardamos el fichero y reiniciamos el servicio.

$ sudo /etc/init.d/squid3 restart

Esta operación puede tardar unos segundos, una vez tenemos el servicio correctamente reiniciado, pasamos a configurar Mozilla Firefox para usar nuestro proxy.

Configurando Firefox para usar nuestro proxy

Vamos ahora a indicarle a Mozilla Firefox que use nuestro proxy, para ello abrimos una nueva ventana de nuestro navegador y nos vamos a Editar/Preferencias, en la ventana que se nos abre nos vamos a la ficha Avanzado, dentro de esta nos vamos a Red, y dentro de Red pulsamos en el botón Configuración.

La ventana que se nos abre, la rellenamos de la siguiente forma.

16

Page 17: Administracion  servidores

Pulsamos Aceptar y ya tenemos todo listo.

Esto es lo que ocurrirá cuando intentemos entrar en uno de los sitios restringidos.

Para configurar otros equipos en la red deberemos proporcionar la ip de nuestro equipo servidor y el puerto del proxy. En este caso 192.168.1.87 y el puerto 3128.

En este ejemplo se configura el navegador Chrome en una maquina cliente con Windows 7. Vamos a Opciones/configuración Damos clic en “mostrar configuración avanzada” y después en “Cambiar la configuración del proxy” Esto abrirá “propiedades de internet de Windows” damos clic en la pestaña “conexiones” y posteriormente en el botón “configuración de LAN”

17

Page 18: Administracion  servidores

Y debe quedar como se muestra.

Ahora solo damos aceptar y estará listo. Ahora intentaremos entrar en uno de los sitios restringidos, Deberá mostrar algo como esto.

18

Page 19: Administracion  servidores

Referencias.

http://antocarmona.blogspot.mx/2012/09/configurar-proxysquid-en-ubuntu-sever.html

http://thebitdeveloper.com/2010/02/12/instalacion-y-configuracion-de-squid3/ http://es.wikipedia.org/wiki/Classless_Inter-Domain_Routing

19

Page 20: Administracion  servidores

Servidor correo electrónico.

Un servidor de correo es una aplicación de red ubicada en un servidor en internet, cuya función es parecida al Correo postal tradicional, sólo que en este caso lo que se maneja son los correos electrónicos, a los que se hace circular a través de redes de transmisión de datos. A diferencia del correo postal, por este medio sólo se pueden enviar como adjuntos, ficheros de cualquier extensión, y no bultos o paquetes o documentación, al viajar la información en formato electrónico.

Una forma especial de servidor de correo, es aquél que es accedido vía Web usando el protocolo http. En realidad no es servidor, sino un cliente de correo que corre en un servidor web. A través de dicho cliente se puede acceder al servidor de correo sin necesidad de instalar un cliente de correo en la computadora local.

En este tipo de servidor, el archivo de datos del remitente o destinatario puede ser accedido sin requerir un cliente local. En el mismo servidor se integran programas para acceder a los correos del mismo. Ejemplos típicos de este servicio son: www.hotmail.com, www.yahoo.com, www.gmail.com, etc.

Instalación Apache Bind9 Postfix Dovecot Squirrelmail en Ubuntu 12.04.

Lo primero que haremos sera instalar un servidor web, vamos a instalar el servidor apache, esto lo hacemos mediante la siguiente instrucción.

$ sudo apt-get install apache2

Después debemos instalar el servidor DNS, para este propósito vamos a instalar el servidor bind, lo hacemos con el siguiente comando.

$ sudo apt-get install bind9

20

Page 21: Administracion  servidores

Ahora debemos modificar el archivo de configuración de bind9, para acceder al archivo escribimos el siguiente comando.

$ sudo gedit /etc/bind/named.conf.local

Una vez en el archivo debemos agregar las siguientes líneas.

Zone “adminserv.com”{

Type master;

File “/etc/bind/adminserv.db”

};

“Adminserv” corresponde al nombre que va a tener nuestro dominio.

21

Page 22: Administracion  servidores

Terminada la configuración y habiendo guardado el archivo, debemos reiniciar bind.

$ sudo /etc/init.d/bind9 restart

Ahora instalaremos nuestro servidor de correo, instalaremos el servidor Postfix, tecleamos el siguiente comando.

$ sudo apt-get install postfix

Nos pedirá elegir algunas opciones y elegimos

<OK>

Internet site

System mail name : adminserv.com

22

Page 23: Administracion  servidores

Ahora vamos a editar el archivo de configuración, tecleamos el siguiente comando.

$ sudo gedit /etc/postfix/main.cf

Al final del archivo debemos agregar las siguientes líneas.

inet_protocols = ipv4

home_mailbox = Maildir/

Ahora debemos reiniciar Postfix.

$ sudo /etc/init.d/postfix restart

Ahora deberemos instalar un servidor de Imap y pop3, para esto instalamos Dovecot.

$ sudo apt-get install dovecot-common dovecot-imapd dovecot-pop3d

23

Page 24: Administracion  servidores

Reiniciamos apache y postfix.

$ sudo /etc/init.d/apache2 restart

$ sudo /etc/init.d/postfix restart

Ahora vamos a modificar el archivo de configuración de dovecot.

$ sudo gedit /etc/dovecot/dovecot.conf

Agregamos las siguientes líneas.

protocols = imap pop3

mail_location = maildir:~/Maildir

Ahora reiniciamos Dovecot.

$ sudo restart dovecot

24

Page 25: Administracion  servidores

Ahora instalaremos una aplicación webmail que nos permitirá acceder a nuestro correo electrónico desde nuestros navegadores, para esto instalaremos squirrelmail.

$ sudo apt-get squirrelmail

Ahora debemos copiar el archivo de configuración de Squirrelmail hacia la configuración de apache.

$ sudo cp /etc/squirrelmail/apache.conf /etc/apache2/conf.d/squirrelmail.conf

Debemos de reiniciar apache.

$ sudo /etc/init.d/apache2 restart

A continuación configuramos Squirrelmail.

Podemos teclear: /usr/sbin/squirrelmail-configure ó squirrelmail-configure

Debemos elegir las opciones.

D

25

Page 26: Administracion  servidores

dovecot

S

Q

Para evitar errores, debemos reiniciar los servicios.

$ sudo /etc/init.d/apache2 restart

$ sudo /etc/init.d/bind9 restart

$ sudo /etc/init.d/postfix restart

$ sudo restart dovecot

Ahora creamos un nuevo usuario en el sistema.

$ sudo adduser "nombre_usuario"

Proporcionamos la información necesaria para terminar la creación de la cuenta.

Para que los servidores puedan leer y escribir en la carpeta del usuario debemos de dar permisos de lectura escritura a la carpeta personal de nuestros usuarios.

$ sudo chmod –R 777 /home/”nombre_usuario”

26

Page 27: Administracion  servidores

Para nuestro ejemplo hemos dado permisos de lectura escritura de manera recursiva, Para mejorar la seguridad deberá analizarse que tipo de permisos y a que carpetas deberán ser dados los permisos.

Ahora en nuestro navegador escribimos localhost/squirrelmail esto nos permitirá acceder a la página de login de squirrelmail, en la cual debemos ingresar con la cuenta de usuario que acabamos de crear.

Se han creado dos cuentas de usuario “usuario1” y ”usuario2” por lo que una vez logueado como “usuario1” procederemos a enviar un correo a “usuario2”

27

Page 28: Administracion  servidores

Para poder revisar el correo debemos ingresar con nuestra cuenta de “usuario2”. Accederemos a nuestra cuenta desde un equipo cliente para lo que en la barra de direcciones de nuestro navegador ingresamos “ip_servidor”/squirrelmail en nuestro caso seria de la siguiente forma 192.168.1.155/squirrelmail y desde ahí nos logueamos con “usuario2”

Y podremos ver el correo que ha sido enviado desde la cuenta “usuario1”.

28

Page 29: Administracion  servidores

Si al momento de acceder a las cuentas de correo nos enviara algún error podemos acceder al registro en /var/log/mail.log. Esto puede ser de gran ayuda para encontrar una solución a los problemas que pueda presentar nuestro servicio.

$ gedit /var/log/mail.log

ó

$ nano /var/log/mail.log

Referencias.

http://blog.suenyos.com/2011/06/16/instalar-postfix-y-squirrelmail-en-ubuntu-11-04/ http://frayre.com.mx/wordpress/?p=116 http://es.wikipedia.org/wiki/Servidor_de_correo http://www.humbug.in/docs/ubuntu-server-guide-es-10.04/dovecot-server.html http://www.postfix.org/ http://nuc134rb0t.com/blog/squirrelmai-error-could-not-complete-request/

29