HOWTO Postfix amavis-new relay a través de gmail
De Gentoo Linux Wiki
| Kernel & Hardware • Red y Servicios • Portage • Relacionado con el Sistema • Servidor X • Juegos • Misceláneos |
En este mini howto veremos como configurar postfix para que filtre los mails a través de amavisd y los envíe a través de nuestra cuenta de gmail para evitar que se nos impida enviar con nuestra cuenta local, ya que muchas veces las ips dinámicas están en las black lists de los servidores de correo.
Partimos de la base de tener postfix corréctamente configurado, instalamos amavisd:
# emerge -av amavisd-new
y ahora 2 antivirus, usaremos el demonio de clamad como primer antivirus y f-prot como secundario:
# emerge -av clamav f-prot
Vayamos ahora a la configuración de postfix añadimos las siguientes líneas en main.cf:
# nano -w /etc/postfix/main.cf
##filtro spam y virus content_filter=smtp-amavis:[localhost]:10024 ## TLS/SSL smtp_use_tls = yes smtpd_use_tls = yes smtp_tls_note_starttls = yes smtpd_tls_note_starttls = yes smtpd_tls_key_file = /etc/postfix/smtpd-key.pem smtpd_tls_cert_file = /etc/postfix/smtpd.pem smtpd_tls_loglevel = 5 smtp_sasl_security_options = noanonymous smtp_sasl_tls_security_options = noanonymous #smtp_sender_dependent_authentication = yes smtp_tls_cert_file = /etc/postfix/smtpd.pem smtp_tls_key_file = /etc/postfix/smtpd-key.pem smtp_tls_policy_maps = hash:/etc/postfix/tls_policy smtpd_tls_CAfile = /etc/ssl/certs/ca-certificates.crt smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt #smtpd_client_restrictions = permit_mynetworks, reject smtpd_helo_restrictions = reject_unknown_helo_hostname smtpd_sender_restrictions = reject_unknown_sender_domain smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination smtpd_data_restrictions = reject_unauth_pipelining #check_helo_access = hash:/etc/postfix/helo_access ##GMAIL## relayhost = smtp.gmail.com smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd[/quote]
En el primer bloque le indicamos a postfix donde debe reenviar los mails para filtrarlos, en el segundo bloque TLS/SSL securizamos las comunicaciones de postfix cifrándolas, y en el bloque GMAIL indicamos que los mails deben ser enviados usando el smtp de gmail. Bien ahora tenemos que crear los certificados y el archivo de passwords para el relay de gmail. Para crear los certificados ejecutamos:
# cd /etc/postfix/ # openssl req -new -x509 -nodes -out smtpd.pem -keyout smtpd-key.pem -days 3650
Para el envio a traves de gmail creamos el archivo sasl_passwd:
# nano -w /etc/postfix/sasl_passwd
El contenido seria algo asi:
smtp.gmail.com nombrecuentagmail:password
y ejecutamos:
# postmap /etc/postfix/sasl_passwd
Ya solo queda el archivo /etc/postfix/tls_policy donde indicaremos que queremos usar tls con gmail:
# nano -w /etc/postfix/tls_policy
Añadimos:
smtp.gmail.com may
y nuevamente ejecutamos:
# postmap /etc/postfix/tls_policy
Bien ahora vamos con el archivo master.cf de postfix, debemos crear un servidor local que no use el filtro para evitar que los mensajes se queden en un bucle:
# nano -w /etc/postfix/master.cf
Y añadimos:
###Amavisd smtp-amavis unix - - n - 2 smtp -o smtp_data_done_timeout=1200 -o disable_dns_lookups=yes 127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o disable_dns_lookups=yes -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000
Echar un vistazo al archivo /etc/amavisd.conf y cambiamos los parámetros del hostname y domainname, luego buscamos la linea de clamav: " \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.sock"]," dentro del apartado "@av_scanners = " y nos aseguramos que el nombre del sock es el mismo que en el archivo de configuración de clamav /etc/clamd.conf, en este apartado yo comentaría todos los escaners menos el que vamos a usar y en el siguiente apartado "@av_scanners_backup =" descomentamos o añadimos lo siguiente:
### http://www.f-prot.com/ - backs up F-Prot Daemon ['FRISK F-Prot Antivirus', ['f-prot','f-prot.sh'], '-dumb -ai -archive -packed -server {}', [0,8], [3,6], qr/Infection: (.+)|\s+contains\s+(.+)$/ ],
y comentamos los demas si queremos. En el archivo /etc/clamd.conf descomentamos o añadimos la linea:
"AllowSupplementaryGroups yes"
y añadimos el usuario clamav al grupo de amavis:
# gpasswd -a clamav amavis
Iniciamos clamav y amavis y reiniciamos postfix.
