Archive for Linux

Borrar documento con ID Editor – Taxonomy

taxonomy

==================================

delete from taxonomy where id = 167772;
delete from taxonomy where id = 403487;

El valor ID es del taxonomy

 

editor

===============

delete from document where id=144899;

El valor lo sacamos con CMS consulting

Utilizando rsync para copiar carpetas completas y excluir algunos archivos y carpetas internas

Les debe haber sucedido algunas veces que deseamos copiar carpetas enteras, pero dentro de ellas existen carpetas y archivos que no deseamos se copien. Pues bien yo lo hago con 2 comandos(cp y rsync), pero me inclino mas por rsync por ser mas rápido y mas flexible. Aqui algunos ejemplos:

1.- Exluyendo una carpeta específica

rsync -avz --exclude 'directorio1'  /src/path/ /dest/dir

donde:

a: modo de archivo

v: verbose (osea saldrá lo que hace en pantalla)

z: compress (con esta opcion rsync comprime el archivo mientras es enviada a la carpeta destino)

2.- Excluyendo multiples directorios basados en un patron

rsync -avz --exclude 'dir*'  /src/path/ /dest/dir

 

3.- Excluyendo rutas relativas

rsync -avz --exclude '/direct1/direct2/Archivo1.txt' /src/path/ /dest/dir

 

4.- Excluyendo un archivo específico

rsync -avz --exclude 'direct1/direct2/Archivo1.txt' /src/path/ /dest/dir

 

Ojo.- Este comando se parece al 3, la diferencia esta al inicio de la ruta, aqui no se pone el slesh “/”

5.- Excluyendo un tipo de archivo

rsync -avz --exclude '*.doc'  /src/path/ /dest/dir

 

6.- Excluyendo multiples archivos y carpetas

rsync -avz --exclude 'archivo1.txt' --exclude 'directorio/archivo2.txt' /src/path /dest/dir

 

Eso es todo!

Martín Lugo

 

 

 

Configurar Zimbra 8.6 para control de usuarios en Centos 7

Configurar Zimbra para control de usuarios

“Este pequeño manual NO es una copia de alguna pagina de internet, es propiedad intelectual de Martín Lugo Palmadera, ud. es libre de usarlo y distribuirlo, pero con la condición de citar la fuente…. http://martinlugo.networksolutions-peru.com”

El escenario es el siguiente:

He instalado una versión fresca Zimbra (versión 8.6) y esta funcionando al 100%, todos los usuarios envian y reciben mensajes.

Se me ha solicitado que solo algunos usuarios puedan enviar correos al exterior sin restricciones y otros solo correo local y a algunos dominios conocidos.(Tambien es recomendable poner restricciones en el Header_Checks)

(Hacer esto es con la version de nativa de postfix es simple y rapida), pero con Zimbra todo cambia, pues agregar las sentencias sobre el archivo de configuracion (main.cf) se borrará al siguiente reinicio.

Para que no suceda esto, vamos a modificar el archivo /opt/zimbra/conf/zmconfigd.cf

 

Actualizacion: Zimbra 8.6 ya no incluye la indexacion de archivos hash, por lo que si migras de una version anterior tendras problemas y te saldran errores como esto:

error: unsupported dictionary type: hash

He revisado este error y se debe a que la version de postfix ahora trae una version actualizada de este popular indexador :

[zimbra@test-app ~]$ postconf -m
cidr
environ
fail
internal
ldap
lmdb
memcache
mysql
nis
pcre
proxy
regexp
socketmap
static
tcp
texthash
unix

Si se percatan ahora trae el modulo de “texthash”. por lo que a diferencia de la versión 8.03 en nuestras variables sustituimos el valor de hash por texthash.

Paso 1: Editar el archivo “zmconfigd.cf” como root

 

#nano /opt/zimbra/conf/zmconfigd.cf

Comentar la variable

#       POSTCONF smtpd_client_restrictions              VAR zimbraMtaSmtpdClientRestrictions

 

Agregar al final de la sección MTA lo siguiente (antes de “RESTART mta):

 

POSTCONF smtpd_restriction_classes inter, local
POSTCONF inter FILE zmconfigd/postfix_restrict_inter.cf
POSTCONF local FILE zmconfigd/postfix_restrict_local.cf
POSTCONF smtpd_client_restrictions   FILE  zmconfigd/postfix_smtpd_client_restrictions

Aqui estamos creamos 2 variable inter y local (los usuarios que tengan el valor inter podran enviar correos sin restricciones y los usuarios que posean el valor local, solo podran enviar correos a algunos dominios listados en otro archivo), ademas le decimos que sus valores lo lea de los archivos ubicado dentro de la carpeta “zmconfigd” “postfix_restrict_inter.cf” y “postfix_restrict_local.cf” respectivamente. Adicionalmente si se dan cuenta comenté la variable POSTCONF smtpd_client_restrictions y luego la reescribi abajo direccionanadola a un archivo en donde pueda meter variables y coamndos a mi antojo.

Paso 2:

Modificar el archivo “smtpd_sender_restrictions.cf” :

#nano /opt/zimbra/conf/zmconfigd/smtpd_sender_restrictions.cf

Agregar las siguientes lineas al inicio:

reject_authenticated_sender_login_mismatch
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/usuarios
texthash:/opt/zimbra/conf/zmconfigd/access
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/prohibido
reject_unknown_sender_domain
reject_invalid_hostname

Luego eliminar o comentar con un # la linea

%%exact VAR:zimbraMtaSmtpdSenderRestrictions reject_authenticated_sender_login_mismatch%%

si dean cuenta esa variable ya no nos sirve pues la estamos sustituyendo por un archivo.

A mi me quedaria asi:

 
reject_authenticated_sender_login_mismatch
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/usuarios
texthash:/opt/zimbra/conf/zmconfigd/access
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/prohibido
reject_unknown_sender_domain
reject_invalid_hostname


#%%exact VAR:zimbraMtaSmtpdSenderRestrictions reject_authenticated_sender_login_mismatch%%
%%contains VAR:zimbraServiceEnabled cbpolicyd^ check_policy_service inet:localhost:%%zimbraCBPolicydBindPort%%%%
%%contains VAR:zimbraServiceEnabled amavis^ check_sender_access regexp:/opt/zimbra/postfix/conf/tag_as_originating.re%%
permit_mynetworks
permit_sasl_authenticated
permit_tls_clientcerts
%%contains VAR:zimbraServiceEnabled amavis^ check_sender_access regexp:/opt/zimbra/postfix/conf/tag_as_foreign.re%%

En el archivo “smtpd_recipient_restrictions.cf” Agregar la siguiente linea debajo de “permit_mynetworks”

#nano /opt/zimbra/conf/zmconfigd/smtpd_recipient_restrictions.cf
permit_mynetworks
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/usuarios
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/prohibido

Deberia quedar asi mas o menos:

%%contains VAR:zimbraMtaRestriction check_client_access lmdb:/opt/zimbra/conf/postfix_blacklist%%
%%contains VAR:zimbraServiceEnabled cbpolicyd^ check_policy_service inet:localhost:%%zimbraCBPolicydBindPort%%%%
reject_non_fqdn_recipient
permit_sasl_authenticated
permit_mynetworks

check_sender_access texthash:/opt/zimbra/conf/zmconfigd/usuarios
check_sender_access texthash:/opt/zimbra/conf/zmconfigd/prohibido

reject_unlisted_recipient
%%exact VAR:zimbraMtaRestriction reject_invalid_helo_hostname%%
%%exact VAR:zimbraMtaRestriction reject_non_fqdn_helo_hostname%%
%%exact VAR:zimbraMtaRestriction reject_non_fqdn_sender%%
%%exact VAR:zimbraMtaRestriction reject_unknown_client_hostname%%
%%exact VAR:zimbraMtaRestriction reject_unknown_reverse_client_hostname%%
%%exact VAR:zimbraMtaRestriction reject_unknown_helo_hostname%%
%%exact VAR:zimbraMtaRestriction reject_unknown_sender_domain%%
%%exact VAR:zimbraMtaRestriction reject_unverified_recipient%%
%%contains VAR:zimbraMtaRestriction check_recipient_access lmdb:/opt/zimbra/conf/postfix_recipient_access%%
%%contains VAR:zimbraMtaRestriction check_client_access lmdb:/opt/zimbra/conf/postfix_rbl_override%%
%%explode reject_rbl_client VAR:zimbraMtaRestrictionRBLs%%
%%explode reject_rhsbl_client VAR:zimbraMtaRestrictionRHSBLCs%%
%%explode reject_rhsbl_reverse_client VAR:zimbraMtaRestrictionRHSBLRCs%%
%%explode reject_rhsbl_sender VAR:zimbraMtaRestrictionRHSBLSs%%
%%contains VAR:zimbraMtaRestriction check_policy_service unix:private/policy%%
%%contains VAR:zimbraMtaRestriction check_recipient_access ldap:/opt/zimbra/conf/ldap-splitdomain.cf%%
%%exact VAR:zimbraMtaRestriction reject%%
permit

 

Paso 3.- Crear el archivo “usuarios” y “prohibido”:

Si nos percatamos, he ingresado también un archivo llamado “prohibido”, esto sirva para decirle a Zimbra que los dominios que coloque allí van a estar prohibidos de ser enviados

#nano /opt/zimbra/conf/zmconfigd/usuarios
pepito@mydomain.com inter
luchito@mydomain.com local
 ................

Ahora el archivo prohibido:

#nano /opt/zimbra/conf/zmconfigd/prohibido
yahoo.com.pe	reject

Paso 4.- Crear los archivos postfix_restrict_inter.cf , postfix_restrict_local.cf y postfix_smtpd_client_restrictions

#nano /opt/zimbra/conf/zmconfigd/postfix_restrict_inter.cf

y colocar esto dentro:

permit

Ahora creamos el segundo archivo:

#nano /opt/zimbra/conf/zmconfigd/postfix_restrict_local.cf

y colocar esto dentro:

check_recipient_access
texthash:/opt/zimbra/conf/zmconfigd/interno
reject

Finalmente crear el tercer archivo

#nano /opt/zimbra/conf/zmconfigd/postfix_smtpd_client_restrictions

y colocar esto dentro:

permit_mynetworks
reject_non_fqdn_recipient
texthash:/opt/zimbra/conf/zmconfigd/access
reject_rbl_client sbl.spamhaus.org

Paso 5.- Crear el archivo interno y access

Dentro de este archivo llamado “interno” vamos a colocar los dominios que queremos que envien lo usuarios restringidos

#nano /opt/zimbra/conf/zmconfigd/interno

y colocar alli los dominios que a los que solo podrá enviar mail

dominio1.com.pe      ok
dominio2.com.pe   ok

Ahora creamos el archivo Access:

#nano /opt/zimbra/conf/zmconfigd/access

colocar un espacio en blanco dentro de este archivo “access” y grabar

Paso 6.- indexar archivos “usuarios” “interno” “access”

Ingresar como usuario de Zimbra y aplicar los siguiente

#su - zimbra
Last login: Thu Feb 12 12:59:58 PET 2015 on pts/0

$ postmap conf/zmconfigd/usuarios
$ postmap conf/zmconfigd/interno
$ postmap conf/zmconfigd/access
$ postmap conf/zmconfigd/prohibido

Paso 7.- Modificar la variable mynetworks a 127.0.0.0/8 y la red interna de la empresa, esto hara que lo spammer no puedan utilizar nuestro servidor como relay, sino que el postifx solo aceptará conexiones de el mismo, previa validacion del usuario que se trata de conectar Para esto hacer lo siguiente:

#su - zimbra
$ zmprov modifyServer mail.dominio.com.pe zimbraMtaMyNetworks '127.0.0.0/8 192.168.0.0/24'
$ postfix reload

Paso 8.- Reiniciar servicios y listo!!!!!!!!!

#su - zimbra
$ zmmtactl restart

Te puede interesar Instalar Zimbra 8.6 en Centos 7 desde Cero

Instalar Zimbra 8.6 en Centos 7 desde Cero

He recibido muchos correos  de personas que tienen problemas al momento de instalar Zimbra 8.6, que aparte de ser una buena herramienta de mensajeris, sustituye con creces a muchos sistemas  como Exchange o el propio Gmail.

Para empezar, debo suponer que tienen ya instalado Centos 7 x64.

Paso 1.- Verificar que el cortafuegos este deshabilitado, el DNS funcione y no exista una version de PostFix instalada con el S.O.

Es importante verificar 3 cosas:

a) Deshabilitar el cortafuegos

# service iptables save
# service iptables stop
# chkconfig iptables off

Modificar la varialble SELINUX=disabled

# nano /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

b) La configuracion DNS debe de estar correctamente configurado:

Verificar si pueden resolver nombres como yahoo.com, etc.

c) verificar que no exista una instalacion previa de postfix, para esto ejecutar la siguiente consulta:

rpm -qa postfix

Si existe, desinstalarlo!

rpm -e postfix*

Paso 2.- Verificar la correcta configuracion del archivo Hosts

A veces he tenido problemas al momento de instalar Zimbra, me salia este mensaje

 ERROR: Installation can not proceeed.  Please fix your /etc/hosts file
  to contain:

  <ip> <FQHN> <HN>

  Where <IP> is the ip address of the host,
  <FQHN> is the FULLY QUALIFIED host name, and
  <HN> is the (optional) hostname-only portion

zimbra85-3

A pesar que he verificado que mi archivo /etc/hosts esta correctamente configurado, este mensaje persistia, por lo que hay que fijarse tambien en el archivo hostname para tenerlo adecuadamente configurado.

Por ejemplo, si en /etc/hosts tienes lo siguiente
192.168.0.17    test-app.midominio.com.pe      test-app
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

Importante, antes de continuar, leer el siguiente post, hacerlo nos ayudara a arreglar un problema de funcionamiento de servicios zmconfigd Stopped Zimbra 8.5 – Instalacion fresca – Solucion!!

Tambien deberá de tener el mismo nombre de host en el archivo /etc/hostname

zimbra85-4

de la siguiente manera:
test-app.midominio.com.pe
Pues si NO modificas este archivo el error va a persistir y no vas a saber porque.

Paso 3.-  Descargamos e instalamos Zimbra 8.6.

En este caso estoy trabajando con la version zcs-8.6.0_GA_1153.RHEL7_64.20141215151110, descargada desde http://www.zimbra.com/downloads/zimbra-collaboration-open-source .

Una vez descargada, desempaquetamos e instalamos

#tar -xzvf zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz

#cd zcs-8.6.0_GA_1153.RHEL7_64.20141215151110/

# ./install.sh

Paso 4.- Errores por paquetes no instalados

Continuamos, ………como esta instalacion de Centos 7 es fresca, no tiene muchas librerias que necesita Zimbra, por lo que al momento de validar paquetes, me sale un error y se detiene la instalacion de Zimbra. segun la imagen, no poseo el paquete nmap-cat y perl-core (MISSING)

zimbra85-5

Bien, solo queda pedirle a YUM que haga este trabajo por nosotros para instalar dichos paquetes:
yum install nmap-ncat perl-core

Le damos YES a todo MENOS A  “zimbra-proxy”   este componente  marquenlo como “N” pues si no saben manejar el proxy de Zimbra no les va a levantar la pantalla principal…… proseguimos con la instalación

zimbra85-6

 Ojo, como este equipo es un tester, el nombre de pc y dominio no son validos para validarlos por DNS publicos, por lo que en medio de este proceso me lanzaran mensajes de que el nombre no es valido y nos pide cambiar de nombre de host o dominio, a esto darle NO, para que prosiga (Ojo, si estas pensando que tu equipo ya lo vas a poner en produccion, valida el nombre en tu DNS para que no te aparesca este mensaje de error).

Paso 5. -Configurando adecuadamente los parametros.

El proceso de instalación se detendrá en una lista de opciones que es RECOMENDABLE validar. A continuacion explico las opciones y su significado:

zimbra85-7-1

Opción 1.- Configurar “Time Zone” (Opción 7), en mi caso el valor 13, vivo en Perú y la zona horaria es “America/Bogota”

Opciones del 2 al 6.- Dejarlas tal cual, solo nos indica que esos modulos estan habilitados y se instalaron sin problemas.

Opción 7.- (Zimbra-store)

Aqui es donde esta el meollo del asunto, es donde debemos configurar correctamente, si no deseamos hacerlo a mano despues (de poder se puede, pero hay que saber comandos propios de Zimbra para hacerlo). Solo a modo de ejemplo voy a modificar lo básico y escencial, el resto de opciones que no lo mencione lo puedes dejar tal cual. Para escoger UNA OPCION,  digite el numero de la opción y se desplegará un submenu para ir a la opcion específica. Por ejemplo, presionar el numero 7 y se desplegará un submenu.

  • Admin user to create: Aqui nos indica cual es el usuario administrador, dejarlo asi, la proxima que deseas ingresar al Back-end, deberas utilizar esta cuenta.
  • Admin password: Aqui hay que especificar el password de l usuario de la opcion anterior, si se dan cuenta, el valor que aparece es UNSET, osea (No Seteado), Presionar la tecla 7 y escoger cambio de Password.

En este mismo submenu, deberenos cambiar lo siguiente

10) Web server HTTP port: 8080 .- Este puerto es el que se utiliza para acceder al web mail, por ejemplo un usuario tuyo deberá de digitar http://midominio.com:8080 para acceder a su correo.
11) Web server HTTPS port: 8443 .- Similar al anterior pero poniendo puerto seguro, ejemplo : un usuario tuyo deberá de digitar http://midominio.com:8443 para acceder a su correo.
12) Web server mode: https : aqui deberian de cambiarlo, pues esta opcion si lo dejan tal cual, le estan indicando que solo se pueda ver por https los correos, cambielo a “both”, esto permitira acceder a ver los correos, tanto por el puerto 8080 y 8443.

Eso es todo dentro de la configuracion, Graben esto y continuen …. aqui el sistema va a realizar todos los pasos necesarios y dejara listo la instalacion de zimbra.

Importante y/a tener en cuenta: He colocado la opcion 10 Web server HTTP port al puerto 8080, pues en este mismo servidor me funciona el apache con una web institucional distinta a zimbra, por lo que necesitaba el puerto 80 para publicar. Pero si ese no es su caso y este servidor solo lo destinan para correo, dejar los puertos tal cual lo sugiere Zimbra.

Paso 6.- Proseguir con la instalacion.

Si todo ha salido bien, entonces estos deberian ser los enlaces para poder acceder a nuestro Zimbra recien instalado.

Para el Back-End del administrador:    https://192.168.0.17:7071/zimbraAdmin/

Para el Front End en http:  http://192.168.0.17:8080

Para el Front End en https:  https://192.168.0.17:8443

 

Les puede Interesar tambien Configurar Zimbra 8.6 para control de usuarios en Centos 7

 

zmconfigd Stopped Zimbra 8.5 – Instalacion fresca – Solucion!! – Centos 7

Acabo de instalar una version fresca de Zimbra 8.5 y me doy cuenta que el servicio zmconfigd esta parado!! voy a ver los servicios corriendo y me sale esto.

#su - zimbra
$zmcontrol status
        amavis                  Running
        antispam                Running
        antivirus               Running
        dnscache                Running
        ldap                    Running
        logger                  Running
        mailbox                 Running
        memcached               Running
        mta                     Running
        opendkim                Running
        proxy                   Running
        service webapp          Running
        snmp                    Running
        spell                   Running
        stats                   Running
        zimbra webapp           Running
        zimbraAdmin webapp      Running
        zimlet webapp           Running
        zmconfigd               Stopped

 

Bien para solucionar hice esto.

Paso 1.– revisar los log de carga del zimbra (ubicalo aqui:  /opt/zimbra/log/) ubicar el log de este servicio (zmconfigd.log)

#tail -1000 /opt/zimbra/log/zmconfigd.log

Aqui me indica que existe un error al cargar el archivo de configuracion

failed.
Starting zmconfigd.../opt/zimbra/bin/zmconfigdctl: line 94: 11346 Killed                  /opt/zimbra/libexec/zmconfigd >> ${zimbra_log_directory}/zmconfigd.log 2>&1

Ok revisamos ese archivo (Linea 94) /opt/zimbra/bin/zmconfigdctl y no encontramos gran cosa, solo esto que nos llama la atencion:

# Bug 51682 wait for the pid file to be created, then wait 30 seconds for rewrites

Es una anotacion que hicieron los programadores de zimbra.

Buscando ese bug, me doy cuenta que es un error descrito para el archivo /etc/hosts

Paso 2.- En conclusion hay que modificar la parte correspondiente al IPv6 que empieza con doble 2 puntos (desactivarlo o quitarlo). Yo lo comete y reinicie el Zimbra. Y SOLUCIONADO!!

#nano /etc/hosts
192.168.0.17    test-app.midominio.com.pe      test-app
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

Vean el detalle de ponerle “#” delante de ::1

#service network restart
#su - zimbra
$zmcontrol restart
$zmcontrol status
        amavis                  Running
        antispam                Running
        antivirus               Running
        dnscache                Running
        ldap                    Running
        logger                  Running
        mailbox                 Running
        memcached               Running
        mta                     Running
        opendkim                Running
        proxy                   Running
        service webapp          Running
        snmp                    Running
        spell                   Running
        stats                   Running
        zimbra webapp           Running
        zimbraAdmin webapp      Running
        zimlet webapp           Running
        zmconfigd               Running

Martín Lugo

Actualización 09/02/2015

Me sucedio en una instalacion que el  archivo hosts tiene la siguiente configuracion

127.0.0.1   localhost.mydomain localhost4 localhost4.localdomain4
192.168.0.115   zcspruebas.dominio.com zcspruebas

 

Si se percatan la primera linea tiene la como parte del fqdn mydomain, eso origino que el error descrito en el titulo aparesca. A pesar de haber eliminado la parte concerniente al IPv6, Me tomo 2 dias detectar que esa palabrita tenia que ser sacada. Por favor no pongan ningun nombre de dominio en la parte concerniente al localhost, en mi caso lo deje asi:

127.0.0.1   localhost localhost4 localhost4.localdomain4
192.168.0.115   zcspruebas.dominio.com zcsprueba

 

Eso es todo!!!

 

 

Migrar desde Centos 6.5 a 7.0

Importante: este artículo es muy técnico, abarca terminos propios de tecnología y procedimientos riesgosos, por lo que si no estas habituado te pido no ejecutar nada de lo que esta escrito aqui, pues podrias perder todos tus datos.

Actualizar Centos 6.5 a 7.0

a.- Instalar la herramienta preupg , para esto hay que crear un nuevo repositorio en la carpeta /etc/yum.repos.d/, por ejemplo creamos el archivo upgradetool.repo y dentro de este archivo colocamos lo siguiente:

[upg]
name=CentOS-$releasever - Upgrade Tool
baseurl=http://dev.centos.org/centos/6/upg/x86_64/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

Luego en la ventana de comando ejecutamos lo siguiente:

yum install redhat-upgrade-tool preupgrade-assistant-contents

Terminado este proceso, ejecutamos la herramienta de Pre-Migración

[root@app-linux ~]# preupg
Preupg tool doesn't do the actual upgrade.
Please ensure you have backed up your system and/or data in the event of a failed upgrade
 that would require a full re-install of the system from installation media.
Do you want to continue? y/n

Presionamos “y” y listo! esperamos que ejecute el proceso de comprobación del sistema.

Por extraño que parezca, este proceso en particular no hace más que hacerle saber de los problemas que puedan surgir durante la actualización. No lleva a cabo la actualización ni tampoco ayuda a mitigar alguna de las cuestiones que encuentre. En realidad lo que hace este proceso es verificar si el sistema y/o paquetes instalados en su servidor actual va a tener problemas a la hora de la migración, les mostrara un resultado con los paquetes instalados y una observación como “pass”, “needs_inspection” ,”notapplicable “, etc. tener cuidado con eso.

Ahora asegúrese de comenzar con la importación de la llave CentOS 7 antes de ejecutarlo, o va a fracasar. Desde el símbolo del sistema hacemos lo siguiente:

 
rpm --import http://isoredirect.centos.org/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7

Despues de esto, podemos ejecutar la herramienta real. A modo de ejemplo, el comando que utilice para actualizar correctamente mis CentOS 6.5 BASE a  CentOS 7 fue el siguiente:

/usr/bin/redhat-upgrade-tool-cli --network 7 --instrepo=http://mirror.centos.org/centos/7/os/x86_64</code>

centos7

Cuando acabe el proceso de actualización, le pedira reiniciar el Sistema Operativo. y Listo!!!

centos7-1

Despues de esto, se pide encarecidamente revisar todas las aplicaciones instaladas y que funcionen bien.

Martin Lugo

Actualizar Java – JDK (Java SE 7u65) de la version 6 a la 7 en Centos 5.5

Bien, Ultimamente algunos desarrollos que administro se han actualizado y he tenido que actualizar la version de Java JDK de la version 6 a la 7. Los pasos para actualizar son estos:

1.- Primero nos fijamos la version de java que tenemos instalada

jdk1Como veran tengo la version 6.0_24

2.- Descargamos la nueva versión  de aqui: http://www.oracle.com/technetwork/java/javase/downloads/index.html

Aqui escogemos la version última que deseamos actualizar, en mi caso: Java SE 7u65

jdk2

3.- Bien, una vez descargado, copiamos a nuestro server el archivo jdk*.*.rpm , y como lo que necesitamos es solo actualizar corremos la actualizacion con el siguiente comando:

# rpm -Uvh jdk-7u65-linux-x64.rpm

jdk3

Si se percatan la actualizacion es muy transparente y ejecuto un segundo comando “java -version” para ver que version esta corriendo en mi server…Ahora estoy con la 7.0_65…. Exito!!

4.- Finalmente, hay que decirle a la variable de entorno JAVA_HOME que su valor nuevo es la ultima versión, por lo que hay que ir al archivo “/etc/profile” y cambiar el valor por el siguiente:

JAVA_HOME="/usr/java/latest"

Reiniciamos de preferencia el servidor y ya habremos actualizado.

Es todo!

Martin Lugo P.

kernel panic – not syncing: Attempted to kill inint ! – Centos 6.5

Muerto???? te salio este error:

kernel panic - not syncing: Attempted to kill inint !
PId: 1, comm: init not tainted 2.6.32.-279-5.2.e16.x86_64 #1
Call Trace:
[<ffffffff814fd39a>] ? panic+0xa0/0a0x168
[<ffffffff81070bd2>] ? do_exit+0x862/0x870
[<ffffffff8117ccf5>] ? fput+x25/0x30
[<ffffffff81070c38>] ? do_group_exit+0x58/0xd0
[<ffffffff81070cc7>] ? sys_exit_group+0x70/0x20
[<ffffffff8100b0f2>] ? system_call_fastpath+0x16/0x1b

 

Tranquilo…. no te desesperes

 

imagen1

Bien este error me salio en un nuevo servidor que estaba instalando. por lo que investigue, se debe a un error en el Security-Enhanced  de Linux (SELINUX), que yo recuerde esto la habia desabilitado inicialmente, pero al reiniciar salto este error.

Solución:
========

Reinicia el servidor , cuando aparece el menu de caraga automatica, te da  5 segundos para presionar una tecla y entrar a modo de edición en el kernel. Ya en el módulo presionar la tecla “a”

para entrar a editar los argumentos del kernel.

imagen4

Bien, lo unico que hay que hacer es agregar al final de la linea lo siguiente: “3 selinux=O”        (cero porsiacaso, no es la vocal o)

imagen5

Luego presionar “enter”, esto hará que el sistema cargue de nuevo la consola. Ingrese al sistema y logueese como root, pero OJO no es la solución al problema, pues al reiniciar el servidor el problema persistirá.

Una vez dentro del sistema, hay que decirle que el modulo de SELINUX se deshabilite permanentemente, para esto, hacer lo siguiente:

1.- Ingresar al archivo de configuración del SELINUX  (/etc/selinux/config)

2.- Colocar en disable la variable SELINUX, tal cual muestra la imagen. (la otra variable dejarlo tal cual)

imagen6

3.-  Reiniciar el servidor

Enjoy / Disfrutar!!

Configurar Diccionario en español para el cliente de Zimbra Desktop

“Este pequeño manual NO es una copia de alguna pagina de internet, es propiedad intelectual de Martín Lugo Palmadera, ud. es libre de usarlo y distribuirlo, pero con la condición de citar la fuente…. http://martinlugo.networksolutions-peru.com”

Sucede que cuando instalamos ZIMBRA y deseamos utilizar como cliente de correo Zimbra desktop, esta viene configurado por defecto con el corrector ortográfico en Ingles, por lo que cuando escribimos un correo, todas las palabras quedan marcadas en rojo, pues el sistema no reconoce las palabras que digitamos.

Pues bien, para esto me he basado en unas instrucciones de la misma web de Zimbra (LINK)

Para los que les aburre leer en ingles y necesitan que los guie, aqui la versión en castellano y con imagenes:

Como Instalar el diccionario en Español-España

1.- Descargar el diccionario en Español a cualquier ubicación de nuestra PC de la siguiente dirección web:

2.- Descomprimir el archivo en la ubicación a donde descargamos el archivo ZIP. Al descomprimir este archivo nos mostrará 2 archivos:

diccionario_zimbra-1

3.- Copiar estos 2 archivos y dependiendo del SO a las siguientes carpetas (En mi caso Windos 7 – 64 bits)

diccionario_zimbra-2

Para otros SO aqui va las rutas:

Windows: <install>\win32\prism\xulrunner\dictionaries
MacOS: <install>/macos/prism/Prism.app/Contents/Frameworks/XUL.framework/dictionaries
Linux: <install>/linux/prism/xulrunner/dictionaries

4.- Editar el archivo user.js de las siguientes carpetas:

  • <install>/data/profile/user.js                   en mi caso es C:\Program Files (x86)\Zimbra\Zimbra Desktop\data\profile\user.js , y
  • X:/Users/***/AppData/Local/Zimbra/Zimbra Desktop/profile/user.js            en mi caso es C:\Users\mlugo\AppData\Local\Zimbra\Zimbra Desktop\profile\user.js

diccionario_zimbra-3

diccionario_zimbra-4

Se corrige la siguiente linea “spellchecker.dictionary” de la siguiente manera:

  • user_pref(“spellchecker.dictionary”, “es-ES”);

Ambos archivo deberían de quedar de la siguiente manera:

diccionario_zimbra-55.- Reiniciar Zimbra Desktop.

No basta con cerrar el programa, hay que cerrarlo desde el administrador de tareas y volver a abrirlo:

diccionario_zimbra-6

6.- Probamos el diccionario dentro del ZD.

diccionario_zimbra-7

Es todo!!!

Martín Lugo Palmadera

Configurar Zimbra 8 para control de usuarios en Centos 6.3

Configurar Zimbra para control de usuarios

“Este pequeño manual NO es una copia de alguna pagina de internet, es propiedad intelectual de Martín Lugo Palmadera, ud. es libre de usarlo y distribuirlo, pero con la condición de citar la fuente…. http://martinlugo.networksolutions-peru.com”

El escenario es el siguiente:

He instalado una versión fresca Zimbra (versión 8) y esta funcionando al 100%, todos los usuarios envian y reciben mensajes.

Se me ha solicitado que solo algunos usuarios puedan  enviar correos al exterior sin restricciones  y otros solo correo local y a algunos dominios conocidos.(Tambien es recomendable poner restricciones en el Header_Checks)

(Hacer esto es con la version de nativa de postfix es simple y rapida), pero con Zimbra todo cambia, pues agregar las sentencias sobre el archivo de configuracion (main.cf) se borrará al siguiente reinicio.

Para que no suceda esto, vamos a modificar el archivo /opt/zimbra/conf/zmconfigd.cf

Paso 1: Editar el archivo “zmconfigd.cf” como root

 

 

#nano /opt/zimbra/conf/zmconfigd.cf

 

Agregar al final del grupo MTA lo siguiente (antes de “RESTART mta):

 

POSTCONF smtpd_restriction_classes inter, local
POSTCONF inter FILE zmconfigd/postfix_restrict_inter.cf
POSTCONF local FILE zmconfigd/postfix_restrict_local.cf

Creamos 2 variable inter y local (los usuarios que tengan el valor inter podran enviar correos sin restricciones y los usuarios que posean el valor local, solo podran enviar correos a algunos dominios listados en otro archivo), ademas le decimos que sus valores lo lea de los archivos ubicado dentro de la carpeta “zmconfigd” “postfix_restrict_inter.cf” y “postfix_restrict_local.cf” respectivamente.

Paso 2:

Modificar el  archivo “smtpd_sender_restrictions.cf” :

#nano /opt/zimbra/conf/zmconfigd/smtpd_sender_restrictions.cf

Agregar las siguientes lineas al inicio:

 check_sender_access hash:/opt/zimbra/conf/zmconfigd/usuarios
 check_sender_access hash:/opt/zimbra/conf/zmconfigd/prohibido
 hash:/opt/zimbra/conf/zmconfigd/access
 reject_unknown_sender_domain
 reject_invalid_hostname

En el archivo “smtpd_recipient_restrictions.cf”  Agregar la siguiente linea debajo de “permit_mynetworks”

#nano /opt/zimbra/conf/zmconfigd/smtpd_recipient_restrictions.cf
permit_mynetworks
check_sender_access hash:/opt/zimbra/conf/zmconfigd/usuarios
check_sender_access hash:/opt/zimbra/conf/zmconfigd/prohibido

Deberia quedar asi mas o menos:

%%contains VAR:zimbraServiceEnabled cbpolicyd, check_policy_service inet:localhost:@@cbpolicyd_bind_port@@%%
reject_non_fqdn_recipient
reject_unlisted_recipient
permit_mynetworks
check_sender_access hash:/opt/zimbra/conf/zmconfigd/usuarios
check_sender_access hash:/opt/zimbra/conf/zmconfigd/prohibido
%%contains VAR:zimbraMtaRestriction reject_invalid_helo_hostname%%
%%contains VAR:zimbraMtaRestriction reject_non_fqdn_helo_hostname%%
%%contains VAR:zimbraMtaRestriction reject_non_fqdn_sender%%
%%contains VAR:zimbraMtaRestriction reject_unknown_client_hostname%%
%%contains VAR:zimbraMtaRestriction reject_unknown_helo_hostname%%
%%contains VAR:zimbraMtaRestriction reject_unknown_sender_domain%%
%%explode reject_rbl_client VAR:zimbraMtaRestrictionRBLs%%
%%contains VAR:zimbraMtaRestriction check_policy_service unix:private/policy%%
permit

 

 

 

 

 

Paso 3.- Crear el archivo “usuarios” y “prohibido”:

Si nos percatamos, he ingresado también un archivo llamado “prohibido”, esto sirva para decirle a Zimbra que los dominios que coloque allí van a estar prohibidos de ser enviados

#nano /opt/zimbra/conf/zmconfigd/usuarios
pepito@mydomain.com inter
luchito@mydomain.com local
 ................

Ahora el archivo prohibido:

#nano /opt/zimbra/conf/zmconfigd/prohibido
yahoo.com.pe	reject

Paso 4.- Crear los archivos postfix_restrict_inter.cf y postfix_restrict_local.cf

#nano /opt/zimbra/conf/zmconfigd/postfix_restrict_inter.cf

y colocar esto dentro:

permit

Ahora creamos el segundo archivo:

#nano /opt/zimbra/conf/zmconfigd/postfix_restrict_local.cf

y colocar esto dentro:

check_recipient_access
hash:/opt/zimbra/conf/zmconfigd/interno
reject

Paso 5.- Crear el archivo interno y access

Dentro de este archivo llamado “interno” vamos a colocar los dominios que queremos que envien lo usuarios restringidos

#nano /opt/zimbra/conf/zmconfigd/interno

y colocar alli los dominios que a los que solo podrá enviar mail

dominio1.com.pe      ok
dominio2.com.pe   ok

Ahora creamos el archivo Access:

#nano /opt/zimbra/conf/zmconfigd/access

colocar un espacio en blanco dentro de este archivo “access” y grabar

Paso 6.- indexar archivos “usuarios” “interno” “access”

postmap /opt/zimbra/conf/zmconfigd/usuarios
postmap /opt/zimbra/conf/zmconfigd/interno
postmap /opt/zimbra/conf/zmconfigd/access
postmap /opt/zimbra/conf/zmconfigd/prohibido

Paso 7.- Modificar la variable mynetworks a 127.0.0.0/8 y la red interna de la empresa, esto hara que lo spammer no puedan utilizar nuestro servidor como relay, sino que el postifx solo aceptará conexiones de el mismo, previa validacion del usuario que se trata de conectar Para esto hacer lo siguiente:

#su - zimbra
$ zmprov modifyServer mail.dominio.com.pe zimbraMtaMyNetworks '127.0.0.0/8 192.168.0.0/24'
$ postfix reload

Paso 8.- Reiniciar servicios y listo!!!!!!!!!

#su - zimbra
$ zmmtactl restart