Sistema Operativo ALDOS
Dezoft

Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

 Índice > Todo acerca de Linux > Redes y Servidores Nuevo tema Publicar Respuesta
 Sendmail por el puerto 587
Tema anterior Tema siguiente
   
gontzal
Publicado en 03/03/10 12:25 (Leído 10990 veces)  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Muy buenas

Tengo configurado un servicio de correo con centos 5.4 x86_64, sendmail, mailscanner, clamav, spanassassin, dovecot y squirrelmail.

Todo funcionando a la perfección, hasta que a mi isp se le ha ocurrido la genial idea de cerrar el puerto 25 y ha dado al traste con todo el sistema.

Puebas realizadas:

Telnet maquina_externa 25 no funciona
Telnet mi_maquina 25 desde una maquina de otro isp funciona y responde el servidor smtp
Telnet dominio_del_isp 25 funciona

El problema es que el call center del isp, lo unico que me dice es que tengo que sacar el correo por el puerto 587, no me dice si tiene que ir con ssl.

Voy a probar la configuración del manual de esta página para configurar sendmail y dovecot con soporte ssl/ttl a ver si con eso lo soluciono.

Agradeeira cualquier sugerencia, ya que la situación es muy delicada y los correo se acumulan en el spool :-(

gracias

un saludo

gontzal
 
Perfil
 Citar
moy
Publicado en 03/03/10 01:01  

Miembro Activo
Forum User

Inscrito: 29/11/08 Publicaciones: 263
Pues de entrada podrias pensar en buscar un nuevo proveedor y yo no lo he probado pero talvez podrias redireccionar el puerto 587 al 25 con iptables, para no tener que modificar nada, aunque tener la opcion de la seguridad de ssl/ttl siempre es bueno.
 
Perfil
 Citar
gontzal
Publicado en 03/03/10 01:35  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Es lo primero que se me ocurrio, redireccionar el puerto y salen los correos, pero los servidores destino estan escuchando en el 25, no en el 578 y me rechazan los correos :-(

Lo de cambiar de proveedor, es otra opción que tambien he contemplado, sobretodo en el caletón al ver donde estaba el problema, pero al consultar con otros proveedores, unos ya han adptado tambien la misma medida y los que no la han adoptado, no me garantizan que no la apoten en un futuro muy cercano, al parecer se ha convertido en una epidemia:-(
 
Perfil
 Citar
gontzal
Publicado en 03/03/10 01:39  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Bueno, he seguido cuidadosamente los pasos del manual, he generado las claves, he reconfigurado el sendmail.mc pero al hacer la comprobación telnet 127.0.0.1 25 me devuelve conexion refused.

He revisado cuidasosamente de nuevo toda la configuración, pero siempre obtengo la misma respuesta, que puede ser?

el shorewall no reporta ningun bloqueo, osea que no creo que sea por eso.
 
Perfil
 Citar
Eduardo Javier Duarte Cruz
Publicado en 03/03/10 04:43  

Nuevo
Forum User

Inscrito: 23/02/10 Publicaciones: 2
gontzal

Te recomiendo que habilites la opcion de envio de correo por el puerto 587 en tu configuracion de sendmail

Para hacerlo, busca la siguiente linea dentro del archivo sendmail.mc

dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea'Guiñodnl

descomenta la linea eliminando la palabra

---> dnl

que se encuentra al principio de la linea, al final debe quedarte asi

DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea'Guiñodnl

Con esta accion habras habilitado el envio de correo a traves del puerto 587

Espero te funcione
 
Perfil
 Citar
gontzal
Publicado en 03/03/10 08:23  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Es una de las directivas que dice el manual, por lo que la tengo activada, pero sigue sin funcionar :-(
 
Perfil
 Citar
Juan Gomez A.
Publicado en 03/03/10 07:02  

Miembro Activo
Forum User

Inscrito: 20/02/07 Publicaciones: 159
¿estas ocupando algun firewall o DMZ para en tu conecxion?

Tal vez ahi tengas que redireccionar del 25 al 587

saludos
 
Perfil
 Citar
gontzal
Publicado en 03/03/10 10:20  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Ya lo he probado, tampoco funciona, salen los correos de mi maquina, pero los servidores destino, rechazan la conexión, ya que escuchan en el puerto 25, no en el 587
 
Perfil
 Citar
gontzal
Publicado en 04/03/10 12:04  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Ya se me han termiando las ideas, os dejo mi sendmail.mc a ver si veis donde puede estar el error.

divert(-1)dnl
dnl #
dnl # This is the sendmail macro config file for m4. If you make changes to
dnl # /etc/mail/sendmail.mc, you will need to regenerate the
dnl # /etc/mail/sendmail.cf file by confirming that the sendmail-cf package is
dnl # installed and then performing a
dnl #
dnl # make -C /etc/mail
dnl #
include(`/usr/share/sendmail-cf/m4/cf.m4'Guiñodnl
VERSIONID(`setup for Red Hat Linux'Guiñodnl
OSTYPE(`linux'Guiñodnl
dnl #
dnl # default logging level is 9, you might want to set it higher to
dnl # debug the configuration
dnl #
dnl define(`confLOG_LEVEL', `9'Guiñodnl
dnl #
dnl # Uncomment and edit the following line if your outgoing mail needs to
dnl # be sent out through an external mail server:
dnl #
dnl define(`SMART_HOST',`smtp.your.provider'Guiño
dnl #
define(`confSMTP_LOGIN_MSG',`$j ; $b'Guiñodnl
define(`confDEF_USER_ID',``8:12''Guiñodnl
dnl define(`confAUTO_REBUILD'Guiñodnl
define(`confTO_CONNECT', `1m'Guiñodnl
define(`confTRY_NULL_MX_LIST',true)dnl
define(`confDONT_PROBE_INTERFACES',true)dnl
define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail'Guiñodnl
define(`ALIAS_FILE', `/etc/aliases'Guiñodnl
define(`STATUS_FILE', `/var/log/mail/statistics'Guiñodnl
define(`UUCP_MAILER_MAX', `2000000'Guiñodnl
define(`confUSERDB_SPEC', `/etc/mail/userdb.db'Guiñodnl
dnl # Cambio de flags a goaway para obligar la peticion de HELO
dnl # original
dnl #
dnl # define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun'Guiño
dnl #
dnl # Cambio
define(`confPRIVACY_FLAGS', `goaway'Guiñodnl
dnl #
define(`confAUTH_OPTIONS', `A'Guiñodnl
dnl #
dnl # The following allows relaying if the user authenticates, and disallows
dnl # plaintext authentication (PLAIN/LOGIN) on non-TLS links
dnl #
dnl define(`confAUTH_OPTIONS', `A p'Guiñodnl
dnl #
dnl # PLAIN is the preferred plaintext authentication method and used by
dnl # Mozilla Mail and Evolution, though Outlook Express and other MUAs do
dnl # use LOGIN. Other mechanisms should be used if the connection is not
dnl # guaranteed secure.
dnl # Please remember that saslauthd needs to be running for AUTH.
dnl #
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN'Guiñodnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN'Guiñodnl
dnl #
dnl # Rudimentary information on creating certificates for sendmail TLS:
dnl # cd /usr/share/ssl/certs; make sendmail.pem
dnl # Complete usage:
dnl # make -C /usr/share/ssl/certs usage
dnl #
define(`confCACERT_PATH',`/etc/ssl/mi_dominio.com'Guiñodnl
define(`confCACERT',`/etc/ssl/mi_dominio.com/sendmail.crt'Guiñodnl
define(`confSERVER_CERT',`/etc/ssl/mi_dominio.com/sendmail.crt'Guiñodnl
define(`confSERVER_KEY',`/etc/ssl/mi_dominio.com/sendmail.key'Guiñodnl
dnl #
dnl # This allows sendmail to use a keyfile that is shared with OpenLDAP's
dnl # slapd, which requires the file to be readble by group ldap
dnl #
dnl define(`confDONT_BLAME_SENDMAIL',`groupreadablekeyfile'Guiñodnl
dnl #
dnl define(`confTO_QUEUEWARN', `4h'Guiñodnl
dnl define(`confTO_QUEUERETURN', `5d'Guiñodnl
dnl define(`confQUEUE_LA', `12'Guiñodnl
dnl define(`confREFUSE_LA', `18'Guiñodnl
define(`confTO_IDENT', `0'Guiñodnl
dnl # Establece el numero maximo de destinatarios de un mensaje a 15
dnl #
define(`confMAX_RCPTS_PER_MESSAGE', `15'Guiñodnl
dnl #
dnl # Establece a 2 segundos el tiempo de letargo por cada destinatario
dnl # rechazado por sobrepasar el limite de destinatarios permitidos
dnl #
define(`confBAD_RCPT_THOTTLE', `2'Guiñodnl
dnl #
dnl # Limita el tamaño maximo de la cabecera de un mensaje a 16 Ks
dnl #
define(`confMAX_HEADERS_LENGTH', `16348'Guiñodnl
dnl #
dnl # Limita el tamaño maximo de un mensaje a 20 MB
dnl #
define(`confMAX_MESSAGE_SIZE', `20971520'Guiñodnl
dnl #
dnl FEATURE(delay_checks)dnl
FEATURE(`no_default_msa',`dnl'Guiñodnl
FEATURE(`smrsh',`/usr/sbin/smrsh'Guiñodnl
FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db'Guiñodnl
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db'Guiñodnl
FEATURE(redirect)dnl
FEATURE(always_add_domain)dnl
FEATURE(use_cw_file)dnl
FEATURE(use_ct_file)dnl
dnl #
dnl # The following limits the number of processes sendmail can fork to accept
dnl # incoming messages or process its message queues to 12.) sendmail refuses
dnl # to accept connections once it has reached its quota of child processes.
dnl #
define(`confMAX_DAEMON_CHILDREN', 12)dnl
dnl #
dnl # Limits the number of new connections per second. This caps the overhead
dnl # incurred due to forking new sendmail processes. May be useful against
dnl # DoS attacks or barrages of spam. (As mentioned below, a per-IP address
dnl # limit would be useful but is not available as an option at this writing.)
dnl #
define(`confCONNECTION_RATE_THROTTLE', 3)dnl
dnl #
dnl # The -t option will retry delivery if e.g. the user runs over his quota.
dnl #
FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u'Guiñodnl
FEATURE(`access_db',`hash -T<TMPF> -o /etc/mail/access.db'Guiñodnl
FEATURE(`blacklist_recipients'Guiñodnl
EXPOSED_USER(`root'Guiñodnl
dnl #
dnl # The following causes sendmail to only listen on the IPv4 loopback address
dnl # 127.0.0.1 and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA'Guiñodnl
dnl #
dnl # The following causes sendmail to additionally listen to port 587 for
dnl # mail from MUAs that authenticate. Roaming users who can't reach their
dnl # preferred sendmail daemon due to port 25 being blocked or redirected find
dnl # this useful.
dnl #
DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea'Guiñodnl
dnl #
dnl # The following causes sendmail to additionally listen to port 465, but
dnl # starting immediately in TLS mode upon connecting. Port 25 or 587 followed
dnl # by STARTTLS is preferred, but roaming clients using Outlook Express can't
dnl # do STARTTLS on ports other than 25. Mozilla Mail can ONLY use STARTTLS
dnl # and doesn't support the deprecated smtps; Evolution <1.1.1 uses smtps
dnl # when SSL is enabled-- STARTTLS support is available in version 1.1.1.
dnl #
dnl # For this to work your OpenSSL certificates must be configured.
dnl #
DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s'Guiñodnl
dnl #
dnl # The following causes sendmail to additionally listen on the IPv6 loopback
dnl # device. Remove the loopback address restriction listen to the network.
dnl #
dnl DAEMON_OPTIONS(`port=smtp,Addr=::1, Name=MTA-v6, Family=inet6'Guiñodnl
dnl #
dnl # enable both ipv6 and ipv4 in sendmail:
dnl #
dnl DAEMON_OPTIONS(`Name=MTA-v4, Family=inet, Name=MTA-v6, Family=inet6'Guiño
dnl #
dnl # We strongly recommend not accepting unresolvable domains if you want to
dnl # protect yourself from spam. However, the laptop and users on computers
dnl # that do not have 24x7 DNS do need this.
dnl #
dnl FEATURE(`accept_unresolvable_domains'Guiñodnl
dnl #
FEATURE(`relay_based_on_MX'Guiñodnl
dnl #
dnl # Also accept email sent to "localhost.localdomain" as local email.
dnl #
LOCAL_DOMAIN(`localhost.localdomain'Guiñodnl
dnl #
dnl # The following example makes mail from this host and any additional
dnl # specified domains appear to be sent from mydomain.com
dnl #
dnl MASQUERADE_AS(`mydomain.com'Guiñodnl
dnl #
dnl # masquerade not just the headers, but the envelope as well
dnl #
dnl FEATURE(masquerade_envelope)dnl
dnl #
dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com as well
dnl #
dnl FEATURE(masquerade_entire_domain)dnl
dnl #
dnl MASQUERADE_DOMAIN(localhost)dnl
dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl
dnl MASQUERADE_DOMAIN(mydomainalias.com)dnl
dnl MASQUERADE_DOMAIN(mydomain.lan)dnl
dnl FEATURE(dnsbl, `blackholes.mail-abuse.org', `Rechazado - vea http://www.mail-abuse.org/rbl/'Guiñodnl
dnl FEATURE(dnsbl, `dialups.mail-abuse.org', `Rechazado - vea http://www.mail-abuse.org/dul/'Guiñodnl
dnl FEATURE(dnsbl, `relays.mail-abuse.org', `Rechazado - vea http://work-rss.mail-abuse.org/rss/'Guiñodnl
dnl FEATURE(dnsbl, `sbl-xbl.spamhaus.org', `"550 Su IP esta en lista negra en Spamhaus - Por favor vea http://www.spamhaus.org/query/bl?ip=+"$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `bl.spamcop.net', `"550 Su IP esta en lista negra en SpamCOP - Por favor vea http://spamcop.net/bl.shtml?"$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `list.dsbl.org', `"550 Su IP esta en lista negra en DSBL - Por favor vea http://dsbl.org/listing?"$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `multihop.dsbl.org', `"550 Su IP esta en lista negra en DSBL - Por favor vea http://dsbl.org/listing?"$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `dnsbl.ahbl.org',`"550 Su IP esta en lista negra en AHBL - Por favor vea http://www.ahbl.org/tools/lookup.php?ip="$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `rhsbl.ahbl.org',`"550 Su IP esta en lista negra en AHBL - Por favor vea http://www.ahbl.org/tools/lookup.php?ip="$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `bl.csma.biz', `"550 Su IP esta en lista negra en CSMA - Por favor vea http://bl.csma.biz/cgi-bin/listing.cgi?ip="$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `dnsbl.antispam.or.id', `"550 Su IP esta en lista negra en ADNSBL - Por favor vea http://antispam.or.id/?ip="$&{client_addr}'Guiñodnl
dnl FEATURE(dnsbl, `blacklist.spambag.org', `"550 Su IP esta en lista negra en SPAMBAG - Por favor vea http://www.spambag.org/cgi-bin/spambag?query="$&{client_addr}'Guiñodnl
MAILER(smtp)dnl
MAILER(procmail)dnl
 
Perfil
 Citar
gontzal
Publicado en 05/03/10 07:05  

Miembro regular
Forum User

Inscrito: 07/05/08 Publicaciones: 75
Bueno, ya esta resuelto, no a mi gusto, pero bueno, ahora me pondre a investigar para que solo saque por smart host el correo externo, no el interno.

No se trata de autentificar nada, ni de ssl, ni tls, ni puñetas..., ya que no solo esta cerrado el 25, sino tambien el 465 la unica opción para que pueda enviar correo a traves de mi isp es que utilice su smart host, u otro smart host, pero siempre usando solo el puerto 587, sino, no me deja enviar nada.

Bien, pero ahora hay otro problema y es que las macros m4 de sendmail para centos, no funcionan adecuadamente y cuando le dices que utilice un smart host por el puerto 587, modifica el cf con el nombre del smart host, pero no modifica el puerto, osea que no funciona ni con banda de musica.

Me explico; si configuras en el sendmail.mc el smart host de esta manera

define('SMART_HOST','servidor.smart_host.com'Guiñodnl
define('RELAY_MAILER_ARGS','TCP $h 587'Guiñodnl

Cuando haces un make all se añade la primera linea al sendmail.cf, pero no la segunda, por lo que intenta conectarse por el puerto 25 y termina dando time out.

Solución, editar el sendmail.cf, no el sendmail.mc y pasarle el puerto como parametro en el apartado mrelay en la linea que pone A=TCP $h añadirle a continuación el puerto 587 y listo funcionando.

Ojo, no poner la coma despues del 587 que si no funciona, la linea tiene que quedar así:

A=TCP $h 587

Muy importante, no volver a compilar el sendmail.mc por que entonces se va todo al garete y hay que volver a editar el sendmail.cf

Muchas gracias a todos por vuestra inestimable colaboración y espero que estas indicaciones le puedan servir a alguien en el futuro.
 
Perfil
 Citar
Contenido generado en: 0,14 segundos Nuevo tema Publicar Respuesta
 Todas las horas son UTC. Hora actual 05:13 .
Tema normal Tema normal
Tema persistente Tema persistente
Tema cerrado Tema cerrado
Nueva publicación Nueva publicación
Persistente con nueva publicación Persistente con nueva publicación
Cerrado con nueva publicación Cerrado con nueva publicación
Ver publicaciones anónimas 
Usuarios anónimos pueden publicar 
Se permite HTML Filtrado 
Contenido censurado