diff options
-rw-r--r-- | README.md | 43 |
1 files changed, 43 insertions, 0 deletions
@@ -57,3 +57,46 @@ If you have passwordless sudo configured --ask-become-pass is not necessary. | |||
57 | The playbook finishes by generating the DNS records required for mail verification. | 57 | The playbook finishes by generating the DNS records required for mail verification. |
58 | You can find these records under /home/root/dns\_records once the playbook finishes. | 58 | You can find these records under /home/root/dns\_records once the playbook finishes. |
59 | The records are in BIND9 format but the values can be extracted for use on any platform. | 59 | The records are in BIND9 format but the values can be extracted for use on any platform. |
60 | |||
61 | |||
62 | ## FAQ | ||
63 | |||
64 | ### Distros | ||
65 | I have only tested this on Debian 12 and that is currently the only "supported" distro. | ||
66 | |||
67 | This will likely not work on Debian 11 due to some changes with the spamassassin package, but could easily be modified to work. | ||
68 | |||
69 | It will likely also work with current versions of Ubuntu but may require some modifications there also. | ||
70 | |||
71 | YMMV with any non Debian-based distro. | ||
72 | |||
73 | ### Users | ||
74 | This configuration uses the local system for authentication. | ||
75 | Additionally, postfix login and local maps are used so that not every user on the system can receive mail. | ||
76 | |||
77 | To create a new mail user use the following script: | ||
78 | ``` | ||
79 | # create unix account - do not allow user to login to system | ||
80 | useradd --shell /usr/sbin/nologin --create-home --user-group $username | ||
81 | |||
82 | # login map | ||
83 | echo "$username@$(cat /etc/mailname) $username" >> /etc/postfix/login_maps | ||
84 | postmap /etc/postfix/login_maps | ||
85 | |||
86 | # local recipient map | ||
87 | echo "$username $username" >> /etc/postfix/local_maps | ||
88 | postmap /etc/postfix/local_maps | ||
89 | |||
90 | # reload postfix to make changes live | ||
91 | postfix reload | ||
92 | |||
93 | # set the user's password | ||
94 | passwd $username | ||
95 | ``` | ||
96 | This will create a user on the system that is allowed to send and receive mail. | ||
97 | As a security precaution, the user's shell is set to /usr/sbin/nologin to prevent | ||
98 | management access to the server. | ||
99 | |||
100 | ### Multiple Domains | ||
101 | The playbook will configure the mail server for a single domain. However, there is nothing in the configuration preventing a mult-domain setup. | ||
102 | Setting up multiple domains will require some manual configuration of postfix main.cf. | ||