ORIG_DIR=`pwd`
echo

echo 'Agregando grupo "nofiles"'
    egrep -q "^nofiles:" /etc/group || groupadd -g 70 nofiles

echo 'Agregando usuario "alias"'
    egrep -q "^alias:" /etc/passwd || useradd -u 10 -g nofiles -d /var/qmail/alias alias

echo 'Agregando usuario "qmaild"'
    egrep -q "^qmaild:" /etc/passwd || useradd -u 11 -g nofiles -d /var/qmail qmaild

echo 'Agregando usuario "qmaill"'
    egrep -q "^qmaill:" /etc/passwd || useradd -u 12 -g nofiles -d /var/qmail qmaill

echo 'Agregando usuario "qmailp"'
    egrep -q "^qmailp:" /etc/passwd || useradd -u 13 -g nofiles -d /var/qmail qmailp

echo 'Agregando grupo "qmail"'
    egrep -q "^qmail:" /etc/group || groupadd -g 71 qmail

echo 'Agregando usuario "qmailq"'
    egrep -q "^qmailq:" /etc/passwd || useradd -u 14 -g qmail -d /var/qmail qmailq

echo 'Agregando usuario "qmailr"'
    egrep -q "^qmailr:" /etc/passwd || useradd -u 15 -g qmail -d /var/qmail qmailr

echo 'Agregando usuario "qmails"'
    egrep -q "^qmails:" /etc/passwd || useradd -u 16 -g qmail -d /var/qmail qmails

echo

export QMAILDIR=$ROOT/var/qmail

echo "Poniendo permisos a $QMAILDIR"
chown root.qmail    $QMAILDIR
chown alias.nofiles $QMAILDIR/alias
chown root.qmail    $QMAILDIR/{bin,boot,control,doc,man,users}
chown qmailq.qmail  $QMAILDIR/queue

chmod 755  $QMAILDIR
chmod 2755 $QMAILDIR/alias
chmod 755  $QMAILDIR/{bin,boot,control,doc,man,users}
chmod 750  $QMAILDIR/queue

# Ahora a los binarios
chown root.qmail $QMAILDIR/bin/*
chown qmailq $QMAILDIR/bin/qmail-queue
chmod 755 $QMAILDIR/bin/*
chmod 711 $QMAILDIR/bin/qmail-{clean,getpw,local,popup,pw2u,remote,rspawn,send}
chmod 711 $QMAILDIR/bin/splogger
chmod 4711 $QMAILDIR/bin/qmail-queue
chmod 700 $QMAILDIR/bin/qmail-{lspawn,newmrh,newu,start}

# Ahora el resto
chown -R root.qmail $QMAILDIR/boot/
chown -R root.qmail $QMAILDIR/doc/*
chown -R root.qmail $QMAILDIR/man/*
chmod 755 $QMAILDIR/boot/*
chmod 644 $QMAILDIR/doc/*

# /var/qmail/queue

cd $QMAILDIR/queue
chown qmails.qmail bounce info local remote
chown qmailq.qmail intd lock mess pid todo
chmod 700 bounce info intd local pid remote
chmod 750 lock mess todo

chown qmails.qmail $QMAILDIR/queue/info/*
chmod 700 $QMAILDIR/queue/info/*

chown qmails.qmail $QMAILDIR/queue/local/*
chmod 700 $QMAILDIR/queue/local/*

cd lock
chgrp qmail sendmutex trigger tcpto
chown qmails sendmutex trigger
chown qmailr tcpto
chmod 600 sendmutex
chmod 644 tcpto
chmod 622 trigger

cd $QMAILDIR/queue
chown qmailq.qmail $QMAILDIR/queue/mess/*
chmod 750 $QMAILDIR/queue/mess/*

chown qmails.qmail $QMAILDIR/queue/remote/*
chmod 700 $QMAILDIR/queue/remote/*


# Regresamos a donde estabamos
cd $ORIG_DIR


echo ======================================
echo =    Comenzando la configuracion     =
echo ======================================
echo


if [ -r $ROOT/etc/HOSTNAME ]; then
   fqdn=`cat $ROOT/etc/HOSTNAME`
else
   fqdn=`hostname`
fi

echo
echo "Ejecutando config-fast con el nombre FQDN \"$fqdn\""
echo

for cfile in me locals rcpthosts; do
   echo Agregando "$fqdn" a control/$cfile...
   touch $QMAILDIR/control/$cfile
   egrep -q "^$fqdn$" $QMAILDIR/control/$cfile || echo "$fqdn" > $QMAILDIR/control/$cfile
   chmod 644 $QMAILDIR/control/$cfile
done

( echo "$fqdn" | sed -r 's/^([^\.]*)\.([^\.]*)\./\2\./' | (
  read ddom
  echo Agregando "$ddom" a control/defaultdomain...
  touch $QMAILDIR/control/defaultdomain
  egrep -q "^$ddom$" $QMAILDIR/control/defaultdomain || echo "$ddom" > $QMAILDIR/control/defaultdomain
  chmod 644 $QMAILDIR/control/defaultdomain
) )

( echo "$fqdn" | sed -r 's/^.*\.([^\.]*)\.([^\.]*)$/\1.\2/' | (
  read pdom
  echo Agregando "$pdom" a control/plusdomain...
  touch $QMAILDIR/control/plusdomain
  egrep -q "^$pdom$" $QMAILDIR/control/plusdomain || echo "$pdom" > $QMAILDIR/control/plusdomain
  chmod 644 $QMAILDIR/control/plusdomain
) )

echo 
echo "Ahora qmail se negara a aceptar mensajes SMTP excepto para:"
echo "[$fqdn]"
echo
echo 'Asegurate de cambiar rcpthosts si agregas hosts a locals o a virtualdomains!'

####### Aqui termina el archivo "config-fast" de qmail-1.03 ####### 

# Creamos control/concurrencyincoming
echo
echo "Configurando cantidad maxima de recepciones concurrentes"
echo 20 > $QMAILDIR/control/concurrencyincoming

# Creamos alias indispensables

echo
echo "Creando alias minimos en el sistema: postmaster mailer-daemon root"
(cd $QMAILDIR/alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)
chmod 644 $QMAILDIR/alias/.qmail*

# Modificamos el esqueleto de usuarios

if [ ! -d $ROOT/etc/skel/Maildir ]; then
   echo "Creando directorio $ROOT/etc/skel/Maildir"
   $QMAILDIR/bin/maildirmake $ROOT/etc/skel/Maildir
fi

( cd usr/sbin ; rm -rf sendmail )
( cd usr/sbin ; ln -sf /var/qmail/bin/sendmail sendmail )
