Administrar las cuentas de Postfix

Existen muchos modos de administrar las cuentas de correo en Postfix
ya sea usando soporte LDAP etc, pero si queremos otra alternativa via
konsole aqui les va un pequeño script que les dara la posibilidad
de crear, modificar o eliminar facilmente las cuentas de correo...

Espero que les guste...


#!/bin/bash
# AdminMail-SKY ###
####################

Upgrade_db()
{
cat /etc/postfix/users/*.i > /etc/postfix/_usuarios_in
cat /etc/postfix/users/*.o > /etc/postfix/_usuarios_out
/etc/postfix/Update_DB.sh
}

Update_db()
{
case $2 in
-i) echo -ne "Cuenta Internacional\n"
echo -ne "$1\t\t\tinter\n" > /etc/postfix/users/$1.e
Upgrade_db
;;
*) echo -ne "Cuenta Nacional\n"
echo -ne "$1@dominio.com\t\t\tnac_in\n" > /etc/postfix/users/$1.i
echo -ne "$1@dominio.com\t\t\tnac_out\n" > /etc/postfix/users/$1.o
Upgrade_db
;;
esac
}

Del_User_db()
{
if [ -f /etc/postfix/users/$1.i ]; then
rm /etc/postfix/users/$1.i
fi
if [ -f /etc/postfix/users/$1.o ]; then
rm /etc/postfix/users/$1.o
fi
#
if [ -f /etc/postfix/users/$1.e ]; then
rm /etc/postfix/users/$1.e
fi
Upgrade_db
}

Info()
{
echo -ne "Argumento no valido...\n"
echo -ne "Sintaxis: mail_user [User] [Opcion] [Access]\n"
echo -ne "Opcion:\n"
echo -ne "[-c] - Crear usuario\n"
echo -ne "[-e] - Eliminar usuario\n"
echo -ne "[-p] - Cambiar password"
echo -ne "Access:\n"
echo -ne "[-i] - Internacional\n"
echo -ne "[Sin argumento] - Nacional\n"
}

Verify_Home_Maildir_User()
{
if [ ! -d /home/postfix/$1/Maildir ]; then
mkdir -p /home/postfix/$1/Maildir/new /home/postfix/$1/Maildir/cur /home/postfix/$1/Maildir/tmp
if [ ! -f /home/postfix/$1/.procmailrc ]; then
echo -ne "TATH=/usr/bin:/bin:/usr/local/bin:.\nMAILDIR=\$HOME/Maildir\nDEFAULT=\$MAILDIR/" > /home/postfix/$1/.procmailrc
fi
fi
chown $1 -R /home/postfix/$1
Update_db $1 $2
}

Verify_Dirs_Files_Postfix()
{

if [ ! -d /etc/postfix/users ]; then
mkdir -p /etc/postfix/users
fi

if [ ! -f /etc/postfix/access ]; then
touch /etc/postfix/access
fi

if [ ! -f /etc/postfix/_usuarios_in ]; then
touch /etc/postfix/_usuarios_in
fi

if [ ! -f /etc/postfix/_usuarios_out ]; then
touch /etc/postfix/_usuarios_out
fi

if [ ! -f /etc/postfix/_filtro_nac ]; then
echo -ne "/\@*\.cu/\t\t\tRELAY\n/^\@/\t\t\tREJECT 550 Formato no valido.\n/[!%\@].*\@/\t\t\tREJECT 550 Error Sintaxis\n/\@*/\t\t\tREJECT Esta cuenta no esta autorizada a enviar o recibir correo internacional.\n" > /etc/postfix/_filtro_nac
fi
Main $1 $2 $3
}

Main()
{
exist=`grep "^$1:" /etc/passwd`
case $2 in
-c) if [ -n "$exist" ] ; then
echo "El usuario ya existe"
Verify_Home_Maildir_User $1 $3
else
adduser --home /home/postfix/$1 --shell /bin/false $1
Verify_Home_Maildir_User $1 $3
fi
;;
-e) if [ -n "$exist" ] ; then
deluser --remove-home $1
Del_User_db $1
else
echo "El usuario no existe"
fi
;;
-p) passwd $1
;;
*) Info
;;

esac

}

Verify_Dirs_Files_Postfix $1 $2 $3

exit 0

Comentarios

te recomiendo este. Tienes

Imagen de Ascii

te recomiendo este.
http://postfixadmin.sourceforge.net/

Tienes que pasar todos tus usuarios a una base mysql. Yo lo estoy usando hace mas de 3 años, tengo 1100+ usuarios, 100+ dominios y no he ningún tenido problemas.

howto de como configurar el server de correo desde zero e integrar los usuarios en mysql con la interface web, es la configuración que estoy usando.
http://wiki.dovecot.org/HowTo/DovecotLDAPostfixAdminMySQL

salu2

se le puede agregar MailScanner?

ASCII

Habria alguna posibilidad de agregar MailScanner a esta "http://wiki.dovecot.org/HowTo/DovecotLDAPostfixAdminMySQL" super configuración?

y para abusar como se podria limitar que solo algunos usuarios puedan enviar correo hacia otros dominios y el resto solo en el dominio local?

si esto se consigue es el Howto definitivo!!! :D

si sin probelmas, de hecho

Imagen de Ascii

si sin probelmas, de hecho yo lo uso asi.
La instalacion de postfixadmin no entorpece en nada la instalacion de MailScanner.

Eso de filtrar el dominio nunca lo he hecho en el postfix (no tengo necesidad).
No me digas que siguen filtrando que unas cuentas envien a todo el mundo y otras solo a .cu

saludos

Brother las reglas son las

Brother las reglas son las reglas y si alguien esta en ese caso pues que disfrute limitando jajaja...

Salud2s...

ecualug
______________________
!!!AdminRed_Debian!!!

ecualug
______________________
!!!AdminRed_Debian!!!