sábado, diciembre 14, 2013

Curso de Zimbra - Capítulo III (Instalación Multiservidor de Zimbra)

Mis manuales actualizados de Zimbra (2017)
https://cloudperu.pe/manuales/listado

Si Ud. desea llevar un curso de Zimbra; puede ver mi Curso en Aula Útil https://aulautil.com/curso/online/zimbra. Clases con Videoconferencia y asistencia en tiempo real con Anydesk. Incluye Gratis 2 Servidores VPS Cloud (Firewall UTM+Zimbra) + 1 IP pública y dominio real por alumno.

Una de las funcionalidades de zimbra es que puede instalarse en modo multiservidor con lo cual nos permite el balanceo de carga y despliegue de la solución para una gran cantidad de usuarios.

En el presente capítulo configuraremos Zimbra en un entorno multiservidor
bajo el siguiente esquema:
                ---------------
               | MTA,LDAP,DNS  |  smtp.dominio.com
                ---------------
                   |     | 
                   |     |
                   |     |
              --------   -------
             |Mailbox | |Mailbox|  
             |Store   | |Store  |
             |Webmail | |Webmail| 
             |Logger  | |       | 
              --------   -------
  mailbox1.dominio.com  mailbox2.dominio.com
1.- Configuración del DNS Server
-------------------------------------------------------------------
Configuramos en el DNS Server , los registros de DNS para el dominio  
------------------------------------------------------------------- 
smtp           IN        A   192.168.10.2
mailbox1       IN        A   192.168.10.3
mailbox2       IN        A   192.168.10.4
dominio.com.  IN        MX  smtp.dominio.com.

$> service httpd stop
$> chkconfig httpd off
$> service iptables stop
$> service iptables save

$> service named restart
$> vim /etc/resolv.conf
nameserver 192.168.10.2

Comprobación de los registros DNS
$> dig MX dominio.com
$> dig smtp.dominio.com
$> dig mailbox1.dominio.com
$> dig mailbox2.dominio.com
2.- Instalación del primer servidor Zimbra (SMTP,LDAP y Proxy)
##########################################################################################
Configuración del hostname para smtp
---------------------------------------------
$> vim /etc/sysconfig/network
HOSTNAME=smtp.dominio.com
$> hostname smtp.dominio.com
$> su -

Luego, comprobar el nombre del hostname
$> hostname

Configurar la IPs de los hosts de correo
$> vim /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.10.2 smtp.dominio.com       smtp
192.168.10.3 mailbox1.dominio.com   mailbox1
192.168.10.4 mailbox2.dominio.com   mailbox2
instalar dependencias $> yum install libstdc++.i686 nc sysstat file Deshabilitar postfix $> service postfix stop $> chkconfig postfix off Deshabilitar apache $> service httpd stop $> chkconfig httpd off

Descargar Zimbra Open Source Edition
$> wget http://files2.zimbra.com/downloads/8.0.6_GA/zcs-8.0.6_GA_5922.RHEL6_64.20131203103705.tgz
$> tar -zxvf zcs-8.0.6_GA_5922.RHEL6_64.20131203103705.tgz
$> cd zcs-8.0.6_GA_5922.RHEL6_64.20131203103705

Instalación de smtp.dominio.com
$> ./install.sh --platform-override
Do you agree with the terms of the software license agreement? [N] Y

Select the packages to install

Install zimbra-ldap [Y] Y

Install zimbra-logger [N] N 

Install zimbra-mta [Y] Y

Install zimbra-snmp [Y] Y

Install zimbra-store [Y] N

Install zimbra-apache [Y] N

Install zimbra-spell [Y] N

Install zimbra-memcached [N] Y

Install zimbra-proxy [N] Y
 

Install anyway? [N] Y

The system will be modified.  Continue? [N] Y

Change domain name? [Yes] Yes
Create domain: [smtp.dominio.com] dominio.com

Address unconfigured (**) items  (? - help) 1
Select, or 'r' for previous menu [r] 4
Password for ldap admin user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] 6
Enter the number for the local timezone: [23] 11
Select, or 'r' for previous menu [r] r
Address unconfigured (**) items  (? - help) 2
Select, or 'r' for previous menu [r] 4
Password for ldap root user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] 5
Password for ldap replication user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] 6
Password for ldap Postfix user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] 7
Password for ldap Amavis user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] 8
Password for ldap Nginx user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] 9
Password for ldap BES user (min 6 characters): [dqrGZV27] alumno
Select, or 'r' for previous menu [r] r
Address unconfigured (**) items  (? - help) 3
Select, or 'r' for previous menu [r] 2
Please enter the mta authentication server hostname: smtp.dominio.com
Select, or 'r' for previous menu [r] r
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a
Save configuration data to a file? [Yes] Yes
Save config in file: [/opt/zimbra/config.7238]
The system will be modified - continue? [No] Yes



Nos sale estos mensajes, por el proxy que no encuentra mailstore,
lo solucionaremos después

WARNING
You are configuring this host as an MTA server, but the specified mailstore
used for authentication has not been configured to run the mailbox service yet.
This will cause smtp authentication to fail.

To correct this - after installing a mailstore server,
reset the zimbraMtaAuthHost attribute for this server:
/opt/zimbra/bin/zmprov -m -l ms smtp.dominio.com zimbraMtaAuthHost smtp.dominio.com

Once done, start the MTA:
zmmtactl start

Press return to continue
 Setting MTA auth host...failed.
Setting TimeZone Preference...done.
WARNING

You are configuring this host as a proxy server, but there is currently no 
mailstore to proxy.  This will cause proxy startup to fail.
Once you have installed a store server, start the proxy service:
zmproxyctl start

Press return to continue


3.- Instalación del segundo servidor: mailbox1.dominio.com
##########################################################################################
Editamos el host y el ip del host
$> vim /etc/sysconfig/network
HOSTNAME=mailbox1.dominio.com
$> hostname mailbox1.dominio.com
$> su -

Luego, comprobar el nombre del hostname
$> hostname

Configurar la IPs de los hosts de correo
$> vim /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.10.2 smtp.dominio.com       smtp
192.168.10.3 mailbox1.dominio.com   mailbox1
192.168.10.4 mailbox2.dominio.com   mailbox2

Usar como DNS server el smtp
$> vim /etc/resolv.conf
nameserver 192.168.10.2

$> service httpd stop
$> chkconfig httpd off
$> service iptables stop
$> service iptables save

instalar dependencias
$> yum install libstdc++.i686  nc sysstat file

Deshabilitar postfix
$> service postfix stop
$> chkconfig postfix off

Deshabilitar apache
$> service httpd stop
$> chkconfig httpd off

Descargar Zimbra Open Source Edition
$> wget http://files2.zimbra.com/downloads/8.0.6_GA/zcs-8.0.6_GA_5922.RHEL6_64.20131203103705.tgz
$> tar -zxvf zcs-8.0.6_GA_5922.RHEL6_64.20131203103705.tgz
$> cd zcs-8.0.6_GA_5922.RHEL6_64.20131203103705
Instalación de mailbox1.dominio.com
$> ./install.sh --platform-override Do you agree with the terms of the software license agreement? [N] Y Select the packages to install Install zimbra-ldap [Y] N Install zimbra-logger [Y] Y Install zimbra-mta [Y] N Install zimbra-snmp [Y] Y Install zimbra-store [Y] Y Install zimbra-apache [Y] Y Install zimbra-spell [Y] Y Install zimbra-memcached [N] N Install zimbra-proxy [N] N This platform is CentOS5_64 Packages found: RHEL5_64 This may or may not work. Using packages for a platform in which they were not designed for may result in an installation that is NOT usable. Your support options may be limited if you choose to continue. Install anyway? [N] Y The system will be modified. Continue? [N] Y Address unconfigured (**) items (? - help) 1 Select, or 'r' for previous menu [r] 2 Please enter the ldap server hostname: smtp.dominio.com Select, or 'r' for previous menu [r] 4 Password for ldap admin user (min 6 characters): alumno Select, or 'r' for previous menu [r] r Address unconfigured (**) items (? - help) 2 Select, or 'r' for previous menu [r] 4 Password for admin@dominio.com (min 6 characters): [W0oVBhou] alumno Select, or 'r' for previous menu [r] 9 Please enter the SMTP server hostname: smtp.dominio.com Select, or 'r' for previous menu [r] r *** CONFIGURATION COMPLETE - press 'a' to apply Select from menu, or press 'a' to apply config (? - help) a Save configuration data to a file? [Yes] Yes Save config in file: [/opt/zimbra/config.32536] Saving config in /opt/zimbra/config.32536...done. The system will be modified - continue? [No] Yes Registramos en el SMTP Server el mailbox1 (smtp.dominio.com)
Ejecutar esto en el servidor smtp (192.168.10.2)
$> /opt/zimbra/bin/zmprov -m -l ms mailbox1.dominio.com zimbraMtaAuthHost mailbox1.dominio.com
$> su - zimbra
$> zmmtactl restart
$> zmproxyctl restart
$> zmcontrol status

Actualizamos los keys del ssh en el mailbox1 para obtener los logs del smtp (mailbox1.dominio.com)
Ejecutar esto en el servidor mailbox1 (192.168.10.3)
$> su - zimbra $> zmupdateauthkeys ahora como root editar $> vim /etc/sysconfig/rsyslog SYSLOGD_options="-r -m 0" $> /etc/init.d/rsyslog restart Hacemos que el SMTP loguee al mailbox1 (smtp.dominio.com)
Ejecutar esto en el servidor smtp (192.168.10.2)
$> su - zimbra
$> zmupdateauthkeys

ahora como root ejecutar
$> /opt/zimbra/libexec/zmsyslogsetup
$> /etc/init.d/rsyslog restart 


4.- Instalación del tercer servidor: Mailbox2
#################################################################################
Editamos el host y el ip del host
$> vim /etc/sysconfig/network
HOSTNAME=mailbox2.dominio.com
$> hostname mailbox2.dominio.com
$> su -

Luego, comprobar el nombre del hostname
$> hostname

Configurar la IPs de los hosts de correo
$> vim /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.10.2 smtp.dominio.com       smtp
192.168.10.3 mailbox1.dominio.com   mailbox1
192.168.10.4 mailbox2.dominio.com   mailbox2

Usar como DNS server el smtp
$> vim /etc/resolv
nameserver 192.168.10.2

$> service postfix stop
$> chkconfig postfix off
$> service httpd stop
$> chkconfig httpd off
$> service iptables stop
$> service iptables save


instalar dependencias
$> yum install libstdc++.i686  nc sysstat file

Deshabilitar postfix
$> service postfix stop
$> chkconfig postfix off

Deshabilitar apache
$> service httpd stop
$> chkconfig httpd off

Descargar Zimbra Open Source Edition
$> wget http://files2.zimbra.com/downloads/8.0.6_GA/zcs-8.0.6_GA_5922.RHEL6_64.20131203103705.tgz
$> tar -zxvf zcs-8.0.6_GA_5922.RHEL6_64.20131203103705.tgz
$> cd zcs-8.0.6_GA_5922.RHEL6_64.20131203103705

Instalación de mailbox2.dominio.com
$> ./install.sh --platform-override
Do you agree with the terms of the software license agreement? [N] Y

Select the packages to install

Install zimbra-ldap [Y] N

Install zimbra-logger [Y] N 

Install zimbra-mta [Y] N

Install zimbra-snmp [Y] Y

Install zimbra-store [Y] Y

Install zimbra-apache [Y] Y

Install zimbra-spell [Y] Y

Install zimbra-memcached [N] N

Install zimbra-proxy [N] N


This platform is CentOS5_64
Packages found: RHEL5_64
This may or may not work.

Using packages for a platform in which they were not designed for
may result in an installation that is NOT usable. Your support
options may be limited if you choose to continue.


Install anyway? [N] Y

The system will be modified.  Continue? [N] Y

Address unconfigured (**) items  (? - help) 1
Select, or 'r' for previous menu [r] 2

Please enter the ldap server hostname: smtp.dominio.com
Select, or 'r' for previous menu [r] 4
Password for ldap admin user (min 6 characters): alumno
Select, or 'r' for previous menu [r] r
Address unconfigured (**) items  (? - help) 2

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

Password for admin@dominio.com (min 6 characters): [W0oVBhou] alumno


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

Please enter the SMTP server hostname: smtp.dominio.com

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

*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a
Save configuration data to a file? [Yes] Yes
Save config in file: [/opt/zimbra/config.32536] 
Saving config in /opt/zimbra/config.32536...done.
The system will be modified - continue? [No] Yes 

Actualizamos los keys 
$> su - zimbra
$> zmupdateauthkeys

como root ejecutar
$> /opt/zimbra/libexec/zmsyslogsetup
$> /etc/init.d/rsyslog restart 

Registramos en el SMTP Server el mailbox2 (smtp.dominio.com)
---------------------------------------------------------------------------------
Ejecutar esto en el servidor smtp (192.168.10.2)
$> /opt/zimbra/bin/zmprov -m -l ms mailbox2.dominio.com zimbraMtaAuthHost mailbox2.dominio.com $> su - zimbra $> zmmtactl restart $> zmproxyctl restart $> zmupdateauthkeys Actualizamos los keys de mailbox1 ---------------------------------------------------------------------------------
Ejecutar esto en el servidor mailbox1 (192.168.10.3)
$> su - zimbra $> zmupdateauthkeys

Listo ahora solo pobramos el envío y recepción de correo de los nodos

viernes, agosto 30, 2013

Curso de Zimbra - Capítulo II (Instalación de Zimbra)

Mis manuales actualizados de Zimbra (2017)
https://cloudperu.pe/manuales/listado

Si Ud. desea llevar un curso de Zimbra; puede ver mi Curso en Aula Útil https://aulautil.com/curso/online/zimbra. Clases con Videoconferencia y asistencia en tiempo real con Anydesk. Incluye Gratis 2 Servidores VPS Cloud (Firewall UTM+Zimbra) + 1 IP pública y dominio real por alumno.

Instalación de Zimbra

Modificar el sudoers
$> vim /etc/sudoers

Comentar esta linea (aprox línea 55)
#Defaults    requiretty

ESC:wq!

instalar dependencias
$> yum install libstdc++.i686 libstdc++ nc sysstat file

Deshabilitar postfix
$> service postfix stop
$> chkconfig postfix off

Descomprimir el instalador de zimbra
$> su -
$> cd /root/Descargas

NetWork Edition
--------------------
$> tar -zxvf zcs-NETWORK-8.0.4_GA_XXXX.RHEL6_64.YYYYYYYYYYYYY.tgz
$> cd zcs-NETWORK-8.0.4_GA_XXXX.RHEL6_64.YYYYYYYYYYYYYYYYY

OpenSource Edition
------------------------------
$> tar -zxvf  zcs-8.0.4_GA_XXXX.RHEL6_64.YYYYYYYYYYYYYYYYYY.tgz
$> cd zcs-8.0.4_GA_XXXX.RHEL6_64.YYYYYYYYYYYYYYYY

Instalar zimbra
$> ./install.sh                     (RHEL)
$> ./install.sh --platform-override (CentOS)


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

Install zimbra-ldap [Y] Y

Install zimbra-logger [Y] Y

Install zimbra-mta [Y] Y

Install zimbra-snmp [Y] Y

Install zimbra-store [Y] Y

Install zimbra-apache [Y] Y

Install zimbra-spell [Y] Y

Install zimbra-convertd [Y] Y    

Install zimbra-memcached [N] Enter     (Y si es instalacion multinodo)

Install zimbra-proxy [N] Enter         (Y si es instalacion multinodo)

Install zimbra-archiving [N] Y     (Network Edition)

The system will be modified.  Continue? [N] Y


Change domain name? [Yes] Yes
Create domain: [mail.dominio.com] dominio.com


--------------------------- Opciones del Menu 1 -------------------------
Address unconfigured (**) items  (? - help) 1

Select, or 'r' for previous menu [r] 4
Password for ldap admin user (min 6 characters): [TVwckVm4Y] passadmin
Select, or 'r' for previous menu [r] 6
Enter the number for the local timezone: [23] 11

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



-------------------------- Opciones del Menu 2 --------------------------
Address unconfigured (**) items  (? - help) 2

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

Password for ldap root user (min 6 characters): [TVwckVm4Y] passadmin

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

Password for ldap replication user (min 6 characters): [TVwckVm4Y] passadmin

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

Password for ldap Postfix user (min 6 characters): [TVwckVm4Y] passadmin

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

Password for ldap Amavis user (min 6 characters): [TVwckVm4Y] passadmin

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

Password for ldap Nginx user (min 6 characters): [TVwckVm4Y] passadmin

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

Password for ldap BES user (min 6 characters): [TVwckVm4Y] passadmin

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

--------------------------- Opciones del menu 3 ------------------------

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

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

Password for admin@dominio1.com (min 6 characters): [gpLZfFUr] passadmin

Select, or 'r' for previous menu [r] 23   (Network Edition)

Enter the name of the file that contains the license: /root/Descargas/ZCSLicense.xml  (Network Edition)

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


---------------------------- Finalizamos la instalacion -----------------------
Select from menu, or press 'a' to apply config (? - help) a
Save configuration data to a file? [Yes] Yes
Save config in file: [/opt/zimbra/config.14717]   Enter
Saving config in /opt/zimbra/config.14717...done.
The system will be modified - continue? [No] Yes



---------------------------- REINSTALAR Si la instalacion fallo --------------------------

$> su -

Network Edition
$> cd /root/Descargas/zcs-NETWORK-8.0.4_GA_XXXX.RHEL6_64.YYYYYYYYYYYYY

OpenSource Edition
$> cd /root/Descargas/zcs-8.0.4_GA_XXXX.RHEL6_64.YYYYYYYYYYYY


Desinstalar Zimbra
$> ./install.sh -u
$> rm -fR /opt/zimbra
$> ./install.sh
-----------------------------------------------------------------------------------------


Acceder al zimbra instalado con el navegador
------------------------------------------

PANEL DE ADMINISTRACION
https://mail.dominio.com:7071

usuario: admin
clave:   passadmin

WEBMAIL
http://mail.dominio.com

usuario: admin
clave:   passadmin

**** Nota, si sale error de certificados
regenerar las keys del ssh
$> /opt/zimbra/libexec/zmfixperms

como usuario zimbra
$> su - zimbra
$> zmsshkeygen
$> zmupdateauthkeys

Curso de Zimbra - Capítulo I (Requerimientos previos)

Mis manuales actualizados de Zimbra (2017)
https://cloudperu.pe/manuales/listado

Si Ud. desea llevar un curso de Zimbra; puede ver mi Curso en Aula Útil https://aulautil.com/curso/online/zimbra. Clases con Videoconferencia y asistencia en tiempo real con Anydesk. Incluye Gratis 2 Servidores VPS Cloud (Firewall UTM+Zimbra) + 1 IP pública y dominio real por alumno.

Para instalar Zimbra requerimos previamente tener instalado un Sistema Operativo soportado; para efectos de este curso asumimos que tenemos instalado CentOS 6 de 64 bits o RHEL 6 de 64 bits
Para esta guía configuraremos los siguientes parámetros
dominio: dominio.com 
host de correo: mail.dominio.com
ip del servidor: 192.168.10.2
mascara del servidor: 255.255.255.0
puerta de enlace: 192.168.10.1

Requerimientos previos a la la instalación

Para instalar Zimbra es necesario configurar de forma correcta el hostname y el DNS Server, así como la zona horaria y la hora del servidor

1.- Configuración de la zona horaria
-------------------------------------------
Nos logueamos como root y ejecutamos 
$> tzselect 
2                  Americas
37                 Peru
1                  Yes 
2.- Configuración de la hora del servidor de forma manual
----------------------------------------------------------
Verificamos la hora del sistema
$> date
mié sep 19 21:34:30 PET 2012    ---> PET zona horaria
Configuración local
$> hwclock --set --date="20120314 21:56"; date --set="20120314 21:56"
3.- Configución de la hora del servidor con un cliente NTP
-----------------------------------------------------------
Configuración de cliente
$> vim /etc/sysconfig/network
$> yum -y install ntpdate
$> ntpdate  0.br.pool.ntp.org
$> chkconfig ntpdate on
4.- Configuración del Hostname 
-----------------------------------
$> vim /etc/sysconfig/network
.
.
HOSTNAME=mail.dominio.com (modificar este valor lo demás no tocarlo)

Refrescar el nombre de host y volver a abrir un terminal
$> hostname mail.dominio.com
$> exit
$> exit
Abrir un nuevo terminal y comprobar el nuevo nombre del hostname
$> hostname
Configurar el IP del host ( ej: 192.168.10.179 )
-------------------------
$> vim /etc/hosts
127.0.0.1    localhost.localdomain  localhost
192.168.10.2 mail.dominio.com  mail
Registros de DNS
------------------------------------------------------------------------
A   Zona de dominio (ej: mail.dominio.com)
NS   Name Server (Servidores DNS del dominio)
SOA  Servidor DNS principal (Server of Authorization)
MX   Servidores de correo (Mail Exchange)
TXT  Información adicional del dominio (ej: SFP para hotmail)
CNAME  Alias de una zona de dominio (ej:  web --> www.dominio.com)  
PTR  Resolución inversa

Comprobac ión de registros DNS con dig 
------------------------------------------------------------------------
Instalar dig
$> yum -y install bind-utils

Dig tiene las siguientes Secciones

QUESTION SECTION      consulta que se está realizando
ANSWER SECTION    respuesta (si la hubiera de la consulta)
AUTHORITY SECTION   detalle de los servidores de autorización (SOA)
ADDITIONAL SECTION   información adicional de zonas y otros

Ejercicios:
Verificar la zona de dominio www.sunat.gob.pe
$> dig www.sunat.gob.pe
;; QUESTION SECTION:
;www.sunat.gob.pe.  IN A

;; ANSWER SECTION:
www.sunat.gob.pe. 6 IN A 200.37.173.230    -------> (IP asociado a la zona de dominio)

;; AUTHORITY SECTION:
pe.   107607 IN NS pe1.dnsnode.net.  -------> (Servidores DNS)
pe.   107607 IN NS quipu.rcp.net.pe.
pe.   107607 IN NS sns-pb.isc.org.

;; ADDITIONAL SECTION:
pe1.dnsnode.net. 5637 IN A 194.146.106.82
pe1.dnsnode.net. 5637 IN AAAA 2001:67c:1010:20::53
quipu.rcp.net.pe. 753 IN A 200.1.176.4


Verificar los DNS Server de sunat.gob.pe
$> dig NS sunat.gob.pe
;; QUESTION SECTION:
;sunat.gob.pe.   IN NS

;; ANSWER SECTION:
sunat.gob.pe.  179 IN NS ns1.impsat.net.pe.
sunat.gob.pe.  179 IN NS ns2.impsat.net.pe.

Verificar los servidores de correo de sunat.gob.pe
$> dig MX sunat.gob.pe
;; QUESTION SECTION:
;sunat.gob.pe.   IN MX

;; ANSWER SECTION:
sunat.gob.pe.  900 IN MX 20 ns1.sunat.gob.pe.    ---> Servidores de correo de Sunat
sunat.gob.pe.  900 IN MX 10 ns.sunat.gob.pe.     

;; AUTHORITY SECTION:
sunat.gob.pe.  96 IN NS ns1.impsat.net.pe.
sunat.gob.pe.  96 IN NS ns2.impsat.net.pe.

;; ADDITIONAL SECTION:
ns1.impsat.net.pe. 66998 IN A 200.41.96.24
ns2.impsat.net.pe. 68956 IN A 201.234.59.134


Configuración de los Registros MX 
-------------------------------------------------
Balanceo de Carga 
sunat.gob.pe.     900   IN MX 10 ns.sunat.gob.pe.
sunat.gob.pe.     900   IN MX 10 ns1.sunat.gob.pe.

Alta Disponibilidad
sunat.gob.pe.     900   IN MX 10 ns.sunat.gob.pe.
sunat. gob.pe.     900   IN MX 20 ns1.sunat.gob.pe.
---------------------------------------------------

Verificar los servidores el PTR de uno de los ips de correo de sunat.gob.pe
$> dig MX sunat.gob.pe
sunat.gob.pe.  900 IN MX 10 ns.sunat.gob.pe.     

$> dig ns.sunat.gob.pe
ns.sunat.gob.pe. 900 IN A 64.76.79.131

$> dig -x 64.76.79.131
Verificar si hay registro SPF en el dominio sunat.gob.pe
$> dig TXT sunat.gob.pe
;; QUESTION SECTION:
;sunat.gob.pe.   IN TXT

;; AUTHORITY SECTION:
sunat.gob.pe.  731 IN SOA ns1.impsat.net.pe. hostmaster.impsat.net.ar. 2011010344 10800 3600 604800 86400


Vemos que no hay registro SPF

Verificar TODOS los registros de DNS del dominio sunat.gob.pe
$> dig ANY sunat.gob.pe
;; QUESTION SECTION:
;sunat.gob.pe.   IN ANY

;; ANSWER SECTION:
sunat.gob.pe.  449 IN MX 10 ns.sunat.gob.pe.
sunat.gob.pe.  449 IN MX 20 ns1.sunat.gob.pe.

;; AUTHORITY SECTION:
pe.   106956 IN NS quipu.rcp.net.pe.
pe.   106956 IN NS sns-pb.isc.org.
pe.   106956 IN NS pe1.dnsnode.net.

;; ADDITIONAL SECTION:
ns.sunat.gob.pe. 760 IN A 64.76.79.131
pe1.dnsnode.net. 4986 IN A 194.146.106.82
pe1.dnsnode.net. 4986 IN AAAA 2001:67c:1010:20::53
quipu.rcp.net.pe. 102 IN A 200.1.176.4


Verificar si hay zona de dominio configurado para el dominio raiz
sunat.gob.pe

$> dig sunat.gob.pe
 
;; QUESTION SECTION:
;sunat.gob.pe.   IN A

;; AUTHORITY SECTION:
sunat.gob.pe.  900 IN SOA ns1.impsat.net.pe. hostmaster.impsat.net.ar. 2011010344 10800 3600 604800 86400

Vemos que no está configurado el dominio raíz como zona A 


Configuración del Servidor DNS en modo enjaulado (chroot)
--------------------------------------------------------------------
Instalación del Servidor DNS
$> yum -y install bind bind-chroot bind-utils
Para configurar el DNS interno seguimos los siguientes procedimientos
Para esto tenemos que:
- Copiar los archivos de dns al entorno chroot
- Generar la firma digital
- Copiar la firma digital al entorno chroot
- Configurar los parámetros de DNS y el dominio en el archivo principal de configuración de bind
/var/named/chroot/etc/named.conf
- Configurar los registros de dns en el archivo
/var/named/chroot/var/named/dominio.com.zone
- Configurar la resolución inversa en el archivo
/var/named/chroot/var/named/10.168.192.in-addr.arpa.zone
- Reiniciar el servidor DNS
- Configurar el dns cliente el archivo
/etc/resolv.conf apuntado a nuestra propia ip
- Hacer consultas de nuestro dominio con dig

Copiar los archivos del DNS al entorno chroot
$> cd /var/named
$> for f in named.* data dynamic slaves; do mv $f chroot/var/named/; ln -s /var/named/chroot/var/named/$f /var/named/; done
Generar la firma digital
$> rndc-confgen -a -c /etc/rndc.key
$> chown named:named /etc/rndc.key
Copiar la firma digital al entorno chroot
$> cd /etc
$> for f in named.* rndc.key; do mv $f /var/named/chroot/etc/; ln -s /var/named/chroot/etc/$f /etc/; done
Nota
----------------------------------------------------------------------------
Si se falla en algùn procedimiento en la instalación desinstalar y volver a 
instalar

$> yum erase bind bind-chroot bind-utils
$> rm -fR /var/named
$> rm -fR /etc/named*
$> rm -f /etc/rndc.key
$> yum -y install bind bind-chroot bind-utils
Configurar los parámetros de DNS y el dominio en el archivo principal de configuración de bind
/var/named/chroot/etc/named.conf
$> vim /var/named/chroot/etc/named.conf

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
// Ips en la que el demonio named escuchará las peticiones
        listen-on port 53 { 127.0.0.1; 192.168.10.2;};
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
// este parametro permite establecer quienes pueden usar el servidor DNS
        allow-query     { localhost; 192.168.10.0/24; };
// este parametro permite reenviar las consultar hacia el servidor DNS publico;
// para aquellos dominios que no se resuelven en este servidor 
        forwarders   { 8.8.8.8; 4.4.8.8; };
        forward first;
        recursion yes;

        dnssec-enable no;
        dnssec-validation no;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";
};

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

// Zona raiz por defecto
zone "." IN {
        type hint;
        file "named.ca";
};


// Zona para nuestro dominio
zone "dominio.com" { 
 type master; 
 file "dominio.com.zone";
 allow-update { none; };
};

// Zona de resolucion inversa
zone "10.168.192.in-addr.arpa" { 
 type master; 
 file "10.168.192.in-addr.arpa.zone";
 allow-update { none; };
};


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

Creando los archivo zone por los dominios configurados
$> cd /var/named/chroot/var/named
$> vim  dominio.com.zone
$TTL    86400
@                  IN SOA  @ root (
                                         42              ; serial (d. adams)
                                         3H              ; refresh
                                         15M             ; retry
                                         1W              ; expiry
                                         1D )            ; minimum
                     IN    NS             @
www                                     IN      A                       192.168.10.2
mail                                    IN      A                       192.168.10.2
web                                     IN      CNAME                   www
dominio.com.                       IN      A                       192.168.10.2
dominio.com.                       IN      MX              10      mail.dominio.com.
$> vim 10.168.192.in-addr.arpa.zone
 
$TTL 86400
@          IN   SOA      @  root (
         2006031601 ; número de serie
         28800 ; tiempo de refresco
         7200 ; tiempo entre reintentos de consulta
         604800 ; tiempo tras el cual expira la zona
         86400 ; tiempo total de vida
         )
@      IN       NS     mail.dominio.com.
2    IN     PTR     mail.dominio.com.
Reiniciar los servicios
$> service named restart
$> chkconfig named on
Nota si sale errores de permisos o selinux
------------------------------------------------
$> chgrp -R named /var/named/chroot/var/named
$> restorecon -FRvv /var/named/chroot/var/named
Consideraciones de iptables
echo "permitiendo acceso al servidor DNS Server (protocolo udp, puerto 53) desde la LAN"
iptables -A INPUT -p udp --dport 53 -s 192.168.10.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p udp --sport 53 -d 192.168.10.0/24 -m state --state ESTABLISHED,RELATED -j ACCEPT
Verificar los logs
$> tail -f /var/log/messages
Configuración del Cliente DNS
---------------------------------------------------------------
$> vim /etc/resolv.conf
search dominio.com              (Sirve para la búsqueda corta de hosts)
nameserver 192.168.10.2


$> dig dominio.com
$> dig MX dominio.com
$> dig www.google.com
Modificar los valores de DNS en la tarjeta de red
$> vim /etc/sysconfig/network-scripts/ifcfg-eth0
.
.
.
DOMAIN=dominio.com
DNS1=192.168.10.2

$> service network restart
$> cat /etc/resolv.conf
$> dig MX dominio.com
$> dig www.google.com

sábado, agosto 18, 2007

Compiz Fusion en Ubuntu Feisty con ATI

Compiz Fusion es resultado de la reunificación de los proyectos beryl y compiz, hace poco han sacado una versión de prueba (0.52) y ya se puede configurar en Feisty, asi que manos a la obra.

Los procedimientos para instalar Compiz Fusion en Ubuntu/Kubuntu/Xubuntu Feisty y tratar de no morir (cualquier cosa puede pasar con ATI), en el intento, son:
1.- Configurar el driver de la tarjeta gráfica ATI
2.- Instalar XGL y configurar el arranque en las X
3.- Instalar Compiz Fusion y a probrar

Nota: Si ya tienes instalado y funcionando Beryl, pasa de frente al punto 3

1.- Configurar el driver de la tarjeta gráfica ATI
Ubuntu feisty tiene una nueva utilidad para configurar los drivers propietarios, que ha resultado bastante efectiva, solo tenemos que ir al menu de Sistema -> Administracion -> Gestor de controlador restringidos; ahi tenemos una opcion para configurar la tarjeta ATI (tambien sirve para Nvidia), si no lo pueden ubicar; abrir una consola y ejecutar
$> gksu -D /usr/share/applications/restricted-manager.desktop /usr/bin/restricted-manager

2.- Instalar XGL y configurar el arranque en las X
Abrimos una consola y ejecutamos
$> sudo apt-get update
$> apt-get install xserver-xgl

Para configurar el arranque de XGL creamos un archivo de arranque y una entrada en el xsession para el GDM

Archivo de arranque
Abrir una consola y ejecutar gedit, si usas kde reeplazar por kate y si usas xfce reemplazar por mousepad

Gnome
$> sudo gedit /usr/bin/startgnomexgl
#!/bin/sh
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer & sleep 2 && DISPLAY=:1
# Gnome:(como usamos Gnome pues dejamos esta línea que sigue)
exec gnome-session

Kde
$> sudo gedit /usr/bin/startkdexgl
#!/bin/sh
Xgl :1 -fullscreen -ac -accel xv:pbuffer -accel glx:pbuffer & DISPLAY=:1
exec startkde

Xfce4
$> sudo gedit /usr/bin/startxfce4xgl
#!/bin/sh
Xgl -fullscreen :1 -ac -br -accel glx:pbuffer -accel xv:pbuffer &
sleep 4
export DISPLAY=:1
exec xfce4-session

Luego le otorgamos permisos de ejecucion
$> sudo chmod 755 /usr/bin/start*xgl

Sesión de Arranque
Gnome
$> sudo gedit /usr/share/xsessions/gnomexgl.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Gnome-XGL
Exec=/usr/bin/startgnomexgl
Icon=
Type=Application

Kde
$> sudo gedit /usr/share/xsessions/kdexgl.desktop
[Desktop Entry]
Encoding=UTF-8
Name=KDE-Xgl
Comment=Start an Xgl Session
Exec=/usr/bin/startkdexgl
Icon=
Type=Application

Xfce4
$> sudo gedit /usr/share/xsessions/xfce4xgl.desktop
[Desktop Entry]
Encoding=UTF-8
Type=XSession
Exec=/usr/bin/startxfce4xgl
TryExec=startxfce4
Name=XFCE4-Xgl

Luego le otorgamos permisos de ejecucion
$> sudo chmod 755 /usr/share/xsessions/*xgl.desktop

3.- Instalar Compiz Fusion y a probrar
Hasta aqui la configuracion ha sido casi idéntica a Beryl, a partir de aquí, si tienes beryl, es hora de decirle adios :'(

Desinstalado Beryl y otras versiones de compiz.

$> sudo apt-get --purge remove beryl* emerald* compiz* libcompiz*

Comentar en el sources del apt los repositorios de beryl y/o compiz y/o treviño. Agregar los nuevos repositorios para Compiz Fusion

$> sudo gedit /etc/apt/sources.list
#Beryl Treviño unstable Repo for beryl
#deb http://download.tuxfamily.org/3v1deb feisty eyecandy suspend2

deb http://ppa.dogfood.launchpad.net/amaranth/ubuntu feisty main restricted universe multiverse

Actualizar lista de paquetes, e instalar Compiz Fusion
$> sudo apt-get update;
$> sudo apt-get install compiz-core libdecoration0 compiz compizconfig-settings-manager compiz-kde emerald emerald-themes

Ejecutar Compiz Fusion
Reiniciamos el PC elegimos en session, Gnome-XGL o KDE-Xgl o Xfce4-XGL

Presionamos la tecla Alt+F2
y saldra un diálogo para ejecutar un comando, escribimos
compiz --replace

Puede que en kde y xfce no se vea el decorador de ventanas, asi que ejecutamos nuevamente Alt+F2 y escribimos
emerald --replace

Adicionalmente en Gnome puede que no se vean bien los controles e íconos presionamos Alt+F2 y escribimos
gnome-settings-daemon

Finalmente si queremos personalizar el comportamiento y los efectos de compiz fusion buscamos en la lista de programas CompizConfig Settings Manager o ejecutamos Alt+F2 y escribimos
ccsm

En el siguiente post escribire la guía de personalización de Compiz Config, cualquier duda publiquen su comentario.

martes, junio 19, 2007

Guía de LAMP (Linux Apache PHP MySQL) para torpes III - El Editor Quanta

Vamos ahora a familiarizarnos con el editor quanta para la programación de nuestros scripts.
Para esto abrimos el editor quanta desde el menu de inicio->desarrollo->Quanta
o abrimos una consola y ejecutamos
$> quanta
Lo que vamos a hacer ahora es configurar las opciones del editor, para esto vamos a la opción Settings->Configure Editor
luego aprecerá un diálogo para configurar las opciones.
Las opciones que se configuran son:
Appareance:
- Quitar Dynamic word wrap (Opcional)
- Show line numbers
Editing:
- Quitar Show tabulators
- Tab width: 4
Open Save:
- Quitar Backup on Save-> Local files

Configurar la documentación de php en quanta.
Bajamos de la página oficial de php el manual en múltiples archivos en html
http://www.php.net/get/php_manual_es.tar.gz/from/a/mirror
Luego desempaquetamos el manual en el directorio de documentación de quanta

$> tar -zxvf php_manual_es.tar.gz
$> sudo mv html/ /usr/share/apps/quanta/doc/php

Configurar el depurador de php en quanta
Esta parte es un poco avanzada y ya no para tan torpes, pero un debugger es una muy buena herramienta para programar sin errores; algo que muchos programadores de PHP obvian al momento de hacer sus aplicaciones. Vamos a configurar quanta con soporte a DBG y xampp con soporte a Xdebug que es una extensión nativa de php para depurar los scripts.

1.- Instalar el DBG para quanta
$> sudo apt-get install kdewebdev-dbg

2.- Instalar el paquete XAMPP Development package
lo bajamos de la página de xampp
http://www.apachefriends.org/en/xampp-linux.html
y lo descomprimimos en el opt
$> sudo tar -zxvf xampp-linux-devel-1.6.2.tar.gz -C /opt

3.- Instalar los paquetes para compilar xdebug
$> sudo apt-get install gcc autoconf make automake bison flex g++ libtool re2c

4.- Bajamos la última versión de xdebug de http://xdebug.org/install.php y compilamos

$> tar -zxvf xdebug-2.0.0RC4.tgz
$> cd xdebug-2.0.0RC4
$> phpize
$> ./configure --with-php-config=/opt/lampp/bin/php-config --enable-xdebug
$> make
$> sudo make install

5.- habilitar extensión en el php.ini y agregar al final
$> sudo gedit /opt/lampp/etc/php.ini
zend_extension="/opt/lampp/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"

Reiniciar XAMPP
$> sudo su -
$> lampp restart

Verificamos la instalación de Xdebug en XAMPP, abrimos en el navegador la dirección
http://localhost/xampp/phpinfo.php
y en la parte donde sale powered by Zend 2 se ve el añadido "with Xdebug v2.0.0RC4"

Cerramos y volvemos a abrir el quanta y ya estamos listos para hacer nuestro primer proyecto en LAMP con un entorno de debug incluido, esto lo veremos en el próximo tutorial