Add support for mailing list manager SYMPA
The sympa mailing list manager is capable of virtual domains in so called "robots" and can serve data from various formats: text (via ftp, http, ...), various databases. Packages are available in debian. Basic aliases and transports for postfix can be set in transport-regexp e.g.:
/^.*+owner\@domain\.tld$/ sympabounce:
/^.*\@domain\.tld$/ sympa:
sympabounce and sympa represent services in master.cf - e.g.
sympa unix - n n - 1 pipe flags=RF user
=sympa argv=/usr/lib/sympa/lib/sympa/queue ${recipient}
sympabounce unix - n n - 1 pipe flags=RF user
=sympa argv=/usr/lib/sympa/lib/sympa/bouncequeue ${user}@${domain}
Domain owners will be listed in virtual-regexp:
/^(.*)-owner\@(.*)$/ $1+owner@$2
Eventually aliases retrieved through ispconfig's database are preferable. The web interface can be made available through fpm-wrapper and one aliased virtual host. Example config for nginx:
server {
listen _default:443;
listen [2001:db8::1]:443;
server_name hostname.domain.tld lists.otherdomain.tld;
root /var/www/lists;
location / {
rewrite ^/$ https://$http_host/home last;
rewrite ^/wws/(.*)$ /$1 last;
rewrite ^/wws$ /home last;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param SERVER_NAME $http_host;
fastcgi_param HTTPS on;
if (-f $request_filename) { break; }
if (!-e $request_filename) {
gzip off;
fastcgi_pass unix:/var/run/sympa/wwsympa.socket;
}
}
location /static-sympa {
alias /var/lib/sympa/static_content;
}
}
/var/www/lists/[domain]_css/ will contain css data and may be adapted per domain.
config data will reside in /etc/sympa/hostname.domain.tld
I plea for integration of Sympa as a better alternative to mailman.