User Tools

Site Tools


zz_deprecated:howto_postfix

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

zz_deprecated:howto_postfix [2018/05/17 07:10]
dodger ↷ Page moved from other:howto_postfix to deprecated:howto_postfix
zz_deprecated:howto_postfix [2019/07/18 07:17]
Line 1: Line 1:
-====== [HOWTO] Postfix+Courier+MySQL+PostfixAdmin+SpamAssassin+SASL+TLS+roundcube+Postgrey ====== 
  
-====== Descripcion ====== 
-Este pretende ser un mega-HOWTO de postfix: 
->​**Postfix + Courier IMAP + MySQL + PostfixAdmin + SpamAssassin + SASL + TLS + roundcube + Postgrey** 
- 
-====== Software ====== 
-El nombre de los paquetes dependerán de la distribución usada, por supuesto. A modo general: 
-===== Instalación Mí­nima ===== 
-Con los siguientes paquetes tendremos un servidor de correo básico pero con soporte para dominios: 
-<​code>​ 
-aptitude install mysql-client mysql-server \ 
-      ​postfix postfix-mysql \ 
-      ​courier-base courier-authdaemon courier-authlib-mysql courier-imap courier-imap-ssl courier-ssl \ 
-</​code>​ 
-===== Instalación Completa con antivirus, ssl y antispam ===== 
-Principalmente con la instalación y configuración de esta parte conseguimos un servidor eficiente. 
-<​code>​ 
-aptitude install libsasl2-modules-sql libgsasl7 libauthen-sasl-cyrus-perl \ 
-      ​spamassassin spamc postgrey ​ 
-</​code>​ 
- 
-====== Instalación Basica ====== 
-Como primer paso habrá que cerrar el firewall a todos los nuevos servicios para que nadie marranee antes de terminar la configuración. 
- 
-===== Postfix ===== 
-Editamos nuestro servidor de correo: 
-<​code>​ 
-vi /​etc/​mailname 
-</​code>​ 
-Sustituyendo el nombre por nuestro //​smpt.dominio.com//​. 
- 
-==== main.cf ==== 
-Opciones principales del fichero //main.cf// de postfix ​ (///​etc/​postfix/​main.cf//​):​ 
-^ Variable ^ Descripcion ^ 
-|<​code>​smtpd_banner = $myhostname ESMTP $mail_name</​code>​||Mensaje de bienvenida. Conviene no mostrar información acerca de distribución o versión de paquetes | 
-|<​code>#​myhostname= mail.example.com</​code>​||Comentar la variable con nuestro nombre, ya que será variable. | 
-|<​code>​myorigin = /​etc/​mailname</​code>​||Puede ser el nombre del dominio, el fichero //​mailname//​ o el nombre del smtp | 
-|<​code>​relayhost =</​code>​||Esta variable contiene nuestro **relay** (smarthost) si lo usamos o nada si emitimos los mails directamente desde nuestro servidor. | 
-|<​code>​inet_interfaces = all 
-mynetworks_style = host</​code>​||Recibimos emails desde cualquier interfaz pero solo confiamos en nuestro host. | 
-|<​code>#​ how long if undelivered before sending warning update to sender 
-delay_warning_time = 4h 
-# will it be a permanent error or temporary 
-unknown_local_recipient_reject_code = 450 
-# how long to keep message on queue before return as failed. 
-# some have 3 days, I have 16 days as I am backup server for some people 
-# whom go on holiday with their server switched off. 
-maximal_queue_lifetime = 7d 
-# max and min time in seconds between retries if connection failed 
-minimal_backoff_time = 1000s 
-maximal_backoff_time = 8000s 
-# how long to wait when servers connect before receiving rest of data 
-smtp_helo_timeout = 60s 
-# how many address can be used in one message. 
-# effective stopper to mass spammers, accidental copy in whole address list 
-# but may restrict intentional mail shots. 
-smtpd_recipient_limit = 16 
-# how many error before back off. 
-smtpd_soft_error_limit = 3 
-# how many max errors before blocking it. 
-smtpd_hard_error_limit = 12 
-</​code>​||Varias variables referentes a la cola/​descarte de mensajes |  
-|<​code>#​ require proper helo at connections 
-smtpd_helo_required = yes 
-# waste spammers time before rejecting them 
-smtpd_delay_reject = yes 
-disable_vrfy_command = yes</​code>​||Algunas restricciones referentes a la "​entrada"​ al smtp | 
-|<​code>​transport_maps = mysql:/​etc/​postfix/​mysql_virtual_transport.cf 
-virtual_alias_maps = mysql:/​etc/​postfix/​mysql_virtual_alias_maps.cf 
-virtual_gid_maps = static:5000 
-virtual_mailbox_base = /​home/​mail/​mailboxes 
-virtual_mailbox_domains = mysql:/​etc/​postfix/​mysql_virtual_domains_maps.cf 
-virtual_mailbox_limit = 51200000 
-virtual_mailbox_maps = mysql:/​etc/​postfix/​mysql_virtual_mailbox_maps.cf 
-virtual_minimum_uid = 5000 
-virtual_transport = virtual 
-virtual_uid_maps = static:5000 
-virtual_create_maildirsize = yes 
-virtual_mailbox_extended = yes 
-virtual_mailbox_limit_maps = mysql:/​etc/​postfix/​mysql_virtual_mailbox_limit_maps.cf 
-virtual_mailbox_limit_override = yes 
-virtual_maildir_limit_message = Sorry, the user's maildir has no space available in their inbox. 
-virtual_overquota_bounce = yes</​code>​||Configuración referente a mysql principalmente,​ sobre todo atención a la variable **virtual_mailbox_base** que ha de ser un directorio existente y con permisos para que postfix escriba en el mismo, lo realizamos en el siguiente paso. | 
- 
-==== Operaciones adicionales ==== 
-Generamos los alias necesarios para el correo interno, sobre todo hay que vigilar que el alias para root corresponde con un usuario real: 
-<​code>​cp /​etc/​aliases /​etc/​postfix/​aliases 
-postalias /​etc/​postfix/​aliases 
-</​code>​ 
- 
-Creación del directorio para las cuentas de correo: 
-<​code>​ 
-mkdir -p /​home/​mail/​mailboxes 
-groupadd virtual -g 5000 
-useradd virtual -u 5000 -g 5000 
-chown -R virtual:​virtual /​home/​mail/​mailboxes 
-</​code>​ 
- 
-==== Configuración postfix-mysql ==== 
-La configuración para mysql la baso en lo necesario para [[http://​postfixadmin.sourceforge.net/​|postfixadmin]] ​ 
- 
-Como se puede apreciar en las opciones de más abajo, todos los ficheros cuentan con el mismo patrón: 
-* hosts, dbname, user y password : Datos de conexion a Mysql 
-* table : Tabla de donde se obtienen los datos 
-* select_field y  where_field : datos para ejecutar la query del tipo: 
-<​code>​ 
-SELECT select_field FROM table WHERE where_field ; 
-</​code>​ 
-Postfix completa la query con algunos campos adicionales,​ por supuesto, se pueden apreciar en el "​mail.log",​ esto deberá ser el sistema de debugar qué está haciendo postfix si vemos que las cosas no funcionan. 
- 
-^ Fichero ^ Contenido ^ Descripcion ^ 
-|<​code>​vi mysql_relay_domains_maps.cf</​code>​ | <​code>​ 
-hosts = 127.0.0.1 
-dbname = postfix 
-user = postfix 
-password = password 
-table = domain 
-select_field = domain 
-where_field = domain 
-</​code>​ | Lista de relays para cada dominio | 
-|<​code>​vi mysql_virtual_alias_maps.cf</​code>​ | <​code>​ 
-hosts = 127.0.0.1 
-dbname = postfix 
-user = postfix 
-password = password 
-table = alias 
-select_field = goto 
-where_field = address 
-</​code>​| Listado de alias | 
-|<​code>​vi mysql_virtual_domains_maps.cf</​code>​ | <​code>​ 
-hosts = 127.0.0.1 
-dbname = postfix 
-user = postfix 
-password = password 
-table = domain 
-select_field = domain 
-where_field = domain 
-</​code>​ | Listado de dominios | 
-|<​code>​vi mysql_virtual_mailbox_limit_maps.cf</​code>​ | <​code>​ 
-hosts = 127.0.0.1 
-dbname = postfix 
-user = postfix 
-password = password 
-table = mailbox 
-select_field = quota 
-where_field = username 
-</​code>​ | Cuota de cada usuario | 
-|<​code>​vi mysql_virtual_mailbox_maps.cf</​code>​ | <​code>​ 
-hosts = 127.0.0.1 
-dbname = postfix 
-user = postfix 
-password = password 
-table = mailbox 
-select_field = maildir 
-where_field = username 
-</​code> ​ | Directorio en linux del usuario de correo | 
-|<​code>​vi mysql_virtual_transport.cf</​code>​ | <​code>​ 
-hosts = 127.0.0.1 
-dbname = postfix 
-user = postfix 
-password = password 
-table = domain 
-select_field = transport 
-where_field = domain 
-</​code> ​ | Tipologá del dominio (virutal) | 
- 
-===== Courier ===== 
-Configuración inicial para courier bastante simplificada:​ 
-<​code>​vi /​etc/​courier/​authdaemonrc</​code>​ 
-<​code>​ 
-#​authmodulelist="​authpam"​ 
-authmodulelist="​authmysql"​ 
-DEBUG_LOGIN=2 
-</​code>​ 
-Es decir, le indicamos que vamos a usar mysql para autenticaión en vez de PAM y habilitamos el debug a syslog para posibles troubleshoots. 
- 
-Creamos el fichero de configuración de mysql; 
-<​code>​vi /​etc/​courier/​authmysqlrc</​code>​ 
-<​code>​ 
-MYSQL_SERVER ​           localhost 
-MYSQL_USERNAME ​         postfix 
-MYSQL_PASSWORD ​         password 
-MYSQL_PORT ​             0 
-MYSQL_OPT ​              0 
-MYSQL_DATABASE ​         postfix 
-MYSQL_USER_TABLE ​       mailbox 
-MYSQL_CRYPT_PWFIELD ​    ​password 
-MYSQL_LOGIN_FIELD ​      ​username 
-MYSQL_NAME_FIELD ​       name 
-MYSQL_UID_FIELD ​        '​5000'​ 
-MYSQL_GID_FIELD ​        '​5000'​ 
-MYSQL_HOME_FIELD ​       '/​home/​mail/​mailboxes'​ 
-MYSQL_MAILDIR_FIELD ​    ​maildir 
-</​code>​ 
-Como se puede apreciar únicamente le proporcionamos los datos de conexion al servidor y datos básicos del sistema. 
- 
- 
-===== MySQL ===== 
-Para mysql únicamente crearemos el usuario y la bbdd ya que del resto se encargará el [[http://​postfixadmin.sourceforge.net/​|postfixadmin]]. 
-<​code>​msyql -p</​code>​ 
-<​code>​create database postfix ; 
-GRANT ALL PRIVILEGES ON `postfix`.* TO '​postfix'​@'​localhost' ​ IDENTIFIED BY '​password'​ ;</​code>​ 
-Logicamente es conveniente probar la conexion para cerciorarnos que el usuario está ok. 
- 
-===== PostfixAdmin ===== 
-Hay que descargar el PostfixAdmin:​ [[http://​sourceforge.net/​projects/​postfixadmin/​|http://​sourceforge.net/​projects/​postfixadmin/​]] 
-La instalación es como la de cualquier aplicación php, no entraré en detalles por esa parte, me centro únicamente en la configuración del mismo. 
-Una vez lo tengamos descomprimido,​ cambiamos las opciones básicas para lanzar el wizard mediante web: 
-<​code>​vi config.inc.php</​code>​ 
-^ Variable ^ Descripcion ^ 
-|<​code>​$CONF[['​configured'​]] = true;</​code>​ |Hay que indicar que no somos un bot |  
-|<​code>​$CONF[['​setup_password'​]] = //;</​code>​ | El propio postfixadmin nos proporciona el hash que hay que poner aquí­ la primera vez que lo ejecutemos. | 
-|<​code>​$CONF[['​default_language'​]] = '​en';</​code>​ | Si queremos cambiar el Idioma por defecto |  
-|<​code>​$CONF[['​database_type'​]] = '​mysql';​ 
-$CONF[['​database_host'​]] = '​localhost';​ 
-$CONF[['​database_user'​]] = '​postfix';​ 
-$CONF[['​database_password'​]] = '​password';​ 
-$CONF[['​database_name'​]] = '​postfix';​ 
-$CONF[['​database_prefix'​]] = //;</​code>​ | Todas las opciones para conexion a la bbdd, son las mismas que usamos para el postfix en sí­. |  
-Ahora ya podemos apuntar a la dirección web que contiene el setup, pej: 
-  * [[http://​localhost/​postfixadmin/​setup|http://​localhost/​postfixadmin/​setup]] 
-En este momento se crearán automáticamente todas las tablas necesarias para el funcionamiento tanto de postfix (usando la configuración anterior) como del postfixadmin en sí­. 
-Aparte, se nos da la posibilidad de crear el hash para el "​setup_password"​ comentado anteriormente y la creación de usuarios administrativos. 
-Logicamente hay que crear uno que será super user, que no será un mailbox, **unicamente es un login para el postfixadmin**. 
- 
- 
----- 
-''​Con esto y la creación de una nueva cuenta de correo, estará finalizada la configuración básica del servidor, deberámos poder conectarnos y enviar emails. Cosa conveniente antes de pasar a la siguiente parte de la configuración.''​ 
----- 
- 
-====== Instalación Segura ====== 
-Esta parte de la instalación trataré parámetros básicos de autenticación y SSL. Para mí­ es básico realizar estas operaciones como mí­nimo (sin contar la parte de antispam) 
- 
-===== SASL ===== 
-Usaremos la **"​[[http://​www.ietf.org/​dyn/​wg/​charter/​sasl-charter.html|Simple Authentication and Security Layer]]"​** para tener el servicio smtpd con autenticación por usuario. 
- 
-==== Software ==== 
-<​code>​aptitude install sasl2-bin libpam-mysql 
-</​code>​ 
-==== Configuración ==== 
-<​code>​ 
-mkdir -p /​var/​spool/​postfix/​var/​run/​saslauthd 
-</​code>​ 
-Hacemos un backup y editamos el fichero de configuración:​ 
-<​code>​ 
-mv /​etc/​default/​saslauthd /​etc/​default/​saslauthd.old 
-vi /​etc/​default/​saslauthd 
-</​code>​ 
-Y añadimos nuestros parametros: 
-<​code>​ 
-START=yes 
-MECHANISMS="​pam"​ 
-MECH_OPTIONS=""​ 
-THREADS=3 
-OPTIONS="​-c -m /​var/​spool/​postfix/​var/​run/​saslauthd -r" 
-</​code>​ 
-Cuidado con el número de threads, **3**, puede ser muy poco. 
- 
-Creamos la configuración de sistema (pam) para el smtpd: 
-<​code>​ 
-vi /​etc/​pam.d/​smtp 
-</​code>​ 
-<​code>​ 
-auth    required ​  ​pam_mysql.so user=postfix passwd=password host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1 
-account sufficient pam_mysql.so user=postfix passwd=password host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1 
-</​code>​ 
-Revisar las variables acostumbradas:​ 
-* user 
-* passwd 
-* host 
-* db 
-* table 
-* usercolum 
-* passwdcolumn 
- 
-Ahora creamos la configuración de postfix/​smptd:​ 
-<​code>​ 
-vi /​etc/​postfix/​sasl/​smtpd.conf 
-</​code>​ 
-<​code>​ 
-pwcheck_method:​ saslauthd 
-mech_list: plain login 
-allow_plaintext:​ true 
-auxprop_plugin:​ mysql 
-sql_hostnames:​ localhost 
-sql_user: postfix 
-sql_passwd: password 
-sql_database:​ postfix 
-sql_select: select password from mailbox where username='​%u@%r'​ and active = 1 
-</​code>​ 
- 
-Añadimos el usuario postfix al grupo del sasl2 
-<​code>​adduser postfix sasl</​code>​ 
- 
-Bastará con reiniciar el servicio y comprobar la autenticación;​ como troubleshoot usarámos el //​mail.log//​ y el //​auth.log//​. 
- 
-===== SSL/TLS ===== 
-Configuración ara SSL/TLS tanto en imap como smtp. 
- 
-==== IMAP ==== 
-La configuración de imap-ssl ya la suele realizar por defecto debian cuando instalamos el paquete de courier-ssl. 
-Hay que editar el fichero de configuración:​ 
-<​code>​ 
-vi /​etc/​courier/​imapd-ssl 
-</​code>​ 
-Y confirmar/​verificar las siguientes opciones: 
-<​code>​ 
-SSLPORT=993 
-SSLADDRESS=0 
-SSLPIDFILE=/​var/​run/​courier/​imapd-ssl.pid 
-SSLLOGGEROPTS="​-name=imapd-ssl"​ 
-IMAPDSSLSTART=YES 
-IMAPDSTARTTLS=YES 
-IMAP_TLS_REQUIRED=1 
-COURIERTLS=/​usr/​bin/​couriertls 
-TLS_PROTOCOL=SSL3 
-TLS_STARTTLS_PROTOCOL=TLS1 
-TLS_CERTFILE=/​etc/​postfix/​ssl/​www.ciberterminal.net.pem 
-TLS_VERIFYPEER=NONE 
-TLS_CACHEFILE=/​var/​lib/​courier/​couriersslcache 
-TLS_CACHESIZE=524288 
-MAILDIRPATH=Maildir 
-</​code>​ 
-Las principales opciones a tener en cuenta son las siguentes: 
-^ Variable ^ Descripcion ^ 
-|<​code>​SSLPORT=993</​code>​ | El puerto por donde se va a escuchar |  
-|<​code>​IMAP_TLS_REQUIRED=1</​code>​ | Con esta variable se fuerza el SSL, eliminando la opción de transferencias sin encriptar | 
-|<​code>​TLS_CERTFILE=/​etc/​postfix/​ssl/​www.ciberterminal.net.pem</​code>​ | En mi caso uso el mismo certificado para smtp e imap, el pem es el key+crt | 
- 
-==== SMPT ==== 
-Para smyp es "​conveniente"​ habilitar tanto ssl como plain, principalmente por que roundcube suele dar problemas con TLS habilitado en smptd. Con capar el puerto 25 deberá valer, aunque no hay nada 100% seguro. 
- 
-Editamos el fichero de configuración principal: 
-<​code>​vi /​etc/​postfix/​main.cf</​code>​ 
-Y añadimos/​modificamos los paŕametros:​ 
-<​code>​ 
-# TLS parameters 
-smtpd_use_tls=yes 
-smtpd_tls_cert_file=/​etc/​postfix/​ssl/​www.ciberterminal.net.crt 
-smtpd_tls_key_file=/​etc/​postfix/​ssl/​www.ciberterminal.net.key 
-smtpd_tls_CAfile = /​etc/​postfix/​ssl/​ca.crt 
-smtpd_tls_loglevel = 3 
-smtpd_tls_received_header = yes 
-smtpd_tls_session_cache_timeout = 3600s 
-tls_random_source = dev:/​dev/​urandom 
-smtpd_tls_session_cache_database = btree:​${queue_directory}/​smtpd_scache 
-smtp_tls_session_cache_database = btree:​${queue_directory}/​smtp_scache 
-</​code>​ 
- 
-Después habilitamos el puerto para smtps: 
-<​code>​vi /​etc/​postfix/​master.cf</​code>​ 
-Y lo habilitamos:​ 
-<​code>​ 
-smtps     ​inet ​ n       ​- ​      ​- ​      ​- ​      ​- ​      smtpd 
-</​code>​ 
- 
-====== Instalación Complementaria ====== 
-En esta última parte, trato temas adicionales como un gestor webmail, [[http://​roundcube.net/​|Roundcube]] muchí­simo más avanzado que el famoso squirrelmail;​ antivirus, antispam y demás ... 
- 
-===== Roundcube ===== 
-Descargamos la versión que queramos, stable o unstable, a gusto de cada uno: 
-* [[http://​roundcube.net/​downloads|http://​roundcube.net/​downloads]] 
-La configuración ha de hacerse igual que con cualquier aplicación web, intentando aseguralo todo lo máximo posible. 
- 
-Una vez estando descomprimido,​ basta seguir las instrucciones del INSTALL: 
-* Crear bbdd 
-* Crear usuario 
-* Hacer la importación inicial de datos. 
-En mi caso he decidido editar los ficheros de configuración,​ tal como dice el propio install. 
-===db.inc.php ==== 
-Lo único que hay que cambiar en este caso es la cadena de conexión: 
-<​code>​$rcmail_config[['​db_dsnw'​]] = '​mysql://​roundcube:​password@localhost/​roundcubemail';</​code>​ 
-La cadena de conexión es la habitual: 
-<​code>​mysql:<​nowiki>//</​nowiki>​usuario:​password@IP-SERVIDOR-MYSQL/​NOMBRE_BBDD</​code>​ 
-==== main.inc.php ==== 
-Aquí­ está la chicha de la configuración,​ en mi caso he realizado cambios en las siguientes variables: 
-^Variable ^Descripcion ^ 
-|<​code>​$rcmail_config[['​enable_caching'​]] = FALSE; </​code>​ | Estando todo en el mismo host es innecesario cachear |  
-|<​code>​$rcmail_config[['​force_https'​]] = TRUE; </​code>​ | Forzamos https para ni siquiera dar la opción de plain http |  
-|<​code>​$rcmail_config[['​default_host'​]] = '​ssl://​localhost';​ 
-$rcmail_config[['​default_port'​]] = 993; </​code>​ | Host y puerto del servidor IMAP, incluyendo protocolo |  
-|<​code>​$rcmail_config[['​imap_auth_type'​]] = plain; </​code>​ | Metodo de autenticación para el IMAP |  
-|<​code>​$rcmail_config[['​smtp_server'​]] = '​localhost';​ 
-$rcmail_config[['​smtp_user'​]] = '​%u';  ​ 
-$rcmail_config[['​smtp_pass'​]] = '​%p'; ​ 
-$rcmail_config[['​smtp_auth_type'​]] = '​LOGIN';​ </​code>​ | Host, user, pass y metodo de autenticacion para smtp |  
-|<​code>​$rcmail_config[['​smtp_debug'​]] = true; </​code>​ | En mi caso activé el modo debug de smtp para detectar ciertos problemas causados por ssl |  
-|<​code>​$rcmail_config[['​useragent'​]] = '​Ciberterminal Webmail'; ​ 
-$rcmail_config[['​product_name'​]] = '​Ciberterminal Webmail';​ </​code>​ | Cadenas de texto que aparecerán en la web |  
- 
- 
-===== Configuracion de otro cliente ===== 
- 
-| [[Archivo:​Postfix_howto_01.jpg|border|400px|01]] | Descripcion | 
-| [[Archivo:​Postfix_howto_02.jpg|border|400px|02]] | Descripcion | 
-| [[Archivo:​Postfix_howto_03.jpg|border|400px|03]] | Descripcion | 
- 
- 
-===== Spamassassin ===== 
-Una vez instalado, es recomendable crear un usuario con home para que vaya guardando sus datos, por ejemplo: 
-<​code>​ 
-useradd -u 111 -m -s /bin/false spamassassin 
-</​code>​ 
-Ahor hay que habilitar el demonio: 
-<​code>​vi /​etc/​default/​spamassassin</​code>​ 
-Y cambiar la siguiente opción a //1//: 
-<​code>#​ /​etc/​default/​spamassassin 
- 
-# Change to one to enable spamd 
-ENABLED=1 
- 
-# Options 
-# See man spamd for possible options. The -d option is automatically added. 
- 
-# SpamAssassin uses a preforking model, so be careful! You need to 
-# make sure --max-children is not set to anything higher than 5, 
-# unless you know what you're doing. 
- 
-OPTIONS="​--create-prefs --max-children 5 --helper-home-dir --username spamassassin"​ 
- 
-# Pid file 
-# Where should spamd write its PID to file? If you use the -u or 
-# --username option above, this needs to be writable by that user. 
-# Otherwise, the init script will not be able to shut spamd down. 
-PIDFILE="/​var/​run/​spamd.pid"​ 
- 
-# Set nice level of spamd 
-NICE="​--nicelevel 15"</​code>​ 
- 
- 
- 
- 
-El fichero cuenta con otras opciones como el nice del proceso de spamassassin,​ número de threads y similar. 
-Ahora hay que editar el fichero de configuración principal de spamassassin. 
-Recomiendo usar la [[http://​www.yrex.com/​spam/​spamconfig.php|siguiente herramienta para generar la configuración]] 
-Y sustituir el **/​etc/​spamassassin/​local.cf** por defecto por el que generemos, por ejemplo en mi caso: 
-<​code>​ 
-required_score ​          7.5 
-report_safe ​            1 
-use_bayes ​              1 
-bayes_auto_learn ​             0 
-skip_rbl_checks ​        0 
-use_razor2 ​             1 
-use_dcc ​                1 
-use_pyzor ​              1 
-ok_languages ​           all 
-ok_locales ​             en es 
-</​code>​ 
- 
-En el caso de haber añadido algún plugin, hay que habilitarlo en el fichero: 
-* v310.pre 
- 
-Solo falta configurar postfix: 
-<​code>​vi /​etc/​postfix/​master.cf</​code>​ 
-Y cambiar la linea de configuración del smtpd a: 
-<​code>​smtp ​     inet  n       ​- ​      ​n ​      ​- ​      ​- ​      smtpd -o content_filter=spamassassin</​code>​ 
-Y añadir al final del fichero: 
-<​code>​ 
-spamassassin ​         unix  -       ​n ​      ​n ​      ​- ​      ​- ​      pipe 
-user=spamassassin argv=/​usr/​bin/​spamc -e /​usr/​sbin/​sendmail -oi -f ${sender} ${recipient} 
-</​code>​ 
- 
-==== spampd ==== 
-spampd es un proxy de alto rendimiento para el préanalisis de mails. 
-Es decir, se sitúa "por delante"​ de postfix, analiza el email y si no es spam, lo redirige de manera normal a postfix. Esto elimina el análisis en disco del mismo una vez aceptado por postfix incrementando mucho el rendimiento (al menos según los desarrolladores). 
-Algún dia trataré sobre el tema, mientras está la [[http://​wiki.apache.org/​spamassassin/​IntegratePostfixViaSpampd|página oficial]] 
- 
-====== Debugging ====== 
-La mejor manera de debugar es leer los logs de postfix, será vuestro mejor amigo y peor pesadilla. 
-Desde que no os autentique cualquier cliente de correo hasta que spamassassin no funcione por permisos de sistema. 
-Siempre hay que tener abierto un: 
-<​code>​ 
-tail -f /​var/​log/​mail.log 
-</​code>​ 
- 
- 
-====== Troubleshooting ====== 
- 
-===== Roundcube ===== 
-En determinadas ocasiones, roundcube no consigue inicializar el protocolo ssl con imap, dando el siguiente error: 
-<​code>​ 
-Jun 27 20:04:41 ks358028 imapd-ssl: couriertls: connect: error:​1408F10B:​SSL routines:​SSL3_GET_RECORD:​wrong version number 
-</​code>​ 
-Para solucionarlo basta con cambiar la configuración del courier/​imap-ssl a: 
-^ Fichero ^ Valor ^ 
-| <​code>/​etc/​courier/​imapd-ssl</​code>​ | <​code>​TLS_PROTOCOL=SSL23</​code>​ | 
- 
-====== Links ====== 
-  * [[http://​www.postfix.org/​documentation.html|Postfix official documentation]] 
-  * [[http://​trac.roundcube.net/​|Roundcube wiki]] 
-  * [[http://​flurdy.com/​docs/​postfix/​|Howto más o menos igual que el mio]] 
-  * [[http://​postgrey.schweikert.ch/​|Pagina de PostGrey]] 
-  * [[http://​wiki.apache.org/​spamassassin/​|Wiki de Spamassassin]] 
-  * [[http://​wiki.apache.org/​spamassassin/​IntegratedSpamdInPostfix|Integracion spamd-postfix]] 
-  * [[http://​wiki.apache.org/​spamassassin/​IntegratePostfixViaSpampd|Integracion spampd-postfix]] 
-  * [[http://​razor.sourceforge.net/​docs/​|Razor:​ Red distribuida antispam]] 
-  * [[http://​www.rhyolite.com/​dcc/​|DCC:​ Red distribuida antispam]] 
-  * [[http://​sourceforge.net/​apps/​trac/​pyzor/​|Pyzor:​ Red distribuida antispam]] ​ 
zz_deprecated/howto_postfix.txt · Last modified: 2019/07/18 07:17 (external edit)