Tengo un servidor de correos en GNU/Linux CentOS que tiene los siguientes servicios levantados:
- Postfix.
- Dovecot.
- Saslauth.
- dk-filter (firmado digital de mails: DomainKeys).
- dkim-filter (firmado digital de mails: DKIM).
- bind (el dns server).
Mi problema esta en que los mails no los puedo recibir

, pero si puedo enviar mails y estos salen firmados con DKIM y DomainKeys, aparte no presento problemas con los SPF v1 y v2 a la hora de comprobación de autenticidad con los proveedores receptores (gmail, hotmail y yahoo). Pero me siento DEMASIADO LIMITADO con el simple echo de que no puedo recivir mails.
El servidor SMTP esta levantado con la finalidad de enviar mails y solo y únicamente recibir mails de 3 cuentas, las cuales las manejo como "virtuales" y todo el correo lo dirijo al "root" y a mi cuenta personal "diabliyo".
Les planeare el proceso de como creo los virtuales para ver si ustedes ven alguna anomalia:
Código:
# información del server dedicado OJO: es informacion fictisia para evitar los bots y proteger mi dominio
Hostname: server
Dominio: miservidor.com
Full Hostname: server.miservidor.com
Código:
# creando la única cuenta de usuario
shell# adduser diabliyo
# creando enlazado de cuentas en "/etc/aliases", ya que meteremos las 3 cuentas virtuales (sin /home)
# para que se asocien con root, y guardamos cambios "newaliases"
shell# nano /etc/aliases
postmaster: root
cuenta1: postmaster
cuenta2: postmaster
cuenta3: postmaster
root: diabliyo
shell# newaliases
# creando clave de autentificacion del smtp para SASL
shell# saslpasswd2 -c cuenta1
shell# saslpasswd2 -c cuenta2
shell# saslpasswd2 -c cuenta2
shell# saslpasswd2 -c diabliyo
shell# saslpasswd2 -c root
# verificamos que se dieron de alta
shell# sasldblistusers2
r...@server.miservidor.com: userPassword
cuen...@server.miservidor.com: userPassword
cuen...@server.miservidor.com: userPassword
cuen...@server.miservidor.com: userPassword
diabl...@server.miservidor.com: userPassword
Ya con esta información asumo que las cuentas de "cuenta1", "cuenta2", "cuenta3", "root" y "diabliyo".
Ahora les proporciono la informacion de mi Postfix:
/etc/postfix/master.cf --
http://pastebin.com/X3n0fAqB/etc/postfix/main.cf --
http://pastebin.com/Hiazq8NJEl proceso de postfix:
Código:
shell# ps wax|grep postfix
23644 ? Ss 0:25 /usr/libexec/postfix/master
Ahora si verifico los inbox en /var/mail.
Código:
shell# ls -l /var/mail/
-rw-rw---- 1 diabliyo mail 0 Jul 25 2010 diabliyo
-rw-rw---- 1 diabliyo mail 0 Jul 25 2010 root
Vaya los inbox estan vacios

....
Dejo la configuración del DNS (por si las moscas).
/var/names/exterior/db.miservidor.com --
http://pastebin.com/BcMeqry5Y finalmente las reglas que ejecuto en el firewall (iptables):
Código:
iptables -A INPUT -i $ETH_NIC -p tcp --dport 80 -j ACCEPT #http
iptables -A INPUT -i $ETH_NIC -p udp --dport 80 -j ACCEPT #http
iptables -A INPUT -i $ETH_NIC -p tcp --dport 22 -j ACCEPT #ssh
iptables -A INPUT -i $ETH_NIC -p udp --dport 22 -j ACCEPT #ssh
iptables -A INPUT -i $ETH_NIC -p tcp --dport 3306 -j ACCEPT # mysql
iptables -A INPUT -i $ETH_NIC -p udp --dport 3306 -j ACCEPT # mysql
iptables -A INPUT -i $ETH_NIC -p tcp --dport 25 -j ACCEPT #SMTP
iptables -A INPUT -i $ETH_NIC -p udp --dport 25 -j ACCEPT #SMTP
iptables -A INPUT -i $ETH_NIC -p tcp --dport 587 -j ACCEPT # submission
iptables -A INPUT -i $ETH_NIC -p udp --dport 587 -j ACCEPT # submission
iptables -A INPUT -i $ETH_NIC -p tcp --dport 53 -j ACCEPT #domain
iptables -A INPUT -i $ETH_NIC -p udp --dport 53 -j ACCEPT #domain
iptables -A INPUT -i $ETH_NIC -p tcp --dport 1:1024 -j DROP #cerramos
puertos privados
Despues de hacer un escaneo veo varias cosas que no me gustan

...
Escaneo interno... Como venos el puerto 25 (smtp) esta abierto y tambien el 587 (submission), que en realidad no se que hara pero hay esta :S... :
Código:
shell# nmap -sT -P0 localhost
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
80/tcp open http
110/tcp open pop3
111/tcp open rpcbind
143/tcp open imap
587/tcp open submission
953/tcp open rndc
993/tcp open imaps
995/tcp open pop3s
3306/tcp open mysql
Escaneo Externo (desde mi conexion de internet).... Como vemos el puerto 25 (smtp) que se supone debe estar abierto, pues no lo esta :S... Asumo que no es problema del firewall, ya que tengo la regla que habre el 25. Y me imagino que por esta razon los mails no me llegan

.... Pero si confirmo que el puerto 587 (submission) actua como si fuese el puerto 25 :S, me da acceso tipo SMTP.
Código:
shell# nmap -sT -P0 miservidor.com
21/tcp open ftp
22/tcp open ssh
53/tcp open domain
80/tcp open http
587/tcp open submission
3306/tcp open mysql
Finalmente probando ahora enviar un correo internamente... Pero aun asi, no veo que se reciva

...
Código:
# me logeo como root
shell$ su
Password:
# enviando mail a diabliyo
shell# mail diabliyo
Subject: hola
que onda
.
Cc:
shell#
# me deslogeo y estoy como diabiyo
shell# exit
shell$ pwd
/home/diabliyo
# checo el mail
shell$ mail
No mail for diabliyo
Y se genera el siguiente log:
http://pastebin.com/5Mr1QkuQ (observar de la linea 173 hacia abajo)