Regenerar configuración Qmail en PlesK

En ocasiones se produce algún tipo de corrupción en la configuración de qmail, para rehacer la configuración que hace plesk de qmail disponemos de una aplicación muy interesante:

# /usr/local/psa/admin/bin/mchk
Synopsis:
mchk [OPTION]
–without-spam – restore all settings except for SpamAssassin configuration
–with-spam – restore all settings
–spam-only – restore only SpamAssassin settings

Esta utilidad regenera los ficheros de los directorios /var/qmail/control, /var/qmail/users y ademas retoca los propietarios y permisos de todos los archivos de /var/qmail/mailnames. Esto resulta interesante despues de copiar a “pelo” archivos de correo, practica poco recomendable pero que en ocasiones puedes verte obligado a realizar, sobretodo cuando hay alguna catastrofe y estamos reconstruyendo a partir de deshechos.

Hay que tener en cuenta que si el volumen es alto puede tomarse su tiempo, asi que si lo ejecutas en un servidor en producción tomatelo con calma.

Como instalar Zend Optimizer en Plesk

Tal vez pueda hacer que alguien se ahorre un par de horitas instalando Zend Optimizer 3.2.2 en Plesk 8.0.1 , que ha sido el tiempo que me ha llevado a mi averiguar la forma de instalarlo correctamente, asi es que vamos a ello:

Lo primero es descargar el archivo tar.gz desde el sitio oficial para ello ejecutaremos el siguiente comando desde la shell:

# wget http://downloads.zend.com/optimizer/3.2.2/...3-x86_64.tar.gz

Una vez descargado el archivo lo descomprimimos:

# tar -zxvf ZendOptimizer-3.2.2-linux-glibc23-x86_64.tar.gz

Ya hemos extraido los archivos asi es que podemos borrar el archivo tar.gz:

# rm -rf ZendOptimizer-3.2.2-linux-glibc23-x86_64.tar.gz

Entramos en el directorio donde se encuentran los archivos de instalacion:

# cd ZendOptimizer-3.2.2-linux-glibc23-x86_64

Ejecutamos el archivo de instalacion:

# ./install.sh

Respondemos de forma adecuada a todas las preguntas que se nos hacen en el proceso de instalacion, lo cual supone aceptar todo, una vez finalizado el proceso nos dirigimos al directorio en el que se encuentra el archivo php.ini:

# cd /etc

Abrimos el archivo php.ini con un editor de texto por ejemplo vi:

# vi php.ini

Buscamos las lineas de configuracion de Zend Optimizer en el archivo php.ini, para ello escribimos el siguiente comando:

# /zend

Debemos de encontrar las siguientes lineas al final del archivo:


zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.2.2
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.2.2
zend_optimizer.version=3.2.2
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

Una vez que las hemos localizado las copiamos al portapapeles y si es necesario a un archivo de texto para no perderlas, y pasamos al modo de insercion de texto en el editor vi pulsando la tecla i, una vez en el modo texto comentamos las lineas pasando a quedar estas en el archivo php.ini de la siguiente manera:


;zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.2.2
;zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.2.2
;zend_optimizer.version=3.2.2
;zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
;zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

Salimos del modo texto pulsando la tecla escape y guardamos el archivo con el siguiente comando:


# :wq

Entramos en el directorio php.d:


# cd php.d

Usamos el editor de texto vi para crear un nuevo archivo:


# vi zend-optimizer.ini

Pegamos en el las lineas que anteriormente habiamos copiado del archivo php.ini en el archivo zend-optimizer.ini, para ello lo usual es si estas usando Putty pulsar el boton derecho del raton, lo cual hara que se pegue el contenido que tenemos copiado en el portapepeles, lueego guardamos el archivo:

# :wq

Reiniciamos apache:

# service httpd restart

Y comprobamos que tanto Ioncube como Zend Optimizer se hayan inicializado correctamente con php


# php -v

Si todo ha ido bien deberiamos de obtener algo como esto:


PHP 4.3.9 (cgi) (built: Nov 2 2006 16:40:38)
Copyright © 1997-2004 The PHP Group
Zend Engine v1.3.0, Copyright © 1998-2004 Zend Technologies
with the ionCube PHP Loader v3.1.9, Copyright © 2002-2006, by ionCube Ltd., and
with Zend Extension Manager v1.2.0, Copyright © 2003-2006, by Zend Technologies
with Zend Optimizer v3.2.2, Copyright © 1998-2006, by Zend Technologies

Y eso es todo ya tenemos Zend Optimizer instalado en nuestra maquina, espero que esta explicacion le sea de utilidad a mas de uno.

Saludos amigossss

Agregar conexiones IMAP en Plesk

Por defecto, Plesk configura el servicio imapd con los parámetros MAXPERIP a 4 y MAXDAEMONS a 40. El valor de MAXPERIP está pensado para evitar un exceso de conexiones concurrentes, pero es tan sumamente bajo, que fácilmente llenaremos las conexiones de IMAP a la que tengamos 2 o 3 usuarios con algunas cuentas. Para evitar esto, hemos de editar el valor de estas dos variables:


# vim /etc/courier-imap/imapd
MAXPERIP=16
MAXDAEMONS=80

Algo interesante que leí en Inertramblings.com sobre Thunderbird que por defecto, abre cinco conexiones contra el servidor de correo, por tanto, el número de conexiones que tenemos en Plesk originalmente es especialmente bajo, ya que, Thunderbird no puede aprovechar todas las conexiones que abre. Sin embargo, hay que ser cauto, si está limitado es precisamente para evitar abusos de memoria o cpu. Pero si es cierto que añadir más conexiones hará nuestro servidor de correo más eficiente.

Error en Qmail con demasiados procesos /var/qmail/bin/relaylock

qmail-logo

Si detectectamos en el servidor Linux con CentOS y notas que tienes muchos procesos del tipo:
/var/qmail/bin/relaylock /var/qmail/bin/qmail-smtpd /var/qmail/bin/smtp_auth /var/qmail/bin/

Es posible que el servidor no resuelva correctamente las DNS de los dominios, por lo cual el sistemas de listas negras tarda mucho en cerrarse y se acumulan los procesos.
Continuar leyendo «Error en Qmail con demasiados procesos /var/qmail/bin/relaylock»

Actualizar y corregir permisos (UIDs) en Plesk

permisos-de-archivos

permisos-de-archivos

Tal vez os haya pasado, que tras copiar contenidos desde otro servidor Plesk, sobretodo cuando se hace con el comando rsync, se desajustan los nombres de usuario y grupo que tenian originalmente. Aqui dejamos un script en bash totalmente operativo que corrige todos estos permisos. Recordar esto es solo script en bash  para Plesk, funciona en cualquiera de sus versiones de Plesk en cualquier distribucion Linux, no tiene ninguna funcionalidad en otros entornos

#!/bin/bash
# Corrige los permisos de los archivos y directorios de los dominios
cat /etc/passwd |egrep vhos > /tmp/$$
wc=`wc -l /tmp/$$ |awk ‘{ print $1 }’ `
for i in `seq 1 $wc`
do
linea=`head -$i /tmp/$$ |tail -1`
user=`echo $linea |awk -F: ‘{ print $1}’`
home=`echo $linea |awk -F: ‘{ print $6}’`
echo “$user – $home”
#corrigiendo el home
chown root.root $home
chmod 755 $home
#corrigiendo el httpdocs y demas principales
for dir in httpdocs httpsdocs cgi-bin anon_ftp
do
if [ -d $home/$dir ];then
#el directorio
chown $user.psaserv $home/$dir
chmod 750 $home/$dir
#el contenido
chown $user.psacln $home/$dir/* -R
chmod 777 $home/$dir/* -R
fi
done
for dir in statistics subdomains web_users
do
if [ -d $home/$dir ];then
chown root.psaserv $home/$dir
chmod 755 $home/$dir
if [ -d $home/$dir/httpsdocs ];then
chown $user.psaserv $home/$dir/httpsdocs
chmod 750 $home/$dir/httpsdocs
chown $user.psacln $home/$dir/httpsdocs -R
chmod 777 $home/$dir/httpsdocs -R
fi
fi
done
done