Está en la página 1de 76

MANUALDEINSTALACIONYCONFIGURACIONDELSERVIDORDE CORREOPOSTFIX

Bajoelsistemaoperativo:

LinuxUBUNTU8.4

Integrantes: NataliaValencia RogerOlarte FernandaOrozco CristinaPiedrahita

fechadecreacin ltimamodificacin

: 10deoctubre : 19deoctubre

PRESENTACION
Enbasealalasredesdecomunicacinlosserviciosdemensajeriahan tomadounacaracateristicamaspropiadandoleellugaraunaaplicacin comolossonlosservidoresdecorreo;estosnospermitenenviar mensajesdeunosusuariosaotrosconindependenciadelaredquese esteutilizando. Paralograrlosedefinenunaseriedeprotocolos,cadaunoconuna finalidad: 1.SMTP:simplemailtransportprotocol esteseutilizaparaquese intercambienlosmensajesentreservidoresdecorreo,esbasadoen unmodeloclienteservidor . UnadelaslimitacionesdelSMTP originalesquenofacilitamtodosdeautenticacinalos emisores,asqueenestemanualsepretendesuperarloatravesde pam,(`PluggableAuthenticationModules;modulodeautenticacion enlazable). seutilizapara 2.POP:postofficetransportprotocol obtener/descargarlosmensajesguardadosenelservidoralusuario sufinalidadeslamisma 3.IMAP:internetmessageaccessprotocol quepopaunquefuncionadiferenteyvimosalgunasventajascomo tiemposderespuestarapida,accesoremotoalosmensajes,accesos simultaneosamultiplesclientes,vigilanciaenelestadodel mensaje,agilidadenlasbusquedas,entreotrasventajassobreel protocolopopporlocualnosbasamosmasenIMAP. Entoncesesporesoquedecimosqueunservidordecorreoconstaen realidaddedosservidoreselSMTPencargadodeenviaryrecibir mensajes,yunservidor POP/IMAPqueseraelquepermitealosusuariosobtenersusmensajes; paraesto losusuariossesirvendeclientes,esdecir,programasque implementanunprotocoloPOP/IMAPqueenalgunasocasioneselclientese ejecutaenlamquinadelusuario(comoelcasodeMozillaMail, Evolution,Outlook).Sinembargoexisteotraposibilidad:queelcliente decorreonoseejecuteenlamquinadelusuario;eselcasodelos clientesviaweb,comoHotmail,OpenWebmailoterra.Enellosla arquitecturadelservicioesmscompleja:elcualnoaplicaeneste manual.

CONTENIDO 1.DIRECCIONDEREDESTATICA 2.CONFIGURACIONDEBIND 3.INSTALACIONYCONFIGURACIONDEPOSTFIX 4.PROBARMENSAJESCONMUTT 5.ALMACENAMIENTOYTIPOSDECORREO 5.1DOVECOT 5.2COURRIER 6.AUTENTICACIONATRAVESDEPAM 7.CONFIGURACIONDEUNMDA 7.1EVOLUTION 7.2TUNDERBHIND 8.AUTENTICACIONATRAVESDESASL 9.TLS 10.OPENLDAP 11.ADMINISTRACIONDELDAP 12.INTEGRACIONPOSTFIXCONOPENLDAP 13.USUARIOSVIRTUALES 14.ANTIVIRUS 15.ANTIESPAM

MANUALDECONFIGURACIONDESERVIDORDECORREO
1.DIRECCIONDEREDESTATICA

Existenenlaactualidad,unagrancantidaddeservdoresdecorreo,pero paranuestrocasoutilizaremosPostfixyaqueesunservidorfacilde manejar,esmuycompatibleconotrosoftwareyexistemuybuena documentacionparasusoporte. ParaEsteproyecto,utilizaremosladistribucion Loprimeroquedebemostenerencuenta,esqueutilizaremosuna direccionIPestaticaparapoderrealizartodaslaspruebas convenientes,claroestaquemodificaremosestadireccionestaticaauna direcciondeDHCP,parateneraccesoainternetypoderdescargarlos paquetesqueseannecesarios.

EmpezaremosentoncesinstalandoDNS(ServidordeNombresdeDominio)

2.INSTALACIONYCONFIGURACIONDEBIND
BindeselnombredeldemoniodeDNS recordemosquedeacuerdoaladistribuciondelinuxsepuedellamar BINDoNAMED. InstalamoselpaquetedeBind9. root@regocorreo:~# aptgetinstallbind9

Luegoconfiguraremosesteservidor. root@regocorreo:~# root@regocorreo:~# configuracion) Definiremosnuestraszonas Zonadirecta zone"lucas.com"{ typemaster; file"/etc/bind/directa.db"; }; Nuestrodominiosellamaralucas.com,estipomaestroyledamosla rutadondeestaraelarchivodelazonadirecta. Zonainversa zone"1.168.192.inaddr.arpa"{ typemaster; file"/etc/bind/inversa.db"; }; Ahoracrearemoslosarchivosdondepondremoslaconfiguraciondelas zonas. Crearemosprimerolazonadirecta: root@regocorreo:~# root@regocorreo:~# root@regocorreo:~# cd/etc/bind/ touchdirecta.db nanodirecta.db cd/etc/bind/ nanonamed.conf (Editaremoselarchivode

directa.db

Agregamosunhost,elcualseranuestroservidordecorreosconel nombrederegocorreoconladireccionip192.168.1.1 LuegoagregamosunregistroMXconprioidad10yapuntandoalhost regocorreoqueyatenemosdefinido. Conestoloqueestamoshaciendoesquetodaslaspeticionesdecorreo electronicoseranredireccionasalhostregocorreo. Ahoracrearemoslazonainversa: root@regocorreo:~# root@regocorreo:~# root@regocorreo:~# cd/etc/bind/ touchinversa.db nanoinversa.db (CreamoselArchivo)

inversa.db

Creamoslazonaderegocorreoelcualseranuestroservidordecorreos. Hechoestoguardamostodosloscambiosyreinicairemosnuestroservidor DNS root@regocorreo:~# /etc/init.d/bind9restart

Luegoharemoselchequecorrespondientealaconfiguraciondelservidor root@regocorreo:~# >setq=any >lucas.com Ynosmostraratodalaconfiguracioncorrespondienteconeldominio lucas.com nslookup

Entretodaestainformacion,debemosdetallarnosenquehallacargadola configuraciondenuestroservidordecorreo.(RegstroMX) ConestoyatenemoslistonuestroservidorDNS...siusteddeseatener masdeunservidordecorreoounservidordecorreoderespaldo,solo debeagregarcuantaslineasnecesitesimilares,yquecadaunadeestas tengadiferenteprioridad.

3.INSTALACIONYCONFIGURACIONDEPOSTFIX
Loprimeroquerealizaremosserainstalarnuestroservidordecorreo, queparanuestrocasoseraPostfix. Primerolobuscaremosenlacachedelosrepositorios,paraversiel paqueteseencuentra. root@regocorreo:~# aptcachesearchpostfix

Ahorayaestamossegurosdequenuestropaquetepostfixseencuentraen lacachedelosrepositorios,porloqueprocederemosainstalarlo. root@regocorreo:~# aptgetinstallpostfix

Conesto,tendremosnuestroMTA(AgenteTransferenciaCorreo)Servidor decorreo.Valedestacarqueesteservidorcorreraporelpuerto25. Vamosaconfigurarlo,pordefectodespuesdeinstalarloquedaun directorioen Alliseencontraranlosarchivosdeconfiguracion. /etc/ root@regocorreo:~# cd/etc/postfix/ root@regocorreo:~# (Archivoprincipaldeconfiguracion nanomain.cf dondedefiniremoslosparametrosqueesteservidortendra) nosdirigimosalasultimaslineasdondeseencontraranlasvariablesa modificar: regocorreo.lucas.com myhostname (Nombredelhostquetieneelservidordecorreo,recuerdequeeste nombredebedeserelquehemosconfiguradoenelDNS) lucas.com mydomain (Dominioparaelcualrecibiremoscorreoselectronicos)

lucas.com mydestination (Podremosrecibircorreosparalamaquinalocal,donderealizaremos nuestrasprimeraspruebas) 192.168.1.0/24,127.0.0.0/8 mynetworks (Definiremosladirecciondered,dedondequeramosquepuedansaliro entrarloscorreos) Estassonlasopcionesbasicas,perorecuerdequesonmuchaslas variablesquepodremosdefinirqueeneltranscursodelmanualiremos agregando. Ahorareiniciamoselservidorparacomprobarquenoexistanerrores,y paraquecarguelaultimaconfiguracionquerealizamos root@regocorreo:~# /etc/init.d/postfixrestart

Ahoraloqueharemosseratratardeconectarnosalservidordecorreo pormediodetelnetatravesdelpuerto25. root@regocorreo:~# telnet127.0.0.125 Tryingto127.0.0.1. escapecharacteris'^]'. 220regocorreo.lucas.comESMTPpostfix(ubutu) Alconectarsepormediodelpuerto25,identificaelservidordecorreo ymuestraelbannerdebienvenida. Ahoraloqueharemosseraverlosmodulosylostiposde auntenticacionesquesoportaelservidor. root@regocorreo:~# telnet127.0.0.125 Tryingto127.0.0.1. escapecharacteris'^]'. 220regocorreo.lucas.comESMTPpostfix(ubutu) <ehloHOLA (Digitamosestecomando,quenosindicaqueabrimosunaseccionconeste servidoratravesdelpuerto25,paraverificarlosmodulososoporte quetienecargados.)

Yelservidordeberaderespondernosconlosmodulosqueestemaneja. Deigualmaneranosdamoscuentaqueelservidorestacorriendo perfectamenteyquenohayerroresensuconfiguracion. Ahorayatenemosconfiguradoyfuncionandonuestroservidordecorreo.

4.PROBARLOSMENSAJES
Ahoraprobaremosenviandonosmensajesparacomprobarquefuncione nuestroservidordecorreo. Creamosunusuarioenelsistema root@regocorreo:~# root@regocorreo:~# useraddmnew passwdnew

Luegoinstalamosunsoftwareconelcualpodremosenviarnoscorreosy comprobar. root@regocorreo:~# Aptgetinstallmutt

Yatenemoslistoelsoftwarepararealizarpruebas. EstamoslogueadoscomoRoot(SuperUsuario). Enunaconsola root@regocorreo:~# (Paraabirielsoftware) mutt

medicequeelusuarionoexiste,quesiquierocreareldirectorio. LerespondemosS

Enprimerainstancia,muttapareceradeestaformayaqueenelbuzonde entradanohayningunmensaje.

ConlateclaMpodremosenviarunnuevocorreoelectronico.

To: new@lucas.com mensaje).

(Esteseraelusuario,alquequeremosquellegueel

Presionamoslateclaenter,paraescribirelmensaje,nosapareceraun editordetextos,alliescribimoselmensajeylosguardamospresionando lasteclas simultaneamente,nosdiraquesiqueremosguardarlos Ctrl+X cambiosypresionamoslatecla Y (yes)

Nossaldraunencabezadoconlosparametrosprincipalesparaenviarel correoelectronico.

Ahoraparaenviarelcorreo,bastaconpresionarlatecla Ahoranosloguearemoscomoelusuarionewdesdeunaconsola. Siqueremosversillegoelmensaje,noslogueamoscomoelusuarioal queleenviamoselcorreoelectronico,enestecasoa regocorreo@lucas.com queeselcorreodelusuarioRootdelsistema. root@regocorreo:/#mutt(AbrimoselSoftware)

Y.

Enlabandejadeentrada,veremoselcorreoqueenviamos.Conesto podemoscomprobarquenuestroservudordecorreoPostfixesta funcionandocorrectamente. yvemosenlabandejadeentradaquetenemosunmensaje....conlas teclasdireccionalespodemosseleccionarloyconenterentramosparaver elmensaje Alliestaelmensajequeescribimosdesderoot...conestonosdamos cuentadequeelservidordecorreoestafuncionando.

5.ALMACENAMIENTOYTIPODECORREOS
Elalmacenamientodeloscorreos,esunaparteimportantequedebemosde tenerencuenta,yaqueeslamaneradecomoseranalmacenadosnuestros correos,ycomoseraelprocesotantodelecuracomoescrituradeeste. Existenvariostiposdealmacenamientodecorreo,peroenestemanual solomanejaremos2queseran MaildiryMailbox. Primeroquetodo,debemossaberqueestostiposdealmacenamientoestan ligadosalservidordePopeImap,queutilicemos. Dovecot esunservidorquemaneja Mailbox yaquelosmensajesseguardan enunnicoarchivoenelquesevanencolandolosmensajesamedidaque vanllegandoalbuzn.

todosloscorreoselecronicosusandoesteservidorsonalmacenadosen estedirectorio dondeporcadausuario,segeneraun /var/mail/ fichero. Ladesventajadeesteformatoesqueelprocesodelecturayescritura sehacemaslento,yaquetocabuscardentrodelficherocorrespondiente elcorreo,yencasodequesellegaseaborraresteficheroperderiamos TODOSnuestroscorreos,siendovulnerableaposiblesataques. CourieryCyrus son2servidoresdePopeImapqueutilzanMaildircomo formatodealmacenamiento.

Esteformato,esmuydiferentea Mailbox ,yaqueloscorreosnose almacenanenununicofichero,sinoquesegeneraautomaticamenteun ficheroporcadacorreoquesearecibido. Estosficherossealmacenanenlaruta /var/spool/mail/

Laventajaprincipaldeesteformato,esqueelprocesodelecturay escrituraserealizaagranvelocidad,aptoparacondicionesdondeel flujotantodelecturayescrituradecorreoseselevado. Tienepocasdeventajas,yunadeellasesquesenecesitagran capacidaddealmacenamientoendisco.

6.INSTALACIONYCONFIGURACIONDELOS PROTOCOLOSIMAPYPOP3
Ahoraloqueharemosserainstalarlosprotocolosdepop3eimap,que sonlosencargadosdedescargarloscorreos,desdeunclienteatraves delservidor. Cabedestacar,quePop3loquehaceesconectarsealservidordecorreo atravesdelpuerto110ydescargaloscorreoshastaelclientepara podervisualizarlos,cosacontrariaquepasaconImapqueseconectaal servidordecorreoatravesdelpuerto143ypodemosvisualizarlos correosremotamentedesdeelservidorsinlanecesidaddedescargarlos.

6.1INSTALACIONYCONFIGURACIONDEDOVECOT
EstoloharemosatravesdeDOVECOT,queesunodelostantoservidores depop3eimapqueexisten. Loqueharemosserabuscarenlacachedelosrepositoriosquesise encuentrenestospaquetesyluegoinstalarlos. root@regocorreo:~# aptcachesearchdovecot BuscamosquetengaDovecotsoporteparalosprotocolosPopeImap.

root@regocorreo:~# root@regocorreo:~#

aptgetinstalldovecotimapd aptgetinstalldovecotpop3d

Laformaenqueautenticaremosnuestroservidordecorreoseraatraves de unservidorcomopuedesercomoIMAPoPOP3contraPAMqueesun mecanismodeautenticacionqueguardalosregistrosenelsistemalocal.

Vamosalarchivodeconfiguraciondedovecot,quesecreapordefectoen eldirectorio /etc/dovecot/ Elarchivoprincipaldeconfiguracionsera root@regocorreo:~# nano/etc/dovecot/dovecot.conf dovecot.conf

Laslineasquedescomentaremos,modificaremosoagregaremosensu defecto,seran: pop3pop3simap protocols: (Seraelprotocoloquemanejaraelservidordovecot) * Listen: (Porcualpuertoescuchara.Siponemosunasterisco*esporquetomarael puertopordefecto) no disable_plaintext_auth: (Nosdice,quesiqueremosDeshabilitarlaautenticacionestextoplano, ledecimosqueno,porqueutilizaremoslaautenticacionentextoplano) yes ssl_disable: (Siqueremosdeshabilitar viajaranencriptados.) SSL Paratransporteseguroyaquelosdatos

mbox:~/mail:INBOX=/var/mail/%u mail_location: (Ellugardondesealojaranloscorreoselectronicos,quepordefecto seranen/var/mail.Yla%uquieredondesealmacenaranloscorreosa determinadousuario)

61.1AUTENTICANDODOVECOTATRAVESDEPAM
ahorahabilitaremoslaautenticacionentextoplano. Alfinaldelarchivo agregaremosunaslineasquenos dovecot.conf permitiranautenticarnos. authdefault{ mechanisms=plainlogin passdbpam{ } userdbpasswd{ } socketlisten{ client{ #AssumingthedefaultPostfix$queue_directorysetting path=/var/spool/postfix/private/auth mode=0660 #AssumingthedefaultPostfixuserandgroup user=postfix group=postfix } } } Parafinalizarreinicamoselservicioparaquegurdeloscambios efectuados. Error!!!!Peroquepaso??Claro,loquepasaesqueagregamosestas lineasalfinal,paraentendermejorlasintaxisdecomoautentica Dovecotcontrapam,peroestaslineasseencuentrasdescomentadasalo largodetodoelarchivo,porendealtratardereiniciarelservicio nossacaunerrorquenosindicaqueexisteduplicadoenlaslineas. root@regocorreo:~# /etc/init.d/dovecotrestart

Error:Errorinconfigurationfile/etc/dovecot/dovecot.confline1095: Authenticationprocessalreadyexistswiththesamename(sectionchangedat line1093) Fatal:Invalidconfigurationin/etc/dovecot/dovecot.conf

[fail]

Entoncesloqueharemosseracomentarlaslineasqueseencuentran repetidasalolargodelarchivo. Laslineasquecomentaremosson: #authdefault{line769 #mechanisms=plainline773 #passdbpam{line806 #}line839 #userdbpasswd{line907 #}line914 #user=rootline970 #}line1020 root@regocorreo:~# /etc/init.d/dovecotrestart

RestartingIMAP/POP3mailserverdovecot

nota:yaqueenestemanualseencuentran2formasdedescargarlos correosconlasplataformasdovecotycourrrier/imapnosedeben crearconfusiones,simplementesequierenmostrarlasalternativasque mejorseacomodenasuscriterios.Noestademasdestacarquecorier imapfuedenuestrapreferenciacomosedescribiramasadelante.

6.2INSTALACIONYCONFIGURACIONDECOURIERIMAP
CourieresotroservidordePOPeIMAP,quenospermiteaccederalos correosyaseaparavisualizarlosremotamenteoparadescargarlos. LadiferenciaprincipaldeCourierconrespectodeDovecoteselformato dealmacenamiento,yaqueelformatodeCourieresMAILDIRalmacenalos correosenficherosdisitntosconnombresunicos. EstoesunaventajaconrespectodeMailbox,yaqueseaccederaalos correosmasfacilmenteyencasodequesellegaseaborrarunfichero deestos,soloseperderiaestemensajeencambiomailboxalalmacenar todosloscorreosenununicoarchivoporusuarioesmassuceptiblea daosyelprocesodelecturadeloscorreos,esmaslento. LoprimeroqueharemosserainstalarCourierconlosprotocolospope imap. SitenemosinstaladootroservidordeprotocolosdePopeImap,podremos tenerconflictosconeste,yaquelospuertosporlosquetrabajasestos protocolossonsiemprelosmismossinimportarconqueservidorlo estemoshaciendo. Paracomprobarquenoestecorriendoningunprotocolo,hacemoslaprueba contelnetalospuertos root@regocorreo:~# estecorriendo) telnet127.0.0.1110 (ComprobarquePopno

Trying127.0.0.1... telnet:Unabletoconnecttoremotehost:Connectionrefused root@regocorreo:~# estecorriendo) telnet127.0.0.1143 (ComprobarqueImapno

Trying127.0.0.1... telnet:Unabletoconnecttoremotehost:Connectionrefused Ahoraquesabemosqueningunodeestos2protocolosestafuncionando, procedemosconlainstalacionde Courierimap NOTA: SitenemosinstaladoalgunservidordePOPeIMAP,podriamostener conflictosyproducirerroresaltratardecorrerelservicio,lo recomendableesdesinstalarlo. root@regocorreo:~# aptcachesearchcourier (Buscamosenlacachequeseencuentrenlospaquetesrespectivosde Courier)

root@regocorreo:~#

aptgetinstallcourierimap

Despuesdequeinstalemosestepaquete,vamosalarchivoprincipalde Postfixyloeditamosdemaneraquepuedaalmacenarloscorreosenel formatoMaildir. root@regocorreo:~# root@regocorreo:~# cd/etc/postfix/ nanomain.cf

Alfinaldeestearchivo,agregamosestalineas: home_mailbox=Maildir/g mail_spool_directory=/var/spool/mail/ Ybuscamosestavariabledentrodelarchivoparacomentarla. #mailbox_command=procmaila"$EXTENSION" Laverdad,estavariablenoseencontroEntoncesloquesehizofue agregarlaycomentarla.(omitirsinoesnecesario) Ahoraloqueharemosseracrearunficheroconlasbasededatosdelos usuariosdelsistema,yaquelaautenticacionqueharemosseracontra Pam... root@regocorreo:~# root@regocorreo:~# cd/etc/courier pw2userdb>userdb

estocrearaunarchivodondeseencuentrantodoslosusuariosdel sistema.

Yporseguridadborramostodoslosusuarios,exeptoslosdelsistema. Trasguardaruserdb,lecambiamoslospermisosygeneramoselficherode contraseas root@regocorreo:~# root@regocorreo:~# chmod700userdb makeuserdb

Ahoraeditaremosunasopcionesenelarchivoprincipaldecourierimap, paraquepuedafuncionareldemonio. root@regocorreo:~# root@regocorreo:~# cd/etc/courier nanoimapd

IMAP_MAILBOX_SANITY_CHECK=0 (Cambiamosel1porun0) ycomprobamosqueestaopcionsieste,yqueseencuentredescomentada. IMAP_MAILBOX_SANITY_CHECK=0 luegodeesto,gurdamosloscambiosysalimos. AhorapondremoselmetododeautenticacionqueseraatravesdePAM root@regocorreo:~# nanoauthdaemonrc

Buscamoslasiguientelinea,ynosaseguramosquedentrodelascomillas

seencuentreelmetododeautenticacion. authmodulelist="authpam" Ahorareiniciamoselservicioparaquecargueloscambiosefectuados,y comprobarquenoexistenerrores. root@regocorreo:~# /etc/init.d/courierimapdrestart *StoppingCourierIMAPserver...{OK} *StartinfCourierIMAPserver...{OK} root@regocorreo:~# /etc/init.d/courierauthdaemonrestart *StoppingCourierIMAPserver...{OK} *StartinfCourierIMAPserver...{OK} root@regocorreo:~# telnet127.0.0.1143

AhorapodemosprobarlarecepciondecorreosatravesdeIMAP,los correosatravesdeunMUA,comopuedeserThunderbirdoEvolution.

7.1EVOLUTION

7.CONFIGURARELMDA

EvolutionesunSoftwareMDAquevienepordefectoinstaladoennuestro sistemaoperativolinux. Paraprobarlocerramossesionynoslogueamoscomounusuariodel sistema. Vamosalmenu aplicaciones/internet/correodeevolution/

Alabrirloporprimeravez,tendremosquellenarcadaunodeloscampos requeridos IniciaremoselasistentedeconfiguraciondeEvolution IniciaelasistentedeconfiguraciondeCorreodeEvolution Siguiente

aqullenaremoslossiguientescampos: NombreCompleto: Direcciondecorreoe: Respondera: LucasZuluaga regocorreo@lucas.com

regocorreo@lucas.com

RecepciondeCorreo Estaseralaformaatravesdelacualqueremosrecibirloscorreos....Ya sealocalmente,oatravesdelosprotocolos POP3eIMAP. Nota:Paraestodebemostenerencuentaquetendremosqueinstalarel servidorparapop3oimap(Dovecot),quelorealizamosenelpaso anterior.

AlseleccionarcomoservidorparalarecepciondecorreoaIMAP, tendremosquellenarloscamposdeconfiguracionrespectiva. Configuracion: servidor: 192.168.1.1 (DireccionIPservidorIMAP) (Usuarioquerecibiraloscorreos

Usuario: regocorreo@lucas.com atravesdeesteservidor)

Opcionesderecepcion Comprobarsihaycorreoscada:(OK) Comprobarsihaymensajesentodaslascarpetas:(OK) 1minuto

OpcionesdeEnviodeCorreo

Tipodeservidor: SMTP Servidor:192.168.1.1(LdireccionIpdelequipodondeseencuentra instaladoelservidor,ennuestrocaso utilizaremosladireccionIpquetenemosennuestroequipo.)

Seleccionamoselpaisdondenosencontramos,ylisto. DamosOKparafinalizar. Ydeinmediato entramos alentornodeCorreoEvolution.

Loprimeroquenospedira,seraquenosloguiemos,yestoseraatraves delmecanismodeautenticacionPAM,queguardalosregistrosenel sistemalocal. Nota:Masadelanteutilizaremosotrosmecanismosdeautenticacioncomo sonSASL.

NoslogueamosintroduciendoelpasswordrespectivoalUsuario AhorayapodremosingresaralentornoEvolutionparaadministrar nuestroscorreosdeunaformamasamigableparaelusuario.

regocorreo

Ahoraloqueharemosseramandaruncorreoaelmismousuario,para verificarquelosservidoresparaelenvioylarecepcionestan funcionandoperfectamente. Damosclickenlapartesuperiosizquierda,dondedice Nossaldranvariasopciones,peroelegimos Nota:(unaformamasrapidaespresionarsimultaneamentelas Ctrl+N) Mensajedecorreo. NUEVO. teclas

Ahoranossaldraunaventanadondeescibiremoseldestinatarioalque queremosquelellegueelcorreo. Elasuntodelmensajequevienesiendocomoeltemaalqueserefiere. Yenlapartedeabajo,enelespacioenblancopodremosescribirEl mensajecomotal.

YParafinalizardamosclicenEnviar/Recibirqueseencuentraenla partesuperiorizquierda,alladodeNuevo. Conesto,enviamoselcorreoyesperamosaquellegueanuestrobuzon.

Damosclicen xito.

BandejadeEntrada

yvemosqueelmensajehallegadocon

Nota:

ya que en este manual se encuentran 2 clientesdecorreosconlasplataformasevolution y thunderbind no se deben crear confusiones, simplemente se quieren mostrar las alternativas que mejor se acomoden a sus criterios. No esta demas destacar que evolution fue de nuestra preferenciacomosedescribirmasadelante.

7.2THUNDERBIRD
ThunderbirdesunMUA(AgenteUsuariodeCorreo),odichoenotras palabrasesuncliente,quenospermiteconectarnosaunservidory teneraccesoanuestroscorreos. ThunderbirdesunsoftwarediseadoporlafamiliadeMozilla,poreso sunombrefinalesMozillaThunderbird,esmuchisimomaslivianoque otrosclientesdecorreoysoportamultiplesplataformas.Ademasquees SoftwareLibre. UnadelasventajasprincipalesdeesteSoftware,esel quetraepordefecto,porloquepermiteanalizarcadacorreoyasea recibidooenviado. Loprimeroqueharemosserabuscarenlacachedelosrepositorios,que estepaquetesiseencuentre,paraprocederconsuinstalacion. root@regocorreo:~ #aptcachesearchmozillathunderbird mozillathunderbirdenigmailTransitionalpackageforenigmail mozillathunderbirdbidiuiBiDirectionalsupportforIcedove mozillathunderbirdTransitionpackageformozillathunderbirdrename mozillathunderbirddevTransitionpackageformozillathunderbird rename Ahoraquesabemosquenuestropaqueteseencuentraenlosrepositorios, procedemosainstalarlo. root@regocorreo:~# aptgetinstallmozillathunderbird FiltroAntispam

Despuesdehaberinstaladoelpaquete,podemosaccederaThunderbirdde lasiguientemanera: Dandoclicenelmenu Mail/News Aplicaciones/Internet/MozillaThunderbird

EiniciamoselAsistente,paracrearunacuentadecorreo.

Seleccionamos

EmailAccount

(cuentadecorreo),YdamosclicenNext.

AhorallenaremosloscamposdeIdentidadquenospiden: YourName= LucasZuluaga (NombreconelquequeremosqueaparezcanuestroUsuario) EmailAddress= new@lucas.com (Indicamosunacuentadecorreoelectronico) Damosclicen Next paracontinuar

Ahoraseleccionaremosquetipodeprotocoloparaaccederalosmensajes utilizaremos,paranuestrocasoutilziaremos IMAP. IncomingServer =192.168.1.1 (NombredelServidordeIMAPoladireccionIP,quetieneelservidor) Damosclicken cuenta. Next paracontinuarconelprocesodeconfiguraciondela

Ahoraescribimoselnombreconelquequeremosqueaparezcanuestro servidordecorreo. Ahoradamosclicken Nex t,paraverenlaconfiguracion,silos parametrosquepusimosfueronloscorrectos

Yahoradamosclicen parafinalizarelasistentede Finish, configuraciondeunacuentadecorreoelectronico

8.AUTENTICACIONATRAVESDESASL
SASLSonlassiglasde vienesiendoenespaol SimpleAuthenticationandSecurityLayer (capadeseguridadyautenticacinsimple). que

Esunprotocolodelacapadelacapadeaplicacinquepermiteaun protocolocomoIMAPoPO3laautenticacion. Estemecanismofuncionamasomenosdelasiguientemanera,uncliente MUAseconectaraalservidordecorreo,elusuariotendraquevalidarse aesteservidorpormediodesaslantesdepodersacaruncorreo. Loprimeroqueharemosseraentraralarchivoprincipaldepostfix: root@regocorreo:~# nano/etc/postfix/main.cf

Alfinaldeestearchivoingresamoslassiguienteslineas:
smtpd_sasl_auth_enable=yes smtpd_recipient_restrictions=permit_sasl_authenticated,reject smtpd_sasl_authenticated_header=yes smtpd_sasl_type=dovecot smtpd_sasl_path=private/auth smtp_sasl_auth_enable=no smtpd_sasl_security_options=

smtpd_sasl_auth_enable=yes (PermitiremoslaautenticacionpormediodeSasl) smtpd_recipient_restrictions=permit_sasl_authenticated,reject (Estoquieredecirquepermitiremosqueseenviencorreos,despuesde quehallansidovalidadosatravesdeSasl) smtpd_sasl_authenticated_header=yes (Siqueremosagregarleunacabezeraasasl) smtpd_sasl_type=dovecot (Eltipodeservidorquetenemosparalarecepciondecorreo,conel cualqueremosqueseauntenticaparapoderenviar/recibircorreos) smtpd_sasl_path=private/auth (Modocliente) smtp_sasl_auth_enable=no (Sisoportalaauthenmodocliente,ledecimosqueNO,yaquedovecot nosoportaestaautenticacion) Nota:Dovecotsolosoportalaautenticacionenmodoservidor,queesla quepermitequeunusuarioseconectealservidor,sevalidehaciaeste parapoderdescargarloscorreos) (Enestecampo,podremosadicionar smtpd_sasl_security_options= opcionesparalasecuridaddesasl,sidejamosestecampoenblanco, sasltomaralosvaloresquetienepordefecto)

Alterminardeingresarestasopcionesreiniciamoselservidorparaque carguelosnuevoscambiosefectuados. root@regocorreo:~# /etc/init.d/postfixrestart base64

Ahoraprobaremoslavalidacion.Loharemosatravesde Nota:BASE64Esunsistemadeenumeracionqueutilizaunsistemade codificacionparaloscorreoselectronicosyotrasaplicaciones. root@regocorreo:~# Donde: printf\0%s\0%s New=usuariodelsistema 123=Eselpassworddelusuarionew base64=Esunsistemaparalacodificaciondelosdatos,aunquepodemos utlizarotros. =Eslaformaparagenerarunaclavecodificada. printf\0%s\0%snew123|base64

ConestonosdamoscuentaqueelMTA(Postfix)Estavalidandolos usuariosdeunamaneracodificadaatravesdesasl. Elmetododecifrado,esentextoplano,peroamedidaquevayamos avanzandoconestemanual,leadicionaremoscomplementosdeseguridad.

Ahoraledamosclicen

ENVIAR/RECIBIR

YnosdeberadesalirunmenudeAutenticacionparaENVIARelcorreo.

Nosloguemaosparapoderenviarelcorreo.

8.TLSPARAPOSTFIX
TLS TransportLayerSecurity(SeguridaddelaCapadeTransporte),Esun protocolodelacapadetransportequepermitequelacomunicacindeun extremoaotroseasegura,yaqueelmensajeviajaraencriptadoloque lahaceseguradeescucha(eavesdropping),falsificaciondelaidentidad y(phishing). Loprimeroquedebemosdetenerencuentaesquepostfixdebededetener soporteconTLS. Pordefectoenladistribucion postfixtlsopenssl Ubuntu8.04 postfixtraepordefecto queesun

Loprimeroqueharemosseracrearun certificadodigital, documentoquecertiicaelvinculodeuncanalseguroentreunclientey unservidorporuncanalseguro. root@regocorreo:~# opensslreqnewx509nodesoutcertificado.pem keyoutpostfix.pemdays3000 certificado.pem= extension.pem keyoutpostfix.pem= Nombrequeledaremosanuestrocertificadoconla integracionconpostfix

days= Diasquetedravigencianuestrocertificado,ponemoslosdiasque creamospertinentes.

Elcertificadohasidocreado. Paraverificarlovamosalassiguienteruta,dondequedaranalojados: root@regocorreo:~# certificado.pem cd/etc/ssl/ certopenssl.cnf postfix.pem private

Abrimoselarchivocertificado.pemyveremosalgoasi:

Ahoraeditaremoselarchivoprinicipaldeconfiguraciondepostfixpara incluirelsoporteconTLS. root@regocorreo:~# nano/etc/postifx/main.cf

Enestearchivoagregremoslassiguienteslineas: #TLSParameters
smtpd_tls_cert_file=/etc/ssl/certificado.pem smtpd_tls_key_file=/etc/ssl/postfix.pem smtp_use_tls=yes smtp_tls_loglevel=0 smtp_tls_session_cache_timeout=3600s smtp_tls_note_starttls_offer=yes smtp_starttls_timeout=300s

Donde: smtpd_tls_cert_file=/etc/ssl/certificado.pem (Rutadondeseencuentraelcertificadoqueanteriormentecreamos) situaciondelaclavepublica smtpd_tls_key_file=/etc/ssl/postfix.pem (Rutadondeseencuentralasclaves.pemdelcertificadodigital) situacindelaclaveprivada(enlosficheros.pem,ambasestnjuntas smtp_use_tls=yes (debemosutilizarTLSsiemprequesepueda,ledecimosqueYES) smtp_tls_loglevel=0 niveldelog.Poner2hastaquetodofuncionebien smtp_tls_session_cache_timeout=3600s tiempodevalidezdelasclaves smtp_tls_note_starttls_offer=yes avisodeconexinTLS smtp_starttls_timeout=300s tiempomximodelintercambiodeclaves (LosparametrosdelostiemposdeconexindeTLS)

root@regocorreo:~#

/etc/init.d/postfixrestart

ReinciamoselservidordecorreoPostfix,paraquecargueloscambios efectuados.. Ahorapodremosenviarcorreosconmayorseguridad,yaqueelmensaje viajaraencriptdoconunaltoniveldeseguridad,demaneraquesoloel destinatariopodraverelcorreo. Nota:Enlaconfiguraciondelosmdacomo podremosseleccionarquecifreeltraficopormediodeTLS. Evolution o thunderbird

Yparamayorseguridad,podremosverlospaquetescomoviajan,atraves deun queesunanalizadordeprotocolos. Snnifer

9.INSTALACIONYCONFIGURACIONDEOPENLDAP
esunprotocoloaquepermiteelaccesoaunServiciodeDirectorios ordenadoydistribuidoparaestructurarlainformacinenunentornode red. Estemanual,estadedicadoa ,queesunaimplementacinlibre OPENLDAP delprotocoloquesoportamltiplesesquemasporloquepuedeutilizarse paraconectarseacualquierotroLDAP,comoloes MandrivaDirectory Server , FedoraDirectoryServer o RedHatDirectoryServer. Ahoraloquerealizaremosserabuscarenlacachedenuestros repositorios,quesiseencuentrenlospaquetesnecesariosparala instalacionde OpenLdap. root@regocorreo:/# aptcachesearchldaputils ldaputilsOpenLDAPutilities root@regocorreo:/# aptcachesearchmigrationtools migrationtoolsMigrationscriptsforLDAP root@regocorreo:/# aptcachesearchslapd slapdOpenLDAPserver(slapd) slapddbgDebugginginformationfortheOpenLDAPserver(slapd) Ahoraquesabemosquetodoslospaquetesseencuentranenlacachede losrepositorios,podremosinstalarlos. root@regocorreo:/# root@regocorreo:/# root@regocorreo:/# aptgetinstallldaputils aptgetinstallmigrationtools aptgetinstallslapd

Alinstalarestepaquetedeslapd.Nospediraunacontraseaparael administrador,peroesopcionalponerlayaquemasadelante configuraremoslosparametrosbasicosyenellosseincluyela contrasea. Luegodequetenemosinstaladoestospaquetes,iniciaremosla configuracion. root@regocorreo:/# dpkgreconfigureslapd

Deinmediatoiniciaraelasistenteparalaconfiguraciondeslapd.

LedecimosqueNO...yaquequeremosconfigurarlosparametrosbasicosde openldap.

Escribimoseldominio,paraqueOpenLdapconstruyalabaseDN.

Elnombredenuestraorganizacin,puedesernuestrodominio.

Escribiremosunacontraseadeadministrador,demaneraqueenel momentodeefectuaralguncambio,debemosdeestarlogueadoscomoel administrador.

Ahoralediremosqueelmotordelabasededatosqueuilizaremossera detipoBDBporserunmotordebsquedarelacionalynospermiterealizrconsultasenlabasededatosdemaneramas rpidaconelmismodiseodeldap,enconclusinseescogeestacuandosenecesitaqueelprocesodelecturaseamas rpidoqueeldeescritura.

Nospreguntaquesideseamosborrarlabasededatoscuandopurgemosel paqueteSlapd. Lerespondemosqueno,parapermitirquelabasededatosquedepresente enelmomentodeeliminarelpaquetedeinstalacion.

Ledecimosquesi,yaquenotenemosunabasededatosconfigurada, porqueapenaslavamosacrear.

NospreguntaraquesiqueremosqueinstaleLDAPV2.Lerespondemosque NO,yaquenoseranecesarioporquetodoslosprotocolosyserviciosque tenemosinstaladostienensoporteconldapv3. ahorarealizamoslarespectivaconfiguracinparaqueelServidorusela autenticacindeLDAP. Instalamoslospaquetesnecesarios,parapoderllevaracanoesta operacin. Primeroquetodo,comprobamosenlacachedelosrepositorios,quese encuentrenlospaquetes. root@regocorreo:~# aptcachesearchauthclientconfig authclientconfigpamandNSSprofileswitcher root@regocorreo:~# aptcachesearchlibnssldap libnssldapNSSmoduleforusingLDAPasanamingservice libpamldapPluggableAuthenticationModuleallowingLDAPinterfaces libnssldapdNSSmoduleforusingLDAPasanamingservice libpamccredsPammoduletocacheauthenticationcredentials nssupdatedbCachenameservicedirectoriesinDBformat root@regocorreo:~# aptcachesearchlibpamldapserver libpamldapPluggableAuthenticationModuleallowingLDAPinterfaces ldapscriptsAddandremoveuserandgroups(storedinaldap directory)

libpamccredsPammoduletocacheauthenticationcredentials nssupdatedbCachenameservicedirectoriesinDBformat Ahorapodemosinstalarlospaquetes. root@regocorreo:~# root@regocorreo:~# aptgetinstallauthclientconfiglibnssldap aptgetinstalllibpamldap

Cuandoestemosinstalandoesteultimopaquete,nospedirauna configuracionqueacontinuacionexplicaremos. Ldapserveruniformresourceidentifier ldapi://127.0.0.1/ distinguisednameofthesearchbase dc=lucas,dc=com ldapversiontouse 3 makelocalrootdatabaseadmin si doestheldapdatabaserequierelogin no ldapaccountforroot cn=admin,dc=lucas,dc=com (EsteseraelusuarioprincipaldeLdap) Ldaprootaccountpassword ############# Configuracionde root@regocorreo:~# root@regocorreo:~# ldap.conf cd/etc/ldap.conf nanoldap.conf

Entramosalarchivoprincipaldeldap,ymodificaremoslossiguientes campos. Nota:Estoscamposvariandeacuerdoalaconfiguraciondeladireccion IP,ydeldominioquesetengainstaladoenlamaquina. #host127.0.0.1 host192.168.1.1

basedc=lucas,dc=com urildapi://127.0.0.1/ rootbinddncn=admin,dc=lucas,dc=com port389 bind_policy_soft Ahoracopiamoslosarchivos root@regocorreo:~# cp/etc/ldap.confa/etc/ldap/ldap.conf

Luegocreamosunarchivodeconfiguracionparalaautenticacion. root@regocorreo:~# root@regocorreo:~# cd/etc/authclientconfig/profile.d/ touchopen_ldap

Eingresamoslassiguienteslineas:
[open_ldap] nss_passwd=passwd:compatldap nss_group=group:compatldap nss_shadow=shadow:compatldap pam_auth=authrequiredpam_env.so authsufficientpam_unix.solikeauthnullok authsufficientpam_ldap.souse_first_pass authrequiredpam_deny.so pam_account=accountsufficientpam_unix.so accountsufficientpam_ldap.so accountrequiredpam_deny.so pam_password=passwordsufficientpam_unix.sonullokmd5shadowuse_authtok passwordsufficientpam_ldap.souse_first_pass passwordrequiredpam_deny.so pam_session=sessionrequiredpam_limits.so sessionrequiredpam_mkhomedir.soskel=/etc/skel/ sessionrequiredpam_unix.so sessionoptionalpam_ldap.so

Ahoraloqueharemos,serahabilitarlaauntenticaciondeldap. root@regocorreo:~# authclientconfigapopen_ldap

ahorareiniciaremoselservidor,paraquecargueloscambiosefectuados, ycomprobarquenotenemoserrores. root@regocorreo:~# /etc/init.d/slapdrestart

10.SOFTWAREDEADMINISTRACIONDELDAP
LAT(LdapAdminTools) Esdeunaformidableherramientaparalaadministracinde paraadministrargraficamentetodalaunidaddeldirectorio. descargamosestesoftwaredesde: http://www.ldapsoft.com/ldapadmintool.html ahorainstalaremoselsoftware;Buscamoslarutadondeesteseencuentra root@regocorreo:~# Einiciaremoslainstalacion. Abrimoselsoftwareporprimeravez ./ldapAdminTool2.4.xLinuxx86Install.bin .Ideal LDAP

Loprimeroqueharemosseracrearunanuevaconexin,entreeste software(LdapAdminTools)yOpenLdap.

ConnectionName= conexinLDAP (Esteseraelnombrequelequeremosdaralaconexin) Hostname= 127.0.0.1 (Enestaopcionpodemosingresarelnombredelequipodondeseencuentra ldap,oladireccionIPdeeste.Paranuestrocasoutilizaremosla direccion127.0.0.1yaqueldapseencuentrainstaladoyconfiguradoen nuestroequipolocal) port= 389 (Elpuertoporelcualserealizaralaconexin.389vienepordefecto) protocol= LDAPv3 ( Esteseraelprotocoloqueutilizaraldap...Podemosutilizarla version2olaversion3. BaseDN= dc=lucas,dc=com (Estaeslabasedecomoestaconformadonuestrodominio,yaquees lucas.comysedefinecomodc=lucasyel.comqueseradc=com) porultimotesteamosqueseencuentrelaconexinactivaconldap,para poderingresaryrealizarloscambiosquequeramos.

Ahoradefiniremoslosparametrosdeautenticacion.

SimpleAuthentication

ylosparametrosseran: BindDN= cn=admin,dc=lucas,dc=com (Elusuarioadministradordeldap,seraadminyponemoslabasede nuestrodominio.) Password= ************** (Esteseraelpasswordqueanteriormentehabiamosdefinidoparael usuarioadmin) Ycomprobamosquelascredencialesseanvalidas.

Estassonalgunasdelasopcionesdelaconexinquepodemosmodificar. Yparafinalizardamosclicen Finish.

EnestemomentoyatenemosunaconexinestablecidaentreLATy OPENLDAP.

11.INTEGRACIONDEOPENLDAPCONPOSTFIX
Ahoraloqueharemossera integrarOpenLdapconPostfix.

Loprimeroqueharemosserainstalarelpaquetequenosbrindael soporteentreldapypostfix. Buscamosquesiseencuentreelpaquete. root@regocorreo:/# aptcachesearchpostfixldap LDAPmapsupportforPostfix Ahorapodemosinstalarelpaquete root@regocorreo:/# aptgetinstallpostfixldap

Loprimeroqueharemosseracrearlaestructura(Schema)parapoder realizarusuarioygruposvirtualesparaelservidordecorreo, validandosecontraOpenLdap. root@regocorreo:/# root@regocorreo:/# cd/etc/ldap/ nanoslapd.conf

Adicionaremosunnuevoschema Include/etc/ldap/schema/postfix.schema Ahoravamosaestarutaycreamosunficheroquecontendraelnuevo schema. root@regocorreo:/# cd/etc/ldap/schema/

root@regocorreo:/#

touchpostfix.schema

yagregaremoslossiguientesesquemas
#ExtensionstosupportPostfixMTAusingOpenldapexperimentalOID's attributetype(1.3.6.1.4.1.15347.2.102 NAME'transport' SUPname) attributetype(1.3.6.1.4.1.15347.2.101 NAME'mailRoutingAddress' SUPmail) attributetype(1.3.6.1.4.1.15347.2.110NAME'maildest' DESC'Restrictedtosendonlytolocalnetwork' EQUALITYcaseIgnoreMatch SUBSTRcaseIgnoreSubstringsMatch SYNTAX1.3.6.1.4.1.1466.115.121.1.15{32768}) attributetype(1.3.6.1.4.1.15347.2.111NAME'mailaccess' DESC'Canbemailedtorestrictedgroups' EQUALITYcaseIgnoreMatch SUBSTRcaseIgnoreSubstringsMatch SYNTAX1.3.6.1.4.1.1466.115.121.1.15{32768}) attributetype(1.3.6.1.4.1.15347.2.100 NAME('maildrop') DESC'RFC1274:RFC822Mailbox' EQUALITYcaseIgnoreIA5Match SUBSTRcaseIgnoreIA5SubstringsMatch SYNTAX1.3.6.1.4.1.1466.115.121.1.26{256}) attributetype(1.3.6.1.4.1.10018.1.1.1NAME'mailbox' DESC'Theabsolutepathtothemailboxforamailaccountinanondefault location' EQUALITYcaseExactIA5Match SYNTAX1.3.6.1.4.1.1466.115.121.1.26SINGLEVALUE) objectclass(1.3.6.1.4.1.15347.2.1 NAME'mailUser' DESC'EMailUser' SUPtop AUXILIARY MUST(uid$mail$maildrop) MAY(cn$mailbox$maildest$mailaccess) ) objectclass(1.3.6.1.4.1.15347.2.2 NAME'mailGroup' DESC'EMailGroup' SUPtop STRUCTURAL MUST(cn$mail) MAY(mailRoutingAddress$member$description) ) objectclass(1.3.6.1.4.1.15347.2.3 NAME'transportTable' DESC'MTATransportTable' SUPtop STRUCTURAL MUST(cn$transport) )

Sicomprendemoslasintaxisdeesteschema,podemosadicionardefinicionesa estaestructura. Despuesdehabercreadoelarchivoconelesquema,vamosalarchivoprincipalde Postfixyagregamoslassiguienteslineas,quenospermitiracrearusuarios virtualesconOpenLdapeintegrarlosfacilmenteapostfix. root@regocorreo:/# #LDAPsettings virtual_maps=ldap:ldapgroups,ldap:ldapalias ldapgroups_server_host=localhost ldapgroups_server_port=389 ldapgroups_search_base=ou=Groups,dc=lucas,dc=com ldapgroups_bind=no ldapgroups_timeout=30 ldapgroups_query_filter=(&(mail=%s)(objectclass=mailGroup)) ldapgroups_special_result_attribute=member ldapalias_server_host=localhost ldapalias_server_port=389 ldapalias_search_base=ou=Users,dc=lucas,dc=com ldapalias_bind=no ldapalias_timeout=30 ldapalias_query_filter=(&(mail=%s)(objectclass=mailUser)) ldapalias_result_attribute=maildrop transport_maps=ldap:ldaptransport ldaptransport_server_host=localhost ldaptransport_server_port=389 ldaptransport_search_base=ou=Transport,dc=lucas,dc=com ldaptransport_bind=no ldaptransport_timeout=30 ldaptransport_query_filter=(&(cn=%s)(!(cn=server.mydomain.com)) (objectclass=transportTable)) ldaptransport_result_attribute=transport paradecirleapostfixsobreLASCUENTASVIRTUALES;delparametromydestinationquitoeldnslocaly dejamoselnombredeequipouna,ylocalhost:debajodeestalineaadicionamosel parametros:

nano/etc/postfix/main.cf

virtual_mailbox_domains=lucas.com (aquesdondealmacenoloscorreos) virtual_mailbox_base=/vmail/correos (aquesdondesehacelas virtual_mailbox_maps=ldap:/etc/postfix/ldap.conf consultasdeldap) virtual_uid_maps=stactics:5000 0(enestasdosultimaslineasestamos virtual_gid_maps=stactics:500 especificandoelusuario/grupovirtualadminylosbuzonesparaestos).

Esobvioquedebemosteneresteusuarioyacreado useraddmd/vmails/bin/falseUu5000vmail(vmaileselnombredeusuario,Este usuario y grupo tendrn el mismo UID y GID 5000 se uso un numero alto para no interferir con las cuentas locales.) consusrespectivodirectorio
Transportes:la definicin de la fuente LDAP que usaremos es la de transport, la cual define el transporte root@regocorreo:/# mkdir/vmail/correoschown5000:5000/vmail/correos.
para los dominios. Postfix usa el transporte para determinar que sigue hacer con los correos una vez recibidos. Sin embargo tambin podra ser usado el transporte "virtual". En este caso se usa el filtro para buscar el nombre de el dominio, ver que este activo y que no tenga el valor de delete a FALSE. El resultado que buscaremos es postfixTransport, que sera configurado para que siempre tenga el valor de maildrop. Cuentas virtuales: la 2da y 3ra lnea son parmetros que se usan para decirle donde esta la base de el repositorio de los correos virtuales. y la otra para decirle cual es la fuente LDAP donde buscaremos la ruta de el buzn de el correo, recordemos que en la fuente LDAP "accounts" se obtiene como parmetro "mailbox". Las siguientes configuraciones se usan para definir el UID y GID de el usuario vmail, y el parmetro "virtual_minimum_uid" significa que uid mnimos a el 5000 sern rechazados y el mensaje sera "deferred". Todos estos parmetros estn completamente documentados en los archivos README_FILES/VIRTUAL_README que vienen con las fuentes de Postfix. Tambin necesitamos editar el parmetro "local_recipient_maps" para que tambin busque en "virtual_mailbox_maps" de manera que Postfix sepa quien es un usuario en el servidor de correo y quien no. Adicionando lo siguiente:

local_recipient_maps=proxy:unix:passwd.byname,$alias_maps,$virtual_mailbox_maps
Tambinusaremoselparmetro: show_user_unknown_table_name=no
se uso se unuso numero un numero alto para alto no para interferir no interferir con lascon las

DespuesdehaberadicionadoestaslineasreinicamosOpenLdap,paraque carguenlosnuevoscambiosefectuadosysercionarnosdequenohallan errores Nota:Cadavezquereiniciemosalgunservicio,verifiquemosenlosLogs pertinentesquenoexistenerrores. root@regocorreo:/# /etc/init.d/postfixrestart root@regocorreo:/# /etc/init.d/slapdrestart (Slapdsedemoraraunpocomsparareiniciarseyaqueapenasesta integrandolosnuevoscambiosrealizados)

12.SERVIDORANTIVIRUSYANTISPAM
Esmuyimportantetenerunbuensistemaantivirusyantispam,yaqueel correoelectronicoesunodelosmedios(Elmayordiriayo)pordondese transmitenvirusydemasiadospam. Primeroempezaremosconfigurandoelservidorantispam,utilizaremos SpamAssasin yaqueesunodelosmejoresservidoresantispampara correo,yexistemuybuenadocumentacionysoporteparaeste. Loprimeroqueharemosserabuscarenlacachedelosrepositoriossi existeestepaqueteparaserinstalado,delocontrarioactualizar nuestrosrepositorios. root@regocorreo:~# aptcachesearchspamassassin

Acontinuacioninstalaremoslospaquetesnecesariosquenecesita Spamassassinparafuncionarcorrectamente. root@regocorreo:~# root@regocorreo:~# aptgetinstallspamassassin aptgetinstallspamc

Luegocrearemosungrupoconusuariosparalapartedeadministracion delservidordespam. root@regocorreo:~# groupaddspamd (Creamosungrupollamadospamd)

root@regocorreo:~# useraddgspamds/bin/falsed /var/log/spamassassinspamd (Creamosunusuariollamadospamdqueseramiembrodelgrupospamd) ahorayaquetenemosungrupoconunusuario,reiniciamoselserviciode spamassassinparaquecarguelaultimaconfiguracionquerealizamos. root@regocorreo:~# /etc/init.d/spamassassinrestart

ERROR!!!Esposiblequenosaparezcaunmensajedeerrorsobreelfuncionamiento

root@regocorreo:~# default/spamassassin

SpamAssassinMailFilterDaemon:disabled,see/etc/

Estoquieredecirqueeldemonioestadeshabilitado,yporlotantono puedefuncionar. root@regocorreo:~# root@regocorreo:~# cd/etc/default/ nanospamassassin

Modificamosunalinea,quenospermitiraactivarnuestrodemonio. ENABLED=0 Modificamosel0(Desactivado)porun1(Activado) ENABLED=1 Guardamosloscambios. root@regocorreo:/etc/spamassassin# /etc/init.d/spamassassinrestart RestartingSpamAssassinMailFilterDaemon:spamd. Ahoratenemoselservicioactivoycorriendo. Ahoraloqueharemosseradarunaconfiguracionparaelsistemaanti spam,vamosalarchivoprincipladeconfiguraciondespamassassin. root@regocorreo:~# descomentamosestaslinea rewrite_headerSubject*****SPAM***** (Esteseraelencabezadoquellevaraelmensaje) report_safe1 (Ledecimosquenosmandeelcorreodespamdemaneraadjunta) required_score5.0 (EstaeslapuntuacionapartirdelacualSpamassassinreconoceraun correocomoSpamono.Pordefectovieneen5.0) Debemosdetenercuidadoconlapuntuacionqueledemosenel score. Lapuntuacionvade0a10. Silaponemosmuybajapodremostenerproblemasyaquecorreosqueno sonSPAMpodriansertratadoscomosilofueran. Silaponemosmuyaltanostomaracomocorreosbuenoloqueenrealidad esSPAM. Lapuntuacionidealseradejarloentre3.5y5.5 Ahoraagregamosunaslineas,queevitaranquelascabecerasdelosISP setomencomospam. required nano/etc/spamassassin/local.cf

bayes_ignore_headerXUpstreamSpamfilter bayes_ignore_headerXUpstreamSomethingElse ?????????????????????????????????????????????????????????????????????? Ahoracrearemoslarutadondeseencontraraeldirectoriodelas bayesianas,estaparteesdesumaimportancia bayes_path/etc/spamassassin/bayes/bayes AhoracreamosEldirectoriodondeseencontraranlasbayesianas. mkdir/etc/spamassassin/bayes Listo.Yaconestotenemoslacofiguraciondespamassassin. Ahorareiniciaremoselservicioparaquecarguelanuevaconfiguracion quehemosrealizado. root@regocorreo:~# /etc/init.d/spamassassinrestart RestartingSpamAssassinMailFilterDaemon:spamd. AhoraloqueharemosseraintegrarSPAMASSASSINconPOSTFIX Loqueharemosseraconfigurarpostfixparaqueloscorreossean analizadosporelfiltroantispam. root@regocorreo:~# cd/etc/postfix/ root@regocorreo:/etc/postfix# nanomaster.cf Aadiremoslosiguienteenlalineasenlasopcionesde smtpinetnsmtpd ocontent_filter=spamassassin:dummy Estoloquenospermitiraseraintegrarelservidorantispamcon postfix,demaneraqueloscorreosqueentrenosalganseananalizados poresteservidor. smtp.

Yalfinaldelficheroaadiremosestaslineas: spamassassinunixnnpipeuser=spamd argv=/usr/bin/spamcfe/usr/sbin/sendmailoif${sender} ${recipient}

yyaparafinalizar,reiniciamoselservidorparacomprobarquenohalla errores. root@regocorreo:/# /etc/init.d/postfixrestart

12.ANTIVIRUS
Ahorainstalaremosyconfiguraremoselservidorantivirus. ClamAVeselantivirusdecorreomasutilizadoysepuedeintegrar facilmenteconpostfix(MTA) Empezaremosentoncesbuscandoenlacachedelosrepositoriossiexiste estepaqueteparaserinstalado. root@regocorreo:~# aptcachesearchclamav

InstalaremoselservidorantivirusclamAV. root@regocorreo:~# aptgetinstallclamav

Einstalaremosunospaquetesadicionalesparaquepuedafuncionar correctamentenuestroservidorantivirusdecorreo. root@regocorreo:~# root@regocorreo:~# root@regocorreo:~# aptgetinstallclamsmtp aptgetinstall clamsmtp aptgetinstallclamavfreshclam

root@regocorreo:~# aptgetinstallclamavdocs (Esmuyimportanteinstalarladocumentacionparaclamav,yaqueestos manualesnospuedenserdemuchaayuda) AhoravamosaconfigurarelsistemaantivirusclamAV

root@regocorreo:~# nano/etc/clamsmtpd.conf (Editaremoselarchivoprincipaldeconfiguracion) Cambiaremosladireccionparaenviarloscorreos,pordefectovieneen 10025ylamodificamos . OutAddress:10026 Elpuertoenelqueescuchaelsistemaantivirus Listen:127.0.0.1:10025 Larutadondeestaelarchivodeclamd. ClamAddress:/var/run/clamav/clamd.ctl Pondremosunencabezadoparaloscorreosquehayansidoanalizados. Header:XAVChecked:ClamAVusingClamSMTP.Porporcionadopor LucasCorp.

Esteseralalocalizacindelpid PidFile:/var/run/clamsmtp/clamsmtpd.pid Lugardondedejarlosficherostemporales TempDirectory:/var/spool/clamsmtp Elusuarioconelquelanzarlo User:clamsmtp Accinarealizarencasodedetectarvirus. VirusAction:/usr/local/bin/virusalert.sh Enesteficherocrearemosunscriptquedefiniraloqueharaelsistema

antivirusencasodedetectarunvirus. root@regocorreo:/usr/local/bin# root@regocorreo:/usr/local/bin# Ledaremospermisosaestearchivo. root@regocorreo:/usr/local/bin#

touchvirusalert.sh nanovirusalert.sh chmod744virusalert.sh

entramosaestearchivoyagregamoslasiguientesintaxis:

#!/bin/sh FROM='Sistemaantivirus<antivirus@lomu.homelinux.org>' TO=$RECIPIENTS MAILER='/usr/sbin/sendmailit' SUBJECT=`/bin/echo"Elcorreocontieneunvirus"|/usr/bin/nkfjMB` $MAILER<<EOM From:$FROM To:$TO Subject:=?ISO2022JP?B?$SUBJECT?= Sehadetectadocodigomaliciosoeneladjuntoquecontenaelcorreo. Pongaseen contactoconeladministradordesusistemaLUKASCORPORATIONsiest seguro/adequenoesunvirus,pida alapersonaqueleenvaelficheroqueporfavorlopongaenun ficherocomprimido protegidoporunacontrasea.Disculpelasmolestias. [Virus] $VIRUS [De] $SENDER [Para] $RECIPIENTS EOM exit0

EstoloqueharaseraqueencasodequeclamAVdetectealgunvirus, notificaradeinmediatoconeladministradordelared,pormediodeun correoelectronico,notificandoquehadetectadovirus,yseran almacenadosenunabovedaespecial. Laultimaconfiguracionseradecirleapostfixquetodosloscorreos entrantesysalientesseananalizadosporelsistemaantivirus,en nuestrocasoclamAV.

root@regocorreo:/# root@regocorreo:/#

cd/etc/postfix/ nanomaster.cf

yaadiremosalfinaldeestearchivolassiguienteslineas: ##FILTROANTIVIRUS
##Filtroantivirususadoporcontentfilter scanunixn16smtp osmtp_send_xforward_command=yes osmtp_enforce_tls=no #Parainyectarelcorreoapostfixunavezanalizado 127.0.0.1:10026inetnn16smtpd ocontent_filter= o receive_override_options=no_unknown_recipient_checks,no_header_body_checks osmtpd_recipient_restrictions=permit_mynetworks,reject omynetworks_style=host osmtpd_authorized_xforward_hosts=127.0.0.0/8

Ahorairemosalarchivomain.cfyagregaremosunascuantaslineasdel filtroyelescaneo. root@regocorreo:/# nano/etc/postfix/main.cf

content_filter=scan:[127.0.0.1]:10025

Reiniciamosparaquecarguenlaultimaconfiguracion. root@regocorreo:/# root@regocorreo:/# /etc/init.d/clamsmtprestart


/etc/init.d/postfixrestart

Llegadoaestepunto,yatendremosconfiguradopostfixconunsistemade seguridadcompletocomoesconantivirusyantispam. Probaremosquelosmensajesseananalizados.

Enviamosuncorreodesderegocorreohacianew3...allienelencabezado nospodremosdarcuentadequeelcorreohasidopreviamenteescaneado. ConloquepodemosdarnoscuentaquenuestroAntivirus,haanalizadoel correoantesdequepodamosabrirlo.

También podría gustarte