Howto instalacion configuracion sympa

De HowTo ARIU
Revisión del 12:37 21 jun 2023 de Sloyola (discusión | contribs.) (Página creada con «=Instalación y configuración de Sympa Multi-dominio= ==Instalar Postfix== # apt install postfix Tipo genérico de configuración de correo: Sitio de Internet Nombre del sistema de correo: sympa.unq.edu.ar ==Instalar Apache2== # apt install apache2 # a2enmod ssl # a2ensite default-ssl # systemctl restart apache2 ==Configuración Apache2== Editamos el archivo de configuración /etc/apache2/envvars y reemplazamos: export APACHE_RUN_USER=www-data export…»)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Ir a la navegación Ir a la búsqueda

Instalación y configuración de Sympa Multi-dominio

Instalar Postfix

# apt install postfix

Tipo genérico de configuración de correo:

Sitio de Internet

Nombre del sistema de correo:

sympa.unq.edu.ar

Instalar Apache2

# apt install apache2
# a2enmod ssl
# a2ensite default-ssl
# systemctl restart apache2

Configuración Apache2

Editamos el archivo de configuración /etc/apache2/envvars y reemplazamos:

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data

por:

export APACHE_RUN_USER=sympa
export APACHE_RUN_GROUP=sympa

Luego le cambiamos los permisos al directorio /var/lib/apache2/fcgid/sock, de la siguiente manera:

# chown www-data:sympa -R /var/lib/apache2/fcgid/sock
# chmod 770 -R /var/lib/apache2/fcgid/sock

Finalmente reiniciamos el apache

# systemctl restart apache2

Instalar Sympa

# apt install sympa

¿Qué servidor/es web está ejecutando?

Apache 2

Should sympa_newaliases-wrapper be setuid root?

No

¿Desea configurar la base de datos para sympa con «dbconfig-common»?

Si

El tipo de base de datos que se va a utilizar para sympa:

mysql

Contraseña de aplicación MySQL para sympa:

*********


Config inicial sympa

# nano /etc/sympa/sympa/sympa.conf
domain	sympa.unq.edu.ar
lang	es
title  Servicio de Listas de Correo
listmaster	listmaster@sympa.unq.edu.ar,administrador@sympa.unq.edu.ar,mailadmin@unq.edu.ar
wwsympa_url	https://sympa.unq.edu.ar/wws
# systemctl restart apache2
# systemctl restart sympa

Config autenticacion LDAP

# nano /etc/sympa/auth.conf
# Authentication services for Sympa
# Internal authentication by email and password

user_table
        negative_regexp                      unq\.edu\.ar
#       regexp .*


ldap
   regexp                      unq\.edu\.ar
   host                        ldap.unq.edu.arr:389
   timeout                     30
   bind_dn                     cn=readonly,dc=unq,dc=edu,dc=ar
   bind_password               *************
   suffix                      dc=unq,dc=edu,dc=ar
   get_dn_by_uid_filter        (uid=[sender])
   get_dn_by_email_filter      (mail=[sender])
   email_attribute             mail
#    alternative_email_attribute gosaMailAlternateAddress
    scope                       sub
# service apache2 restart

Integracion con postfix

Referencia: https://sympa-community.github.io/manual/install/configure-mail-server-postfix.html


Agregar configuraciones en sympa.conf

# nano /etc/sympa/sympa/sympa.conf
aliases_program postalias
sendmail /usr/sbin/sendmail

Crear archivo de aliases:

# nano /etc/postfix/aliases.sympa.postfix


# Robot aliases for Sympa.
sympa:                 "| /usr/lib/sympa/lib/sympa/queue sympa@sympa.unq.edu.ar"
listmaster:            "| /usr/lib/sympa/lib/sympa/queue listmaster@sympa.unq.edu.ar"
bounce:                "| /usr/lib/sympa/lib/sympa/bouncequeue sympa@sympa.unq.edu.ar"
abuse-feedback-report: "| /usr/lib/sympa/lib/sympa/bouncequeue sympa@sympa.unq.edu.ar"
sympa-request:         postmaster
sympa-owner:           postmaster
# listserv:             sympa
# listserv-request:     sympa-request
# majordomo:            sympa
# listserv-owner:       sympa-owner


Crearle base de datos correspondiente

# postalias hash:/etc/postfix/aliases.sympa.postfix

Refrescar los aliases sympa:

# /usr/lib/sympa/bin/sympa_newaliases.pl


Configuraciones postfix main.cf

# nano /etc/postfix/main.cf
#### Configuraciones para sympa
mydestination = $myhostname, srv-sympa.unq.edu.ar, localhost.sympa.unq.edu.ar, localhost, sympa.unq.edu.ar
alias_maps =
  hash:/etc/aliases
  hash:/etc/postfix/aliases.sympa.postfix,
  hash:/etc/mail/sympa/aliases
alias_database =
  hash:/etc/aliases,
  hash:/etc/postfix/aliases.sympa.postfix
recipient_delimiter = +

### Configuraciones TLS - basadas en una instalacion de servidor iredMail.
smtpd_tls_CApath = /etc/ssl/certs
smtpd_tls_protocols = !SSLv2 !SSLv3
smtpd_tls_mandatory_protocols = !SSLv2 !SSLv3
smtp_tls_protocols = !SSLv2 !SSLv3
smtp_tls_mandatory_protocols = !SSLv2 !SSLv3
lmtp_tls_protocols = !SSLv2 !SSLv3
lmtp_tls_mandatory_protocols = !SSLv2 !SSLv3
smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDC3-SHA, KRB5-DE5, CBC3-SHA
tls_random_source = dev:/dev/urandom
smtp_tls_loglevel = 1
smtpd_tls_loglevel = 1
smtpd_tls_security_level = may
smtp_tls_security_level = may
smtp_tls_CApath = /etc/ssl/certs
smtp_tls_CAfile = $smtpd_tls_CAfile
smtp_tls_note_starttls_offer = yes
# systemctl restart postfix

Sympa multiDominio

Configuraciones

1. Editamos el archivo sympa.conf ubicado en el directorio /etc/sympa/sympa y agregamos la ruta del binario de sendmail

sendmail /usr/local/sbin/sendmail

2. Creo el archivo list_aliases.tt2 en el directorio /etc/sympa y agrego lo siguiente:

#--- [% list.name %]@[% list.domain %]: list transport map created at [% date %]
[% list.name %]@[% list.domain %] sympa:[% list.name %]@[% list.domain %]
[% list.name %]-request@[% list.domain %] sympa:[% list.name %]-request@[% list.domain %]
[% list.name %]-editor@[% list.domain %] sympa:[% list.name %]-editor@[% list.domain %]
#[% list.name %]-subscribe@[% list.domain %] sympa:[% list.name %]-subscribe@[%list.domain %]
[% list.name %]-unsubscribe@[% list.domain %] sympa:[% list.name %]-unsubscribe@[% list.domain %]
[% list.name %][% return_path_suffix %]@[% list.domain %] sympabounce:[% list.name %]@[% list.domain %]

3.Edite sympa.conf para agregar las siguientes líneas

sendmail_aliases /etc/sympa/sympa_transport
aliases_program postmap
aliases_db_type hash

Con esta configuración, el archivo sympa_transport se actualizará automáticamente cuando se cree, cierre, restaure o purgue cualquier lista.

4.Crear archivos de mapas vacíos

# touch /etc/sympa/transport.sympa
# touch /etc/sympa/virtual.sympa
# touch /etc/sympa/sympa_transport
# chmod 644 /etc/sympa/sympa_transport
# chown sympa:sympa /etc/sympa/sympa_transport

creamos las bases de datos

# postmap hash:/etc/sympa/transport.sympa
# postmap hash:/etc/sympa/virtual.sympa
# /usr/lib/sympa/bin/sympa_newaliases.pl

Con los pasos anteriores, el archivo sympa_transport es legible en todo el mundo y las personas pueden conocer todos los nombres de las listas existentes. Para evitarlo, siga los pasos a continuación después de los pasos anteriores:

# chmod 640 /etc/sympa/sympa_transport /etc/sympa/sympa_transport.db
# chgrp postfix /etc/sympa/sympa_transport /etc/sympa/sympa_transport.db

5. Edite el archivo Postfix master.cf para agregar definiciones de transporte

sympa     unix -        n       n       -       -       pipe
  flags=R user=sympa argv=/usr/lib/sympa/bin/queue ${recipient}
sympabounce unix -      n       n       -       -       pipe
  flags=R user=sympa argv=/usr/lib/sympa/bin/bouncequeue ${recipient}

6.Edite el archivo Postfix main.cf para agregar configuración para dominios virtuales

#### Configuraciones para sympa
#alias_maps = hash:/etc/aliases,  hash:/etc/mail/sympa/aliases
#alias_database = hash:/etc/aliases
mydestination = localhost.sympa.unq.edu.ar, localhost
relay_domains = $mydestination, sympa.unq.edu.ar
sympa_destination_recipient_limit = 1
sympabounce_destination_recipient_limit = 1
#recipient_delimiter = +
#transport_maps = regexp:/etc/sympa/transport_regexp
# virtual(8) maps
virtual_mailbox_domains = hash:/etc/sympa/transport.sympa
virtual_mailbox_maps = hash:/etc/sympa/transport.sympa,
  hash:/etc/sympa/sympa_transport,
  hash:/etc/sympa/virtual.sympa
# virtual(5) maps
virtual_alias_maps = hash:/etc/sympa/virtual.sympa
# transport maps
transport_maps = hash:/etc/sympa/transport.sympa,
  hash:/etc/sympa/sympa_transport
# For VERP
recipient_delimiter = +
#### fin configuraciones para sympa

Agrego el nuevo dominio

Los pasos de esta sección deben realizarse cada vez que se agrega el nuevo dominio.

1.Crear directorios para configuraciones de dominio virtual

# mkdir -m 755 /etc/sympa/grupos.unq.edu.ar
# touch /etc/sympa/grupos.unq.edu.ar/robot.conf
# chown -R sympa:sympa /etc/sympa/grupos.unq.edu.ar
# mkdir -m 750 /var/lib/sympa/list_data/grupos.unq.edu.ar/
# chown sympa:sympa /var/lib/sympa/list_data/grupos.unq.edu.ar/

2.Editamos el archivo /etc/sympa/grupos.unq.edu.ar/robots.conf y agregamos lo siguiente:

wwsympa_url http://grupos.unq.edu.ar/wws
sendmail_aliases /etc/sympa/sympa_transport
aliases_program postmap
aliases_db_type hash

NOTA: En este archivo colocamos todo lo que queramos pisar de lo que este configurado en el archivo sympa.conf

3.Si los servicios de Sympa ya se han estado ejecutando. Reiniciar el mismo

4.Agregue los siguientes contenidos a los archivos transport.sympa y virtual.sympa y edítelos como prefiera

transport.sympa

grupos.unq.edu.ar                error:User unknown in recipient table
sympa@grupos.unq.edu.ar          sympa:sympa@grupos.unq.edu.ar
listmaster@grupos.unq.edu.ar     sympa:listmaster@grupos.unq.edu.ar
bounce@grupos.unq.edu.ar         sympabounce:sympa@grupos.unq.edu.ar
abuse-feedback-report@grupos.unq.edu.ar  sympabounce:sympa@grupos.unq.edu.ar

virtual.sympa

sympa-request@grupos.unq.edu.ar  postmaster@localhost
sympa-owner@grupos.unq.edu.ar    postmaster@localhost

Luego, actualice las bases de datos para el mapa de transporte y el mapa de alias virtual

# postmap hash:/etc/sympa/transport.sympa
# postmap hash:/etc/sympa/virtual.sympa

5.Reiniciamos postfix y sympa

systemctl restart sympa
systemctl restart postfix

6.Si la ruta del archivo ejecutable de MHonArc difiere del parámetro predeterminado de mhonarc, /usr/bin/mhonarc, defínalo en sympa.conf.

mhonarc /usr/local/bin/mhonarc

7.Agregamos un virtualHost en apache para el dominio grupos.unq.edu.ar, con el siguiente contenido:

<VirtualHost *:80>
	ServerName grupos.unq.edu.ar
	ServerAdmin sergio.loyola@unq.edu.ar
	Redirect permanent / https://grupos.unq.edu.ar/
</VirtualHost>
<VirtualHost *:443>
	ServerName grupos.unq.edu.ar
	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

	ErrorLog ${APACHE_LOG_DIR}/grupos-error.log
	CustomLog ${APACHE_LOG_DIR}/grupos-access.log combined

	SSLEngine on
	SSLCertificateFile	/etc/ssl/certs/ssl-cert-snakeoil.pem
	SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

	<IfModule mod_fcgid.c>
		Alias /static-sympa /usr/share/sympa/static_content
		<Directory /usr/share/sympa/static_content>
			Require all granted
		</Directory>

		Alias /css-sympa /var/lib/sympa/css
		<Directory /var/lib/sympa/css>
			Require all granted
		</Directory>

		Alias /pictures-sympa /var/lib/sympa/pictures
		<Directory /var/lib/sympa/pictures>
			Require all granted
		</Directory>

#		ScriptAlias /wws /usr/lib/cgi-bin/sympa/wwsympa-wrapper.fcgi
		ScriptAlias /wws /usr/lib/cgi-bin/sympa/wwsympa.fcgi
		<Directory /usr/lib/cgi-bin/sympa>
			Require all granted
		</Directory>
	</IfModule>

</VirtualHost>