| Unsubscribe endpoints for mlmmj users (and possibly Mailman, too) |
| |
| * examples/unsubscribe.milter filters outgoing messages |
| and appends an HTTPS URL to the List-Unsubscribe header. |
| This List-Unsubscribe header should point to the PSGI |
| described below. You may edit the archive_addr sub |
| to disable List-Unsubscribe headers for well-known archiver |
| addresses to prevent saboteurs from stopping archival. |
| |
| * examples/unsubscribe.psgi is a PSGI which needs to run |
| as the mlmmj user with permission to run mlmmj-unsub. |
| This depends on the PublicInbox::Unsubscribe module |
| which may be extracted from the rest of public-inbox. |
| It is strongly recommended to NOT run the rest of the |
| public-inbox WWW code in the same process as this PSGI. |
| (The public-inbox WWW code will never need write |
| permissions to anything besides stderr). |
| |
| * Both the .milter and .psgi examples are bundled with |
| systemd service and socket activation examples. |
| AFAIK no other PSGI server besides public-inbox-httpd |
| supports systemd socket activation. |
| |
| To wire up the milter for postfix, I use the following |
| in /etc/postfix/main.cf: |
| |
| # Milter configuration |
| milter_default_action = accept |
| milter_protocol = 2 |
| |
| # other milters may be chained here (e.g. opendkim) |
| # chroot users will need to adjust this path |
| smtpd_milters = local:/var/spool/postfix/unsubscribe/unsubscribe.sock |
| |
| # This is not needed for mlmmj since mlmmj uses SMTP: |
| # non_smtpd_milters = local:/var/spool/postfix/unsubscribe/unsubscribe.sock |
| |
| Copyright (C) all contributors <meta@public-inbox.org> |
| License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt> |