Top Banner

of 25

Guia de Instalacion de Servicios

Oct 06, 2015

Download

Documents

oscar

Guia que sirve para la instalacion de servicios de un servidor implementado en sofrtware libre (linux) para proporcionar servicio de almacenamiento de datos, correo electronico, voz sobre ip, trnsferencia de archivos de manera remota entre otros beneficios que se alcanzan al implementar los servicios en un modelo de red interna para su comunidad
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript

IntroduccinSe tiene planteado la construccin, configuracin y levantamiento de una red de servicios integrados para la Coordinacin de Ingeniera en Telecomunicaciones y para la Divisin de Servicios Sociales que maneje la posibilidad de unir al personal de manera efectiva, orientada a las comunicaciones conjuntas para mejorar la productividad y ayudar a digitalizar actividades.

Se contempla el uso de servidores que puedan ofrecer de manera efectiva servicios digitales orientados a las comunicaciones, a la centralizacin de sistemas y al almacenamiento de datos dentro del espacio delimitado por los servidores que los van a conformar.

En este manual de configuraciones se tratara de explicar la estructura fsica de la red, los servidores y los servicios que ofrece cada uno. Se expondr la distribucin de los servicios en los servidores y mas importante aun, una lista de pasos seguidos para el levantamiento de cada servicio.

Las configuraciones usadas aqu son iniciales y bsicas, dejando libre la posibilidad de mejorar en mira a la seguridad, eficiencia, alcance y efectividad cada servicio dependiendo de las necesidades tanto de la intranet para la Coordinacin de Ingeniera en Telecomunicaciones como para la Divisin de Asuntos Sociales.

Inicialmente voy a exponer lo planteado para la red de servicios, para empezar con la intranet de la Coordinacin de Ingeniera en Telecomunicaciones, con el cual este manual har referencia.

Red de ServiciosPara la red de servicios se requiere de servidores que puedan ofrecer conexiones seguras a travs de consolas remotas, acceso web, acceso a archivos y correo electrnico.

Los servicios ofrecidos son los siguientes teniendo en cuenta que para cada servicio se tendrn que configurar de uno a mas sistemas:

Servicio Secure Shell

SSH

Servicio DHCP

DHCPd

Servicio DNS

Bind

Servicio Web y Webmail

Apache, Squirrelmail

Servicio FTP

ProFTPd

Servicio Correo Electrnico

Exim, SASL, Spamassassin, Courier

Servicio comparticin de datos

Samba, NFS

Se trabajara en base a direccionamiento IP de clase C; los parmetros sern los siguientes:

IP C class:

Network address:

192.168.0.0

Network mask

255.255.255.0(24 bits)

Broadcast

192.168.0.255

Valid Hosts

192.168.0.1 192.168.0.254

DHCP range

192.168.0.1 192.168.0.100

Static range

192.168.0.101 192.168.0.240

Servers range

192.168.0.241 192.168.0.253

Gateway address

192.168.0.254

FQDN intranetwork

itel.unefamcy.net

ServidoresPara lograr los objetivos planteados se usaran 2 servidores; uno de comunicaciones, el principal que marca las pautas de conectividad de los equipos clientes con la red y que adems contendr los servicios crticos de comunicaciones de la red. Un servidor de datos, secundario que se encargara en mayor medida para el alojamiento y resguardo de archivos y respaldos.

Los servidores son efectivos mientras mas sencilla sea su interfaz, ligero el arranque del nucleo, estable los paquetes de software y mejor manejo de los recursos del hardware. Una vez configurado el acceso remoto no necesitara monitor, teclado o mouse.

Una seleccin acertada es el uso de sistemas operativos especializados en redes de datos, que sea libre, sencillo y amigable pero a la vez estable, robusto y confiable; una excelente seleccin un sistema que este basado en UNIX system V. Un sistema libre como GNU/Linux, del cual se toma en consideracin la distribucin Debian; el cual junto con Slackware y RedHat han demostrado ser los sistemas mas estables y confiables para la construccin de servidores fiables para trabajos pesados y de seguridad.

De la distro seleccionada, Debian GNU/Linux se decide utilizar la versin 5.0 Lenny la cual a probado ser muy ligera adems de estable y amigable para los servidores contemplados para este proyecto.

Se establecen los parmetros de configuracin para los servidores de la intranet de la Coordinacin de Ingeniera en Telecomunicaciones como se pueden apreciar a continuacion:

Servidor de comunicaciones:comm

comm.itel.unefamcy.net

IP address

192.168.0.253/24

Services

SSH, DHCP, DNS, HTTP, HTTPS, FTP, SMTP, IMAP

Servidor de datos:

data

data.itel.unefamcy.net

IP address

192.168.0.252/24

Services

SMB, NFS, FTP

Administracin del sistemaPara efectos administrativos del sistema desde la consola inicial del servidor se trabajara con el superusuario o root. El superusuario es la mayor jerarqua en todo sistema basado en UNIX system V. Esto quiere decir que el trabajo de consola realizado bajo el superusuario es realmente delicada y se requiere que el usuario que lo use sepa realmente lo que esta haciendo. El prompt de usuario del superusuario se diferencia de un usuario normal en que se presenta con el smbolo del numeral:comm:~# _Un segundo usuario administrativo pero de menor jerarqua fue creado durante la instalacin del sistema operativo por mi, a mi criterio, y ese usuario es iadmin (de intranet administrator). Es el usuario con el cual se lograra acceso remoto a traves del ssh y que cuenta con privilegios heredados por medio del servicio sudo (superuser do), para lo cual debe ser previamente configurado (este tema se tratara en la instalacin de herramientas bsicas). El prompt del usuario -y de cualquier usuario que no sea root- se diferencia de root en que se presenta con el smbolo del dolar:iadmin@comm:~$ _Como ya lo he mencionado, el acceso remoto se realiza con el usuario iadmin para tareas administrativas como indico a continuacin:lmolina@hostlocal:~$ ssh iadmin@comm

iadmin@comm's password:

Linux comm 2.6.26-2-686 #1 SMP Sun Mar 4 22:19:19 UTC 2012 i686

Last login: Sun Jan 25 10:44:22 2015 from 192.168.0.4

iadmin@comm:~$ _ Desde este usuario se puede, una vez ingresado en el host remoto, convertirse en superusuario:iadmin@comm:~$ su

Contrasea:

comm:/home/iadmin#Mientras el usuario iadmin pertenezca al grupo sudo, se le permite emular al superusuario al ejecutar aplicaciones y comandos estratgicos:iadmin@comm:~$ sudo bash

comm:/home/iadmin#

iadmin@comm:~$ sudo apt-get install -y mc zip unzip ssh

iadmin@comm:~$ sudo nano /etc/apt

/sources.list

iadmin@comm:~$ sudo /sbin/halt

El primer comando carga el prompt de superusuario ejecutando el bash (bourne again shell) con privilegios de root. El siguiente manda a instalar con apt-get los paquetes mc, zip, unzip y ssh. Con el tercero manda a editar el archivo de configuracion de bases de datos de repositorios del sistema. Y con el ultimo se manda a apagar el sistema. Todo esto como si se tratara del root quien llamara estos comandos.

Con ssh tambin se puede trasladar archivos de un host al server por medio de scp (secure copy) tal como se indica a continuacin:lmolina@hostlocal:~$ scp jan2015.tar.gz iadmin@comm:/home/iadmin/temp

iadmin@comm's password:

jan2015.tar.gz 100% 753 0.7KB/s 00:00

lmolina@hostlocal:~$ _Ahora cuando se manejan archivos comprimidos para la elaboracion de respaldos, lo mas recomendable es usar el comando tar para comprimir:iadmin@comm:~$ tar czvf jan2015.tar.gz backup/*Y para descomprimir:iadmin@comm:~$ tar xzvf jan2015.tar.gzInstalacin de Herramientas BsicasPara poder trabajar con fluidez a travs del prompt (consola), se requiere que cada sistema este previamente configurado para realizar tareas de instalacin de paquetes de software:

Para la edicin de archivos de texto se usara el editor nano, el cual ya se encuentra instalado por defecto con el sistema base:comm:~# nano /etc/motd Con este ejemplo comando estoy editando el archivo motd contenido en /etc.

Todos los archivos de configuracin de servicios instalados en el sistema se encuentran en el directorio /etc. Todo servicio a configurar tiene su base en este directorio. Para todo administrador y configurador, /etc es el directorio mas importante del sistema.

Para la visualizacin de directorios y sus contenidos utilizo como herramienta comn el midnight commander o mc, una aplicacin que me permite de una manera visual examinar directorios tal como lo hacia el clasico Norton Commander de los 80's, y se instala como:comm:~# apt-get install mc

comm:~# mc /etc/aptCon esto estoy iniciando la interfaz de mc en el directorio /etc/apt.

Una herramienta que se instalara entre las primeras es el sudo (superuser do):comm:~# apt-get install sudoVerificamos con el editor nano la siguiente linea en el archivo /etc/sudoers:comm:~# nano /etc/sudoers

%sudo ALL=NOPASSWD: ALLY se agrega al usuario iadmin al grupo sudo:comm:~# adduser iadmin sudoEn resumen, una vez configurado los repositorios, la primera instalacion despues de haber obtenido el sistema base instalado, son los siguientes:comm:~# apt-get install -y mc zip unzip sudo sshInstalacin de Servicios (Daemons)Una vez instaladas las herramientas iniciales, se procede a instalar y configurar los servicios necesarios para cada servidor. Empezaremos con el servidor de comunicaciones comm (comm.itel.unefamcy.net)comm.itel.unefamcy.net:

Servicio Secure Shell (ssh):Se instala el servicio ssh con la herramienta apt:comm:~# apt-get install sshUna vez instalado se procede a limitar el acceso al root editando el archivo de configuracin del servicio con el editor nano:comm:~# nano /etc/ssh/sshd-configY se configura el acceso al root como sigue:PermitRootLogin no

Listo se sale guardando los cambios con ctrl+X y se reinicia el servicio:/etc/init.d/ssh restartServicio DHCP (dhcp3-server):Se instala el servicio dhcp3-server:comm:~# apt-get install dhcp3-serverSe establecen las interfaces de red al cual el servicio alquilara direcciones IP:comm:~# nano /etc/default/dhcp3-serverY en el parmetro INTERFACES se coloca la NIC conectada a la intranet:INTERFACES=eth0Se reinicia el servicio:/etc/init.d/dhcp3-server restartDe aqu se procede a configurar el servicio editando el archivo de configuracin:comm:~# nano /etc/dhcp3/dhcpd.confLos parmetros del archivo dhcpd.conf son los siguientes:ddns-update-style none;

option domain-name "itel.unefamcy.net";

option domain-name-servers comm.itel.unefamcy.net;

default-lease-time 600;

max-lease-time 7200;

authoritative;

log-facility local7;

subnet 192.168.0.0 netmask 255.255.255.0 {

range 192.168.0.1 192.168.0.100;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.0.255;

option routers 192.168.0.254;

}Guarda y sale con ctrl+X y reiniciamos el servicio nuevamente para dar fin a la configuracin del servicio:/etc/init.d/dhcp3-server restartServicio DNS (bind9):Se instala el servicio bind9 con apt:comm:~# apt-get install bind9Una vez terminada la instalacin, nos movemos al directorio base del bind y se procede a realizar una copia de las bases de datos existentes de las zonas de recursos principales y reversos para tener una base desde la cual empezar a trabajar:comm:~# cd /etc/bind/

comm:~# cp db.local db.itel.unefamcy.net

comm:~# cp db.127 db.192Una vez realizadas las copias de las zonas principal y reverso de nuestro dominio se procede a editar cada archivo de recursos comenzando con:comm:~# nano db.itel.unefamcy.netPara la zona de recursos directa o principal cuyo contenido es el siguiente:$TTL86400

@

INSOAitel.unefamcy.net. root.itel.unefamcy.net. (

1

; Serial

604800

; Refresh

86400

; Retry

2419200

; Expire

86400 )

; Negative Cache TTL

;

@ INNScomm.

@ INA192.168.0.253

comm INA192.168.0.253

IN MX 10comm.

intratel INA192.168.0.253

webmailIN A 192.168.0.253

data INA192.168.0.252Seguidamente con la zona reversa de nuestro dominio:comm:~# nano db.192Cuyo contenido debe ser el siguiente:$TTL604800

@INSOAitel.unefamcy.net. root.itel.unefamcy.net. (

1

; Serial

604800

; Refresh

86400

; Retry

2419200

; Expire

604800 )

; Negative Cache TTL

;

@INNScomm.

253INPTRcomm.

253INPTRintratel.

253INPTRwebmail.

252INPTRdata.Seguidamente se asignan las zonas creadas atribuyendo los nobres de cada base de datos a tal fin en named.conf.local:comm:~# nano named.conf.localCuyo contenido se debe definir dependiendo de los archivos creados:zone "itel.unefamcy.net" {

type master;

file "/etc/bind/db.itel.unefamcy.net";

allow-transfer { none; };

allow-query { any; };

};

zone "192.in-addr.arpa" {

type master;

file "/etc/bind/db.192";

allow-transfer { none; };

allow-query { any; };

};Seguidamente se configuran las opciones generales del servicio:comm:~# nano named.conf.optionsDonde se definen los siguientes parmetros:options {

directory "/var/cache/bind";

forwarders {

200.44.32.12;

};

auth-nxdomain no;

listen-on-v6 { any; };

};

Una vez realizados los cambios se finaliza la tarea reiniciando el servicio: /etc/init.d/bind9 restartServicio FTP (proftpd):Se instala el servicio proftpd con apt:comm:~# apt-get install proftpdY se edita el archivo de configuracin del servicio ubicado en /etc/proftpd/:comm:~# nano /etc/proftpd/proftpd.confCuyo contenido para el comm debe ser limitado por la autenticacin del usuario intratel para el acceso al contenedor del sitio web de intratel:Include /etc/proftpd/modules.conf

IdentLookups

off

ServerName

"comm"

ServerType

standalone

DeferWelcome

off

MultilineRFC2228

on

DefaultServer

on

ShowSymlinks

on

UseIPv6

off

TimeoutNoTransfer

600

TimeoutStalled

600

TimeoutIdle

1200

DisplayLogin

welcome.msg

DisplayChdir

.message true

ListOptions

"-l"

DenyFilter

\*.*/

Port

21

MaxInstances

30

MaxClients

10

MaxClientsPerHost

6

MaxClientsPerUser

3

AuthUserFile

"/etc/passwd"

AuthGroupFile

"/etc/group"

DefaultRoot

~

RequireValidShell

off

User

proftpd

Group

nogroup

Umask

022 022

AllowOverwrite

on

TransferLog

/var/log/proftpd/xferlog

SystemLog

/var/log/proftpd/proftpd.log

TLSEngine

off

QuotaEngine

on

Ratios

on

DelayEngine

on

ControlsEngine

off

ControlsMaxClients

2

ControlsLog

/var/log/proftpd/controls.log

ControlsInterval

5

ControlsSocket

/var/run/proftpd/proftpd.sock

AdminControlsEngine

off

Umask

022 022

AllowOverwrite

on

AllowRetrieveRestart

on

AllowStoreRestart

on

AllowAll

AllowAll

AllowAll

Terminado de editar la configuracin, se guarda y se reinicia el servicio finalizando la configuracion del servicio:/etc/init.d/proftpd restartHay que tener en cuenta que el servicio FTP esta directamente enlazado a las labores del servicio web, lo que lo hace necesario en funcin al contenido que pueda alojar el servidor web.

Servicio web (apache2):Se instala el servicio apache2 junto con el paquete php5 con apt:comm:~# apt-get install apache2 php5Una vez instalado el servicio nos posicionamos en el directorio base de los sitios ejemplos disponibles del apache y copiamos el que se necesita para establecer una base desde donde se creara un nuevo sitio:comm:~# cd /etc/apache2/sites-available

comm:~# cp default intratelSe edita el nuevo archivo creado:comm:~# nano intratelCuyo contenido debe depender del directorio casa en donde se va a alojar el nuevo sitio web, en este caso en /home/intratel/:

ServerName intratel.itel.unefamcy.net

ServerAdmin [email protected]

DocumentRoot /home/intratel/

Options FollowSymLinks

AllowOverride None

Options Indexes FollowSymLinks MultiViews

AllowOverride None

Order allow,deny

allow from all

ErrorLog /var/log/apache2/error.log

LogLevel warn

CustomLog /var/log/apache2/access.log combined

ServerSignature On

Una vez terminada la edicion y guardado el archivo, nos movemos al directorio hermano de sitios activos:comm:~# cd ../sites-enabledY se procede a crear el enlace simblico que apunta al archivo de configuracin del sitio recin creado borrando cualquier enlace que exista anterior al que se va a configurar:comm:~# ln -s ../sites-available/intratel intratel

comm:~# rm 000-*Se aade el registro intratel en la base de datos principal del DNS en db.inet.unefamcy.net:intratel INA192.168.0.253Y en la base de datos de reversos del DNS en db.192:253INPTRintratel.Se reinicia el servicio bind y se procede a aadir un usuario que coincida con el directorio casa del sitio recien creado; /home/intratel:comm:~# adduser intratelSe aaden los datos, contrasea y se procede a agregar al usuario al grupo www-data:comm:~# adduser intratel www-dataSe elimina todo el contenido del directorio casa de intratel:comm:~# rm -r /home/intratel/*Se deshabilita la propiedad de inicio de sesion para el usuario intratel de manera que el directorio casa de intratel sea solo un contenedor accesible solo por ftp o sftp:comm:~# usermod -s /bin/false intratelUna vez llegado hasta aqui se prueba el acceso desde un cliente ftp (yo uso gFTP) contra el servidor usando el usuario intratel y su contrasea para entrar al contenedor y alojar un archivo de prueba creado como index.html (en /home/intratel/) que podra contener:

Intratel

Pagina de prueba de intratel

La pagina y el sitio se encuentran en construccion

Alojado el archivo de prueba se reinicia el servicio de apache:/etc/init.d/apache2 restartY por ultimo se prueba la carga de la pagina web recin alojada en el servidor desde cualquier navegador web al alcance (Internet Explorer, Firefox, Iceweasel, Cunaguaro, Chrome, Opera, etc) de manera que al llamar a intratel, se pueda ver algo parecido a esto:http://intratel

Pagina de prueba de Intratel

La pagina y el sitio se encuentran en construccion

Servicio SMTP o de correo electrnico (exim4+saslauthd+spamassassin+courier-imap)

Se reemplaza el servicio ligero de exim4 instalado por defecto por una versin mas completa del mismo:comm:~# apt-get install exim4-daemon-heavyInstalado el servicio reemplazante se edita el archivo principal de configuracin del servicio ubicado en /etc/exim4/ por lo que es recomendable movernos hacia el directorio base del mismo:comm:~# cd /etc/exim4

comm:~# nano update-exim4.conf.confEl contenido del mismo debe ser como se observa a continuacin:dc_eximconfig_configtype='internet'

dc_other_hostnames='comm.itel.unefamcy.net;itel.unefamcy.net'

dc_local_interfaces='192.168.0.253;127.0.0.1'

dc_readhost=''

dc_relay_domains='itel.unefamcy.net'

dc_minimaldns='false'

dc_relay_nets='192.168.0.0/24;127.0.0.1'

dc_smarthost='itel.unefamcy.net'

CFILEMODE='644'

dc_use_split_config='true'

dc_hide_mailname='true'

dc_mailname_in_oh='true'

dc_localdelivery='maildir_home'Sin reiniciar el servicio aun, se procede a instalar el sistema de autenticacin segura sasl con el servicio saslauthd:comm:~# apt-get install sasl2-bin libsasl2-modulesSe configura el arranque automtico del servicio:comm:~# nano /etc/default/saslauthdY se configura la siguiente linea:START=yesSe reinicia el servicio saslauthd:/etc/init.d/saslauthd restartY volvemos a la configuracin de exim4, pero esta vez de los archivos contenidos en /etc/exim4/conf.d/ y asumiendo que seguimos posicionados en /etc/exim4/:comm:~# nano conf.d/main/03_exim4-config_tlsoptionsDonde se aade lo siguiente casi al principio del archivo:# TLS/SSL configuration for exim as an SMTP server.

# See /usr/share/doc/exim4-base/README.Debian.gz for explanations.

MAIN_TLS_ENABLE = 1

.ifdef MAIN_TLS_ENABLELuego se edita el siguiente archivo:comm:~# nano conf.d/auth/30_exim4-config_examplesDonde se descomentan las lineas en la seccin login_saslauthd_server tal como se muestra a continuacin: login_saslauthd_server:

driver = plaintext

public_name = LOGIN

server_prompts = "Username:: : Password::"

# don't send system passwords over unencrypted connections

server_condition = ${if saslauthd{{$auth1}{$auth2}}{1}{0}}

server_set_id = $auth1

# .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS

# server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}

# .endifAhora se genera un certificado de seguridad con lo que quedan creados exim.crt y exim.key alojados en /etc/exim4/:comm:~# /usr/share/doc/exim4-base/examples/exim-gencert

Country Code (2 letters) [US]:VE

State or Province Name (full name) []:Aragua

Locality Name (eg, city) []:Maracay

Organization Name (eg, company; recommended) []:UNEFA

Organizational Unit Name (eg, section) []:Coordinacion de Telecom

Server name (eg. ssl.domain.tld; required!) []:comm.itel.unefamcy.net

Email Address []:[email protected] Se agrega al usuario Debian-exim al grupo sasl:comm:~# addgroup Debian-exim saslSe reinicia el servicio de correo:comm:~# update-exim4.conf

comm:~# /etc/init.d/exim4 restartSe puede realizar una prueba de conexin smtp por telnet con el prompt del usuario iadmin:iadmin@comm:~$ telnet localhost 25

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

220 comm.inet.unefamcy.net ESMTP Exim 4.69 Tue, 05 Jan 2015 11:42:31 -0430EHLO comm.inet.unefamcy.net250-comm.inet.unefamcy.net Hello iadmin at localhost [127.0.0.1]

250-SIZE 52428800

250-PIPELINING

250-AUTH LOGIN

250-STARTTLS

250 HELPSe puede notar que al escribir EHLO comm.inet.unefamcy.net se obtiene una respuesta donde las lineas 250-AUTH LOGIN y 250-STARTTLS indican que la autenticacin smtp con TLS esta funcionando.

Ahora se aade la configuracin que permita el bloqueo de DNS con listas negras:comm:~# nano conf.d/acl/30_exim4-config_check_rcptSe aade las siguientes listas justo despus de aceptar mensajes autenticados:# Accept if the message arrived over an authenticated connection,

# from any host. Again, these messages are usually from MUAs, so

# recipient verification is omitted,and submission mode is set. And

# again, we do this

check before any black list tests.

accept

authenticated = *

control = submission/sender_retain

# DNS Whitelist

accept

domains = +local_domains

# whitelist only medium and high trust levels

dnslists = list.dnswl.org&0.0.0.2

logwrite = $sender_host_address is whitelisted

# DNS blacklist

drop

log_message = match DNS Block List

dnslists = zen.spamhaus.org : list.dsbl.org : dnsbl.sorbs.net

Las listas negras usadas aqu son de SpamHaus, Distributed Sender Blackhole (DSBL) y SORBS, que aunque el equipo no se encuentre en este momento conectado a la red WAN, no esta de mas dejarlo configurado para evitar futuras sorpresas en caso que en algn momento se conecten a la internet y no tengan de respaldo una pared de fuego que la proteja. El correo electrnico rechazado por una lista negra queda registrado en /var/log/exim4/mainlog.

Se reinicia nuevamente el servicio de correo:comm:~# update-exim4.conf

comm:~# /etc/init.d/exim4 restartAhora se instalan los servicios spamassassin y spamc para aadirlo al servicio de correo electrnico:comm:~# apt-get install spamassassin spamcSe configura el arranque automtico de spamassassin:comm:~# nano /etc/default/spamassassinY se configura la siguiente linea:ENABLED=1Se reinicia el servicio spamassassin:/etc/init.d/spamassassin restartDe vuelta a la configuracin de exim4, con los archivos de /etc/exim4/conf.d/ y asumiendo que seguimos posicionados en /etc/exim4/:comm:~# nano conf.d/main/02_exim4-config_optionsSe descomenta la siguiente linea en el archivo:spamd_address=127.0.0.1 783Seguidamente en la siguiente direccin:comm:~# nano conf.d/acl/40_exim4-config_check_dataSe aaden las siguientes lineas de contenido:# Put headers in all messages (no matter if spam or not)

warn

spam = nobody:true

add_header = X-Spam_score: $spam_score ($spam_bar)

add_header = X-Spam-report: $spam_report

# Add second subject line with *SPAM* marker when message is over

# threshold.

warn

spam = nobody

add_header = Subject: ***SPAM (score:$spam_score)*** $h_subject:

Se reinicia nuevamente el servicio de correo:comm:~# update-exim4.conf

comm:~# /etc/init.d/exim4 restartSe instala ahora el servicio courier-imap:comm:~# apt-get install courier-imapSe construyen los directorios de almacenamiento de correos, por un lado en el molde que utiliza el sistema para crear las carpetas de usuarios en /etc/skel/, de este modo cualquier usuario creado en el sistema a partir de aqui tendra por defecto su carpeta personal de correo Maildir alojado en su directorio casa:comm:~# maildirmake /etc/skel/MaildirY a travs del inicio de sesin de cada usuario creado antes del momento de instalar courier-imap se crea por cada uno el directorio de almacenamiento de correo:iadmin@comm:~$ maildirmake MaildirPor ultimo se edita la configuracion del nombre de correo general del sistema:comm:~# nano /etc/mailnameSe prueba el enlace al maildir creado en cualquier usuario usando telnet contra el puerto imap2 y con AB LOGIN usuario y contrasea se inicia sesion en el servicio:iadmin@comm:~$ telnet localhost imap2

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION] Courier-IMAP ready. Copyright 1998-2008 Double Precision, Inc. See COPYING for distribution information.

AB LOGIN iadmin intraT3l2015

AB OK LOGIN Ok.

BC SELECT "Inbox"

* FLAGS (\Draft \Answered \Flagged \Deleted \Seen \Recent)

* OK [PERMANENTFLAGS (\* \Draft \Answered \Flagged \Deleted \Seen)] Limited

* 54 EXISTS

* 41 RECENT

* OK [UIDVALIDITY 1421558877] Ok

* OK [MYRIGHTS "acdilrsw"] ACL

BC OK [READ-WRITE] Ok

ZZZZ LOGOUT

* BYE Courier-IMAP server shutting down

ZZZZ OK LOGOUT completed

Connection closed by foreign host.Como se puede notar al ejecutar BC SELECT Inbox podemos ver que con la respuesta BC OK [READ-WRITE] Ok la lectura y escritura sobre el maildir es en efecto exitosa. Con ZZZZ LOGOUT se sale del sistema.

Por ultimo se establece de manera que cualquier mensaje saliente a cualquier usuario sera dirigido al siguiente FQDN:itel.unefamcy.netSe reinicia nuevamente el servicio de correo:comm:~# update-exim4.conf

comm:~# /etc/init.d/exim4 restartSe realiza una prueba final del envo y recibo de correo desde la consola:comm:~# echo texto de prueba del cuerpo del mensaje | mail -s test iadminCon esto se construye un mensaje de texto el cual se direcciona al comando mail cuyo subject test sera enviado a iadmin. No se especifica el @FQDN al usuario ya que esa funcin le concierne al mailname previamente configurado. Si se desea ver el movimiento continuo del servicio se usa el siguiente comando:comm:~# tail -f /var/log/exim4/mainlogCon esto la consola queda ocupada mostrado en tiempo real las acciones del servicio de correo electrnico. Para cerrar el proceso y volver al prompt basta con usar ctrl+C para resolverlo.

Una manera de ver que todo esta funcionando es que las acciones registradas en /var/log/exim4/mainlog terminen con completed al final o con revisar con la consola el /home/iadmin/Maildir/cur/ los mensajes de entrada para el usuario iadmin.

Servicio webmail (squirrelmail)

Se instala el paquete squirrelmail desde apt:comm:~# apt-get install squirrelmailSe activa el modulo ssl del servicio apache para ofrecer el webmail a travs del https o http secure por medio del puerto 443.comm:~# a2enmod sslSe reinicia el servicio web de apache:comm:~# /etc/init.d/apache2 restartSe genera el certificado ssl para el webmail:comm:~# openssl req $@ -new -x509 -days 3650 -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pemDe igual manera como se solicitaron los datos para el certificado TLS del exim4 se va respondiendo para obtener el certificado alojado en /etc/apache2/. Una vez hecho esto nos situamos en el directorio /etc/apache2/sites-available tal como se hizo anteriormente con la configuracion inicial del servicio web:comm:~# cd /etc/apache2/sites-availableCopiamos el archivo ssl por defecto para iniciar desde all la configuracin de squirrelmail:comm:~# cp ssl-default ssl

comm:~# nano sslEl contenido de ssl depende de donde se ubiquen el certificado creado (/etc/apache2/apache.pem) y los archivos web del squirrelmail, tal como se puede apreciar a continuacin:

ServerName webmail.itel.unefamcy.net

ServerAdmin [email protected]

DocumentRoot /usr/share/squirrelmail/

Options FollowSymLinks

AllowOverride None

Options Indexes FollowSymLinks MultiViews

AllowOverride None

Order allow,deny

allow from all

ErrorLog /var/log/apache2/error.log

LogLevel warn

CustomLog /var/log/apache2/ssl_access.log combined

SSLEngine on

SSLCertificateFile /etc/apache2/apache.pem

SSLOptions +StdEnvVars

BrowserMatch ".*MSIE.*" \

nokeepalive ssl-unclean-shutdown \

downgrade-1.0 force-response-1.0

Cambiamos de posicin al directorio hermano sites-enabled para activar el site:comm:~# cd ../sites-enabledAadimos un enlace simbolico al archivo de configuracion ssl recien creado:comm:~# ln -s ../sites-available/ssl sslSe reinicia el servicio web de apache nuevamente:comm:~# /etc/init.d/apache2 restartSe aade el registro webmail en la base de datos principal del DNS en db.inet.unefamcy.net:webmail INA192.168.0.253Y en la base de datos de reversos del DNS en db.192:253INPTRwebmail.Se reinicia el servicio bind y se procede a probar la conexion a traves de cualquier navegador web al alcance (Internet Explorer, Firefox, Iceweasel, Cunaguaro, Chrome, Opera, etc). Al llamar a webmail algo parecido a esto debe poder cargarse:https://webmail

[logo squirrelmail]

SquirrelmailUsuario:

Contrasea: