Sympa

Aus Vosp.info
Wechseln zu: Navigation, Suche

Sympa ist eine Software zum Verwalten von Mailinglisten. Doku: https://www.sympa.org/manual_6.2/index

Installation Sympa 6.2.15

* postfix
* apache


apt-get install postfix  

postfix

 etc/postfix/main.cf
smtpd_banner = $myhostname ESMTP $mail_name (xxx)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file = /etc/ssl/private/xxx.xxxx.crt
smtpd_tls_key_file =  /etc/ssl/private/xxx.xxxx.key
smtpd_tls_CAfile =    /etc/ssl/private/xxx.xxxx.com.cer
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = xxx.xxx1.xx
alias_maps = hash:/etc/aliases, hash:/etc/mail/sympa_aliases, hash:/home/sympa/etc/sympa_aliases
alias_database = hash:/etc/aliases
myorigin = $mydomain
mydestination = $myhostname, xxx.xxx1.xx, xxx.xxx2.de, xxx, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
mailbox_command = procmail -a "$EXTENSION"
#transport_maps = regexp:/home/sympa/etc/transport_regexp
virtual_alias_maps = regexp:/home/sympa/etc/transport_regexp

/etc/postfix/master.cf

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

apache

apt-get install apache2 apache2-utils libapache2-mod-fcgid libapache-singleton-perl libapache2-request-perl libapache2-mod-perl2 apache2-suexec-custom
vim /etc/apache2/sites-available/seite.conf
 NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
        SuexecUserGroup sympa sympa
        ServerName   lists.domain1.tld
        DocumentRoot /var/www/lists.domain1.tld
        ServerAdmin  mail@domain.tld
        Alias /static-sympa /home/sympa/lists.domain1.tld/static_content
        <Directory /home/sympa/lists.domain1.tld/static_content>
                Require all granted
        </Directory>
        ScriptAlias /sympa /home/sympa/bin/wwsympa-wrapper.fcgi
        <Directory /home/sympa/bin>
                Require all granted
        </Directory>
        <IfModule mod_fcgid.c>
                 AddHandler fcgid-script .fcgi
        </IfModule>
</VirtualHost>

<VirtualHost *:443>
        SuexecUserGroup sympa sympa

        ServerName   lists.domain1.tld
        DocumentRoot /var/www/lists.domain1.tld
        ServerAdmin  mail@domain.tld

        SSLEngine On
        ServerSignature Off
        SSLCertificateKeyFile /etc/ssl/private/lists.domain1.tld.key
        SSLCertificateFile /etc/ssl/private/lists.domain1.tld.crt
        SSLCertificateChainFile /etc/ssl/private/lists.domain1.tld.com.cer
        Alias /static-sympa /home/sympa/lists.domain1.tld/static_content
        <Directory /home/sympa/lists.domain1.tld/static_content>
                Require all granted
        </Directory>
        <Directory /home/sympa/static_content>
                Require all granted
        </Directory>

        ScriptAlias /sympa /home/sympa/bin/wwsympa-wrapper.fcgi
        <Directory /home/sympa/bin>
                Require all granted
        </Directory>

        <IfModule mod_fcgid.c>
                 AddHandler fcgid-script .fcgi
        </IfModule>

</VirtualHost>


sympa

apt-get install libfcgi-perl libcgi-fast-perl  libclass-*-perl libdatetime-perl lib-*-perl libmime-lite-html-perl libarchive-zip-perl libcrypt-ciphersaber-perl libdbd-mysql-perl libdbi-perl libfcgi-perl libio-stringy-perl libwww-perl libintl-perl mhonarc libmime-perl libmailtools-perl libregexp-common-perl libtemplate-perl libxml-libxml-perl libcgi-fast-perl libio-socket-ssl-perl libcrypt-ssleay-perl libnet-ssleay-perl libmime-encwords-perl libmime-charset-perl libcrypt-openssl-x509-perl automake autoconf make gcc 

Download

dpkg-reconfigure locales 
cd /home/
wget http://www.sympa.org/distribution/sympa-6.2.15.tar.gz
unp sympa-6.2.15.tar.gz
cd sympa-6.2.15/

Installieren

./configure;
make;
make install
/home/sympa/bin/sympa_wizard.pl --check
/home/sympa/bin/sympa_wizard.pl
adduser sympa
chown sympa:sympa /home/sympa -R
chown sympa:sympa /etc/sympa/ -R
# Datenbank /Benutzer erstellen
mysql -u root -p
CREATE DATABASE sympa CHARACTER SET utf8;
GRANT ALL PRIVILEGES ON sympa.* TO <db_user>@<client host> IDENTIFIED BY '<db_passwd>';
# datenbank erstellen
sympa.pl --health_check

Konfigurieren

vim /etc/sympa/sympa.conf

domain sub.domain1.tld
email namelists
gecos NAMELISTS
listmaster mail@domain.tld
wwsympa_url https://sub.domain1.tld/sympa
process_archive	on
voot_feature	off
max_wrong_password	19
static_content_path	/home/sympa/static_content
static_content_url	/static-sympa
create_list	public_listmaster
home	/home/sympa/list_data
etc	/home/sympa/etc
syslog	LOCAL1
log_level	0
log_socket_type	unix
umask	027
sendmail	/usr/sbin/sendmail
maxsmtp	40
log_smtp	off
use_blacklist	send,create_list
max_size	5242880
nrcpt	25
avg	10
rfc2369_header_fields	help,subscribe,unsubscribe,post,owner,archive
remove_headers	X-Sympa-To,X-Family-To,Return-Receipt-To,Precedence,X-Sequence,Disposition-Notification-To,Sender
reject_mail_from_automates_feature	on
sympa_packet_priority	5
bulk_fork_threshold	1
bulk_max_count	3
bulk_lazytime	600
bulk_sleep	1
bulk_wait_to_fork	10
default_max_list_members	0
spool	/home/sympa/spool
queue	/home/sympa/spool/msg
queuemod	/home/sympa/spool/moderation
queuedigest	/home/sympa/spool/digest
queueauth	/home/sympa/spool/auth
queueoutgoing	/home/sympa/spool/outgoing
queuesubscribe	/home/sympa/spool/subscribe
queuetopic	/home/sympa/spool/topic
queuebounce	/home/sympa/spool/bounce
queuetask	/home/sympa/spool/task
queueautomatic	/home/sympa/spool/automatic
queuebulk	/home/sympa/spool/bulk
viewmail_dir	/home/sympa/spool/viewmail
supported_lang	de
lang	de-DE
legacy_character_support_feature	off
welcome_return_path	owner
remind_return_path	owner
bounce_path	/home/sympa/bounce
expire_bounce_task	daily
bounce_warn_rate	30
bounce_halt_rate	50
cache_list_config	none
sympa_priority	1
request_priority	0
owner_priority	9
default_list_priority	5
parsed_family_files	message.footer,message.header,message.footer.mime,message.header.mime,info
db_type	mysql
db_name	sympa
db_host	localhost
db_user	sympa
db_passwd XXXXXXXXXXXX
logs_expiration_period	3
default_ttl	3600
default_distribution_ttl	300
default_sql_fetch_timeout	300
cafile	/home/sympa/default/ca-bundle.crt
ssl_cert_dir	/home/sympa/list_data/X509-user-certs
dkim_feature	off
dkim_add_signature_to	robot,list
dkim_signer_domain	sub.domain1.tld
antispam_tag_header_name	X-Spam-Status
antispam_tag_header_spam_regexp	^\s*Yes
antispam_tag_header_ham_regexp	^\s*No
spam_status	x-spam-status
arc_path	/home/sympa/arc
archive_default_index	thrd
cookie_expire	0
cookie_domain	localhost
cookie_refresh	60
default_home	home
edit_list	owner
ldap_force_canonical_email	1
log_facility	LOCAL1
mhonarc	/usr/bin/mhonarc
password_case	insensitive
review_page_size	25
title	Mailing lists service
use_html_editor	0
use_fast_cgi	1
viewlogs_page_size	25
http_host	sub.domain1.tld

Each Domain

mkdir /var/www/sub.domain1.tld
mkdir /home/sympa/list_data/sub.domain1.tld/
mkdir /home/sympa/etc/sub.domain1.tld/
vim /home/sympa/etc/sub.domain1.tld/robot.conf
http_host sub.domain1.tld
wwsympa_url https://sub.domain1.tld/sympa
listmaster mail@domain.tld
title Mailingliste für sub.domain1.tld
create_list  listmaster
default_home  lists
## You can define custom colors for the Virtual Robot's
## Web interface
dark_color #00aa00
light_color #ddffdd
selected_color #0099cc
/home/sympa/etc/transport_regexp

 /^.*\@sub\.domain\.tld$/ sub.domain1.tld-$1


vim /home/sympa/sympa_aliases

# first Domain
lists: "| /home/sympa/bin/queue list@sub.domain1.tld"
listmaster: "| /home/sympa/bin/queue listmaster@sub.domain1.tld"
bounce+*: "| /home/sympa/bin/bouncequeue lists@sub.domain1.tld"
list-request: postmaster
list-owner: postmaster

#second Domain
lists@sub.domain2.tld-name: "| /home/sympa/bin/queue name2@sub.domain2"
lists@sub.domain2.tld-listmaster: "| /home/sympa/bin/queue listmaster@sub.domain2.tld"
lists@sub.domain2.tld-bounce+*: "| /home/sympa/bin/bouncequeue lists@sub.domain2.tld"
lists@sub.domain2.tld-name-request: root@sub.domain2.tld
lists@sub.domain2.tld-name-owner: root@sub.domain2.tld

vim /etc/mail/sympa_aliases

filled by sympa

Mapping

postmap /home/sympa/etc/transport_regexp
postalias /home/sympa/etc/sympa_aliases
postalias /etc/mail/sympa_aliases
chown sympa:sympa -R /home/sympa
chown sympa:sympa /var/www/sub.domain1.tld

Sympa nutzen

Logging

systemd

journalctl _COMM=sympa.pl -f

Workarrounds

Bei dem erstellen der Liste gibt es einen Fehler:

postalias: fatal: open /etc/aliases.db: Permission denied
chown  sympa:sympa /etc/aliases.db

CSS, JS Wird nicht gelesen wegen apache Konfiguration

<Directory /home/sympa/lists.domain1.tld/static_content>
mkdir /home/sympa/lists.domain1.tld/
ln -s /home/sympa/static_content  /home/sympa/lists.domain1.tld/


Upgrading from 6.2.15 to 6.2.16

cd /home
wget http://www.sympa.org/distribution/sympa-6.2.16.tar.gz
unp /home/sympa-6.2.16.tar.gz
cd  /home/sympa-6.2.16
./configure
make
make install
sympa_wizard.pl --check 
sympa.pl --upgrade



Notizen Sympa 6.2.16 unter Debian (Sid)

Jede Domain

mkdir /var/www/sub.domain1.tld
mkdir /var/lib/sympa/list_data/sub.domain1.tld/
mkdir /etc/sympa//sub.domain1.tld/
vim /etc/sympa/sub.domain1.tld/robot.conf
mkdir /etc/sympa/static_lists/sub.domain1.tld/
ln -s /var/lib/sympa/static_content /etc/sympa/static_lists/sub.domain1.tld/