InicioLinuxConfigurar Qmail, Servidor de Correo.

Configurar Qmail, Servidor de Correo.

Linux10/20/2010
blue
En esta ocasión vamos a instalar un Servidor de Correo con otro MTA, anteriormente lo habíamos hecho con Postfix y luego con Axigen, ahora le toca el turno a Qmail utilizando un pack que incluye todos los paquetes que necesitamos: Qmailrocks

No voy a contarles la historia de Qmail, o por qué lo elegí, simplemente vamos a ir al grano, ya que la instalación es bastante larga..

Lo primero que tenemos que hacer es cumplir un par de requisitos (paquetes instalados):

apt-get install apache2 mysql-server php5 perl-modules patch patchutils openssl libssl-dev build-essential



Con eso ya podemos EMPEZAR..

Ahora necesitamos instalar un par de módulos de nuestro Perl, vamos a usar el queridísimo CPAN

En nuestra consola escribimos:

perl -MCPAN -e shell



Nos aparece algo parecido a esto:


cpan shell -- CPAN exploration and modules installation (v1.9205)
ReadLine support available (maybe install Bundle::CPAN or Bundle::CPANxxl?)

cpan[1]]



Allí vamos a ir escribiendo uno por vez estos comandos para ir instalando los módulos necesarios:

NOTA: (son :: DOS puntos)


install Digest::SHA1
install Digest::HMAC
install Net::DNS
install Time::HiRes
install HTML::Tagset
install HTML::Parser


Una vez que tenemos todo instalado para comenzar (todavía ni siquiera descargamos nuestro Qmail)

Creamos un directorio llamado downloads en el directorio raiz ( / )


cd /
mkdir downloads



Entramos al directorio:

cd /downloads



Descargamos Qmailrocks y luego lo descomprimimos:


wget http://www.qmailrocks.org/downloads/qmailrocks.tar.gz
tar zxvf qmailrocks.tar.gz



Vamos a editar los archivos /etc/hosts y /etc/hostname ..

nano /etc/hosts



Yo lo dejé así, ustedes como quieran (es 127.0.0.1 DOMINIO mail) el "mail" es obligatorio.


127.0.0.1 dysloke.net mail



Edito /etc/hostname

nano /etc/hostname



Y solo dejo escrito "mail" (sin comillas obviamente)


Comenzamos la instalación ejecutando el script siguiente:

/downloads/qmailrocks/scripts/install/qmr_install_linux-s1.script



Con eso iniciamos la instalación, ahora vamos a parchear varias fallas que Qmailrocks corrige..

/downloads/qmailrocks/scripts/util/qmail_big_patches.script



Ahora compilamos Qmail. Seguimos estos pasos:


cd /usr/src/qmail/qmail-1.03

make man && make setup check



Ahora lo configuramos:

./config-fast TUDOMINIO

Ej: ./config-fast dysloke.net

Luego, generamos un certificado seguro que va a usarse para encriptar el servidor con TLS,


make cert



Nos va a empezar a hacer un par de preguntas, algo así contesté yo:


Country Name (2 letter code) :AR
State or Province Name (full name) [Berkshire]:Corrientes
Locality Name (eg, city) [Newbury]:Corrientes
Organization Name (eg, company) [My Company Ltd]:dysloke.net
Organizational Unit Name (eg, section) []:mail
Common Name (eg, your name or your server's hostname) []: dysloke.net
Email Address []:[email protected]




Si el certificado se instaló bien, va a generar el certificado acá: /var/qmail/control/servercert.pem y otro archivo que linkea a ese certificado en /var/qmail/control/clientcert.pem

Ahora manifestamos el propietario que utilizará estos archivos:

chown -R vpopmail:qmail /var/qmail/control/clientcert.pem /var/qmail/control/servercert.pem



Vamos a compilar ahora ucspi-tcp:

cd /usr/src/qmail/ucspi-tcp-0.88/



Le damos un make && make setup check

patch
deny from all
Options +ExecCGI
AllowOverride AuthConfig
Order deny,allow



Luego, más abajo en el mismo archivo buscamos la línea que dice ScriptAlias /cgi-bin y nos aseguramos de que quede de la siguiente manera:

ScriptAlias /cgi-bin /var/www/cgi-bin/



Guardamos, salimos y nos vamos hasta /var/www/cgi.bin/vqadmin

cd /var/www/cgi-bin/vqadmin



Editamos el archivo .htaccess

nano .htaccess



Y debería quedarnos así:


AuthType Basic
AuthUserFile /var/www/cgi-bin/vqadmin/.htpasswd
AuthName vQadmin
require valid-user
satisfy any



Hacemos que "nobody" use el .htaccess

chown nobody .htaccess



Damos permisos:

chmod 644 .htaccess



Creamos el archivo .htpasswd

htpasswd -bc /var/www/cgi-bin/vqadmin/.htpasswd admin CLAVE



Damos permisos:

chmod 644 /var/www/cgi-bin/vqadmin/.htpasswd



Reiniciamos apache:


apachectl stop
apachectl start



Y si todo salió bien, deberíamos poder ingresar vía URL.

http://IP-DEL-MAILSERVER/cgi-bin/vqadmin/vqadmin.cgi

En mi caso, uso una máquina virtual con la ip 192.168.62.63 así que ingreso a:

http://192.168.62.63/cgi-bin/vqadmin/vqadmin.cgi

Nos perdirá usuario y clave

usuario: admin
clave: la que hayan creado en el .htpasswd


Y nos muestra una interfaz:



Creamos un nuevo dominio yendo a "Add Domain"

En la parte de "Options" configuramos las cantidades de cuentas virtuales que podrá tener ese domino, los alias, los autoresponders, las listas de correo y la capacidad en bytes, lo configuramos a gusto..


Listo, ahora vamos con Maildrop un agente que filtra mensajes que vayan llegando a nuestro server..

Hacemos lo siguiente:

cd /downloads/qmailrocks



tar zxvf maildrop-1.6.3.tar.gz



cd maildrop-1.6.3



./configure --prefix=/usr/local --exec-prefix=/usr/local --enable-maildrop-uid=root --enable-maildrop-gid=vchkpw --enable-maildirquota



make && make install-strip && make install-man



Todo bien hasta ahora ? si no tiró errores .. sigamos! falta mucho todavía

Bueno, ahora empieza la parte más "linda?" donde al menos vamos a ver un par de imágenes! ..

Instalaremos Qmailadmin, un administrador con interface gráfica para crear cuentas de correo, listas de correo, fowards, robots, etc .. siempre y cuando exista el dominio creado en el anterior vqadmin

Hacemos lo siguiente:

cd /downloads/qmailrocks



tar zxvf qmailadmin-1.2.9.tar.gz



cd qmailadmin-1.2.9



./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www



make && make install-strip



Listo, si todo salió bien, deberíamos poder acceder vía browser a http://IP-DEL-SERVER/cgi-bin/qmailadmin
En mi caso: http://192.168.62.63/cgi-bin/qmailadmin

Vemos algo así (nos logueamos con los datos que creamos en vqadmin)





Creamos una nueva cuenta:





Finalizando con la instalación de Qmail .. (no se hagan ilusiones, sólo de Qmail..)

Ejecutamos este script:

/downloads/qmailrocks/scripts/finalize/linux/finalize_linux.script



Editamos este archivo: /var/qmail/supervise/qmail-pop3d/run

y donde dice "mail.example.com" lo reemplazamos por nuestro dominio.

nano /var/qmail/supervise/qmail-pop3d/run



Hacemos lo mismo con el archivo /var/qmail/supervise/qmail-smtpd/run

Abajo de todo reemplazamos con nuestro dominio.

nano /var/qmail/supervise/qmail-smtpd/run



Paramos Qmail:

qmailctl stop



Hacemos que sólo nuestro localhost sea el relay

echo '127.:allow,RELAYCLIENT="' ]] /etc/tcp.smtp



Atención, en esta parece: RELAYCLIENT= van: DOS COMILLAS DOBLES y UNA SIMPLE todo junto

Actualizamos..

qmailctl cdb



Creamos las direcciones de root, postmaster y mailer-daemon, en mi caso llevan @dysloke.net, en el suyo, sus dominios.


echo [email protected] ] /var/qmail/alias/.qmail-root
echo [email protected] ] /var/qmail/alias/.qmail-postmaster
echo [email protected] ] /var/qmail/alias/.qmail-mailer-daemon



Enlazamos:

ln -s /var/qmail/alias/.qmail-root /var/qmail/alias/.qmail-anonymous



Damos permisos:

chmod 644 /var/qmail/alias/.qmail*



Y si todo salió bien, seguimos..


Falta poco ..
Vamos a desinstalar cualquier rastro de exim4 y sendmail que hubiera existido ..

/etc/init.d/exim4 stop



cd /etc/rc2.d



mv S20exim4 K20exim4



Ahora volamos lo que haya quedado de sendmail


rm -f /usr/lib/sendmail

rm -f /usr/sbin/sendmail



Creamos unos enlaces "de mentirita":


ln -s /var/qmail/bin/sendmail /usr/lib/sendmail

ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail



Y ya que estamos si llegó a existir alguna vez postfix lo volamos:

dpkg --purge --force-depends postfix



Si todo va bien, ya deberíamos tener nuestro servidor totalmente .. vamos a probar si realmente está funcionando todo:

Ejecutamos esto:

/downloads/qmailrocks/scripts/util/qmr_inst_check



Si nos dice Congratulations, bla bla bla.. es porque somos muy buenos siguiendo un tutorial!
De lo contrario, a arrancar de nuevo ..

Paramos Qmail

qmailctl stop



Lo arrancamos:

qmailctl start



Hago un telnet al 110 para ver si funciona todo bien, debería mostrarnos algo como esto (modifiquen los datos del dominio y la clave obviamente)


Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
+OK <[email protected]]
user [email protected]
+OK
pass LA-CLAVE-DE-USTEDES
+OK
quit
+OK
Connection closed by foreign host.



Bien, funciona!

Ahora veamos con el 25 (SMTP)


telnet localhost 25

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 dysloke.net ESMTP
ehlo localhost
250-dysloke.net
250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH=LOGIN CRAM-MD5 PLAIN
250-STARTTLS
250-PIPELINING
250 8BITMIME
starttls
220 ready for tls
quit
quit
Connection closed by foreign host.
[root@somewhere control]#



Bien, funciona!


Ahora sólo nos faltaría instalar algún cliente como Squirrelmail, Roundcube o el que más nos guste, más adelante cuelgo la continuación del tutorial con Squirrelmail, Antispam y Antivirus.
Datos archivados del Taringa! original
48puntos
6,180visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

d
dysloke🇦🇷
Usuario
Puntos0
Posts32
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.