====== P3Scan ====== \t\t\t\t\t\t\t\t\t\t\t\t \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t ---- __**Advertencia**__ Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal. ---- ===== Descripción ===== P3scan es un proxy de pop3, pop3s y smtp. Es apropiado para ser colocado\\ en el firewall o proxy para proteger  la red local.\\ ===== Prerequistos ===== Montar un proxy o firewal y adicionalmente montar clamav (clamd) y spamassassin (spamd).\\ ===== Procedimiento ===== ===== A. Instalación básica ===== Busque el rpm, se consigue .. p3scan-2.3.2-1.i386.rpm\\ ===== B. Configuración ===== === 1. Vincule los templates === Haga > > ln -s p3scan-sp.mail p3scan.mail\\ > > ln -s p3scan-sp.mail p3scan.extra\\ > === 2. Adecue el p3scan.conf === Como siempre entre menos toque mas facil es que funcione. Configure el antivirus > > scannertype = clamd\\ > > scanner = 127.0.0.1:3310  o tambien se puede   > > scannertype = basic\\ > > scanner = /usr/bin/clamdscan --no-summary\\ > Configure el antispam > > checkspam\\ > > spamcheck = /usr/bin/spamc\\ Renatach para el renombre de attachments > > renattach = /usr/local/bin/renattach\\ > === 3. Configure firewall === Como siempre entre menos toque mas facil es que funcione. (Muy similar a squid) En\\ /etc/rc.d/rc.firewall.skina\\ > > /sbin/iptables -t nat -I PREROUTING -s 125.123.1.0/24 -i eth0 -d ! 172.24.1.1/24 -p tcp --dport 110 -j REDIRECT --to-port 8110\\ > > /sbin/iptables -t nat -I PREROUTING -s 125.123.1.0/24 -i eth0 -d ! 172.24.1.1/24 -p tcp --dport 995 -j REDIRECT --to-port 8110\\   ===== C. Renattach ===== Si quiere hacer algo con las extensiones como quitarlas o renombrarlas. Se consigue\\ en tar.gz (renattach-1.2.4.tar.gz). Toca estandar y se instala. Tener cuidado con el /usr/local/etc/renattach.conf . Ahi decide si borra attachements o solo\\ lo rescribe.\\   ===== Problemas ===== ==== 1. Se queda subiendo y no termina ==== - El script de arranque que viene en el rpm no esta bien, tonces toca reescribirlo ... > start() {\\ >         # Check if p3scan is already running\\ >         if [ ! -f /var/lock/subsys/p3scan ]; then\\ >             echo -n $"Starting $prog: "\\ >             # daemon /usr/sbin/p3scan &\\ >             /usr/sbin/p3scan -d > /var/log/p3scan 2>&1 &\\ >             RETVAL=$?\\ >             if [ $RETVAL -eq 0 ] ; then\\ >                 touch /var/lock/subsys/p3scan\\ >             fi\\ >             echo\\ >         fi\\ >         return $RETVAL\\ > }\\ > ==== 2. El truco Sylvania ==== Se requeria que ademas se guardara el mail con attachment despues de removerlo,\\ y que fuera enviado a un correo.\\ - Reemplace el renatach.exe  con un shell renatach.sh .. que esta anexo\\ - este salva el archivo y lo copia a una maquina remota usando scp (con llaves previamente cruzadas)\\ - En el destino con un script los pego al buzon del destino.\\ ===== Referencias ===== - http:%%//%%www.undergroundsecurity.com/p3scan/p3scanhowto.txt\\   ===== Anexos ===== -------------------------------------------------------------------------------------------------------\\ Renatach.sh  .. para reemplazar\\ -------------------------------------------------------------------------------------------------------\\ #!/bin/sh\\ #\\ # Si tiene extesion prohibida la envia al mail rechazados\\ #\\ \\ ####################################  .. variables iniciales\\ \\ inicio_prog=`date +%s`\\ NUM=$RANDOM\\ export FECHA=$NUM.$inicio_prog\\ \\ export LOGDIR="/var/log"\\ export TMPDIR="/var/tmp"\\ \\ ####################################  .. funciones\\ \\ borre_temporales(){\\         rm -f $TMPDIR/*$FECHA\\ }\\ \\ ####################################  .. salvo el correo\\ \\ #\\ ## Solo copia hasta que las lineas vacias sean 6 contadas\\ ELINE=0\\ while [[ $ELINE < 6 ]]\\ do\\   read LINE\\   echo "$LINE" >>  $TMPDIR/correo$FECHA\\   if [ "$LINE" = "" ]\\   then\\     # let ELINE=ELINE+1\\     ELINE=`echo "$ELINE + 1"  | bc`\\   else\\     ELINE=0\\   fi\\ done\\ \\ \\ ####################################  .. si es multibody\\ \\ esprohi=`cat $TMPDIR/correo$FECHA | grep -i "Content-Type:"  | \\\\         grep -i -e ".exe" -e ".pif" -e ".com" -e ".zip" -e ".rar" \\\\                 -e ".cab" -e ".arj" -e ".dll" -e ".msi" `\\ \\ if [[ $esprohi != ""  ]]; then\\   echo "From root@slicolombia.com " >$TMPDIR/correo2$FECHA\\   cat $TMPDIR/correo$FECHA >>$TMPDIR/correo2$FECHA\\   scp $TMPDIR/correo2$FECHA rechazados@slicolfalma.slicolombia.com:~rechazados/tmp/correo$FECHA\\ fi\\ \\ ####################################  .. Igual quita la extension\\ \\ cat  $TMPDIR/correo$FECHA | /usr/local/bin/renattach $@\\ \\ \\ borre_temporales()\\     ---- 15-Marzo-2006 J.E.Gomez v1.0 Primera version\\ \\ \\ \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t   \t\t\t \t\t\t \t\t\t