Operations grimoire/Mail/Sympa

From Nasqueron Agora

📕📁📜 Old technical information :: content warning

⌛ This Nasqueron Operations Grimoire page hasn't been updated for a long time.

☣ As our infrastructure evolves quickly, there is a good chance this information is outdated or now inaccurate. Be careful and consider update it.

➡️ To assert the information is still up-to-date or not, you can check the history of the relevant role in our Operations repository.

Sympa is a mailing list manager, with good support for multidomains, SOAP webservice.

It lives in /var/lib/sympa. It's NOT managed as a Debian package, but installed from source.

Install

$ ./configure --prefix=/var/lib/sympa
$ make
$ make install
$ cd /var/lib/sympa/bin
$ ./sympa_wizard.pl --check

Configuration is located in /etc/sympa as a Git repository.

Postfix configuration is to be amended through D849.

Web interface

Application server

We need fcgiwrap listening at /run/fcgiwrap.socket.

$ apt-get install fcgiwrap
$ systemctl status fcgiwrap 
$ ls /run/fcgiwrap.socket

Back-end nginx server

server {
        server_name lists.*;

        access_log   /var/log/nginx/lists.nasqinternal.access.log;
        error_log    /var/log/nginx/lists.nasqinternal.error.log;

        rewrite ^/$ /wws permanent;
        rewrite ^/wws$ /sympa permanent;
        rewrite ^/wws/(.*)$ /sympa/$1 permanent;

        location ^~ /static-sympa {
                alias /var/lib/sympa/static_content/;
                access_log off;
        }

        location /sympa {
                gzip off;

                include fastcgi_params;
                fastcgi_split_path_info ^(/sympa)(.+)$;
                fastcgi_param  PATH_INFO          $fastcgi_path_info;
                fastcgi_param  SCRIPT_FILENAME    /var/lib/sympa/bin/wwsympa-wrapper.fcgi;
                fastcgi_param  SERVER_NAME        $host;
                fastcgi_param  HTTP_HOST          $http_host;
                fastcgi_intercept_errors on;

                fastcgi_pass   unix:/run/fcgiwrap.socket;
        }
}

Front-end nginx server

Currently on Dwellers. It only forwards requests for lists domain to our back-end nginx.

Configuration as code.

This service should be properly defined in rOPS repository as a Salt state.