|
|
|
|
4
|
About
|
4
|
About
|
5
|
-----
|
5
|
-----
|
6
|
|
6
|
|
7
|
-PostSRSd provides the Sender Rewriting Scheme (SRS) via TCP-based
|
|
|
|
|
7
|
+PostSRSd provides the Sender Rewriting Scheme (SRS) via TCP-based
|
8
|
lookup tables for Postfix. SRS is needed if your mail server acts
|
8
|
lookup tables for Postfix. SRS is needed if your mail server acts
|
9
|
-as forwarder.
|
|
|
|
|
9
|
+as forwarder.
|
10
|
|
10
|
|
11
|
|
11
|
|
12
|
Sender Rewriting Scheme Crash Course
|
12
|
Sender Rewriting Scheme Crash Course
|
13
|
------------------------------------
|
13
|
------------------------------------
|
14
|
Imagine your server receives a mail from alice@example.com
|
14
|
Imagine your server receives a mail from alice@example.com
|
15
|
-that is to be forwarded. If example.com uses the Sender Policy Framework
|
|
|
16
|
-to indicate that all legit mails originate from their server, your
|
|
|
|
|
15
|
+that is to be forwarded. If example.com uses the Sender Policy Framework
|
|
|
16
|
+to indicate that all legit mails originate from their server, your
|
17
|
forwarded mail might be bounced, because you have no permission to send
|
17
|
forwarded mail might be bounced, because you have no permission to send
|
18
|
on behalf of example.com. The solution is that you map the address to
|
18
|
on behalf of example.com. The solution is that you map the address to
|
19
|
-your own domain, e.g.
|
|
|
|
|
19
|
+your own domain, e.g.
|
20
|
SRS0+xxxx=yy=example.com=alice@yourdomain.org (forward SRS). If the
|
20
|
SRS0+xxxx=yy=example.com=alice@yourdomain.org (forward SRS). If the
|
21
|
mail is bounced later and a notification arrives, you can extract the
|
21
|
mail is bounced later and a notification arrives, you can extract the
|
22
|
original address from the rewritten one (reverse SRS) and return the
|
22
|
original address from the rewritten one (reverse SRS) and return the
|
|
|
|
|
28
|
Building
|
28
|
Building
|
29
|
--------
|
29
|
--------
|
30
|
|
30
|
|
31
|
-PostSRSd requires a POSIX compatible system and CMake to build.
|
|
|
|
|
31
|
+PostSRSd requires a POSIX compatible system and CMake to build.
|
32
|
Optionally, help2man is used to create a manual page.
|
32
|
Optionally, help2man is used to create a manual page.
|
33
|
|
33
|
|
34
|
For convenience, a Makefile fragment is provided which calls CMake with
|
34
|
For convenience, a Makefile fragment is provided which calls CMake with
|
|
|
|
|
47
|
|
47
|
|
48
|
* `GENERATE_SRS_SECRET` (default: `ON`). Generate a random secret on install.
|
48
|
* `GENERATE_SRS_SECRET` (default: `ON`). Generate a random secret on install.
|
49
|
* `USE_APPARMOR` (default: `OFF`): Install an AppArmor profile for the daemon.
|
49
|
* `USE_APPARMOR` (default: `OFF`): Install an AppArmor profile for the daemon.
|
50
|
-* `INIT_FLAVOR` (default: auto-detect). Select the appriopriate startup
|
|
|
51
|
- script type. Must be one of (`upstart`,`sysv-lsb`,`sysv-redhat`) or `none`.
|
|
|
|
|
50
|
+* `INIT_FLAVOR` (default: auto-detect). Select the appriopriate startup
|
|
|
51
|
+ script type. Must be one of (`systemd`, `upstart`,`sysv-lsb`,`sysv-redhat`) or `none`.
|
52
|
* `CHROOT_DIR` (default: `${CMAKE_INSTALL_PREFIX}/lib/postsrsd`). Chroot jail
|
52
|
* `CHROOT_DIR` (default: `${CMAKE_INSTALL_PREFIX}/lib/postsrsd`). Chroot jail
|
53
|
for the daemon.
|
53
|
for the daemon.
|
54
|
* `SYSCONF_DIR` (default: `/etc`). Location of system configuration files.
|
54
|
* `SYSCONF_DIR` (default: `/etc`). Location of system configuration files.
|