From 91ee18ccc735f0763b374dd989df50d2c401c763 Mon Sep 17 00:00:00 2001 From: Jeff Moe Date: Sun, 1 Sep 2024 15:52:11 -0600 Subject: [PATCH] SPF and reorg --- .../locale/en/LC_MESSAGES/mail-libre-is.po | 430 +++++++++--------- docs/_source/mail-libre-is.rst | 305 +++++++------ 2 files changed, 380 insertions(+), 355 deletions(-) diff --git a/docs/_source/locale/en/LC_MESSAGES/mail-libre-is.po b/docs/_source/locale/en/LC_MESSAGES/mail-libre-is.po index 6cd2dba..056b23e 100644 --- a/docs/_source/locale/en/LC_MESSAGES/mail-libre-is.po +++ b/docs/_source/locale/en/LC_MESSAGES/mail-libre-is.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Libre Developers Documentation 0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-09-01 15:42-0600\n" +"POT-Creation-Date: 2024-09-01 15:51-0600\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: en\n" @@ -34,538 +34,552 @@ msgid "" "up a web server..." msgstr "" -#: ../../../_source/mail-libre-is.rst:11 -msgid "Main Components" +#: ../../../_source/mail-libre-is.rst:9 +msgid "" +"The initial Administration section is for after the server has been set up " +"and configured. Below it is how the server is set up." msgstr "" -#: ../../../_source/mail-libre-is.rst:13 -msgid "This install is based on this guide:" +#: ../../../_source/mail-libre-is.rst:14 +msgid "Administration" msgstr "" #: ../../../_source/mail-libre-is.rst:15 -msgid "``_" +msgid "Now that everything is working..." msgstr "" #: ../../../_source/mail-libre-is.rst:17 +msgid "Log into the database using the mailadmin databse password:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:25 +msgid "List Virtual Domains" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:33 +msgid "List Virtual Users" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:41 +msgid "List Virtual Aliases" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:49 +msgid "Add Virtual Domain" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:51 +msgid "Add the domain:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:59 +msgid "Add a Mail User" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:60 +msgid "Generate a password with dovecot:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:66 +msgid "" +"Log into database as mailadmin and run this command, using the dovecot " +"generated password string, and set the domain and user email." +msgstr "" + +#: ../../../_source/mail-libre-is.rst:69 +msgid "Note, upstream docs are missing \"(\" and \")\" for VALUES." +msgstr "" + +#: ../../../_source/mail-libre-is.rst:79 +msgid "Add a User Alias" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:80 +msgid "" +"Example to add an alias. The first email should be the alias, the second " +"email is where it should go to." +msgstr "" + +#: ../../../_source/mail-libre-is.rst:91 +msgid "Change a User Password" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:92 +msgid "Generate string for new password:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:98 +msgid "Use that string:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:106 +msgid "Delete Virtual Domain" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:114 +msgid "Delete User" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:122 +msgid "Delete Alias" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:130 +msgid "Email Client Setup" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:131 +msgid "Set up mail clients thusly." +msgstr "" + +#: ../../../_source/mail-libre-is.rst:135 +msgid "Thunderbird" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:136 +msgid "Example email Address: username@libre.is" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:158 +msgid "Main Components" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:160 +msgid "This install is based on this guide:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:162 +msgid "``_" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:164 msgid "" "For more information and details about what is what, refer to that site." msgstr "" -#: ../../../_source/mail-libre-is.rst:20 ../../../_source/mail-libre-is.rst:252 +#: ../../../_source/mail-libre-is.rst:167 +#: ../../../_source/mail-libre-is.rst:399 msgid "Dovecot" msgstr "" -#: ../../../_source/mail-libre-is.rst:22 +#: ../../../_source/mail-libre-is.rst:169 msgid "``_" msgstr "" -#: ../../../_source/mail-libre-is.rst:25 ../../../_source/mail-libre-is.rst:98 +#: ../../../_source/mail-libre-is.rst:172 +#: ../../../_source/mail-libre-is.rst:245 msgid "MariaDB" msgstr "" -#: ../../../_source/mail-libre-is.rst:28 ../../../_source/mail-libre-is.rst:857 +#: ../../../_source/mail-libre-is.rst:175 +#: ../../../_source/mail-libre-is.rst:872 msgid "OpenDMARC" msgstr "" -#: ../../../_source/mail-libre-is.rst:30 +#: ../../../_source/mail-libre-is.rst:177 msgid "``_" msgstr "" -#: ../../../_source/mail-libre-is.rst:32 +#: ../../../_source/mail-libre-is.rst:179 msgid "``_" msgstr "" -#: ../../../_source/mail-libre-is.rst:34 ../../../_source/mail-libre-is.rst:150 +#: ../../../_source/mail-libre-is.rst:181 +#: ../../../_source/mail-libre-is.rst:297 msgid "Postfix" msgstr "" -#: ../../../_source/mail-libre-is.rst:36 +#: ../../../_source/mail-libre-is.rst:183 msgid "``_" msgstr "" -#: ../../../_source/mail-libre-is.rst:40 +#: ../../../_source/mail-libre-is.rst:187 msgid "DNS" msgstr "" -#: ../../../_source/mail-libre-is.rst:41 +#: ../../../_source/mail-libre-is.rst:188 msgid "Add a DNS mx record, so it returns result like this:" msgstr "" -#: ../../../_source/mail-libre-is.rst:48 +#: ../../../_source/mail-libre-is.rst:195 msgid "Set IP for mail.libre.is. Set up reverse DNS records." msgstr "" -#: ../../../_source/mail-libre-is.rst:53 +#: ../../../_source/mail-libre-is.rst:200 msgid "Debian" msgstr "" -#: ../../../_source/mail-libre-is.rst:54 +#: ../../../_source/mail-libre-is.rst:201 msgid "" "Install Debian stable (bookworm). Install rsyslog for old school convenience:" msgstr "" -#: ../../../_source/mail-libre-is.rst:63 +#: ../../../_source/mail-libre-is.rst:210 msgid "Firewall" msgstr "" -#: ../../../_source/mail-libre-is.rst:64 +#: ../../../_source/mail-libre-is.rst:211 msgid "Open TCP ports." msgstr "" -#: ../../../_source/mail-libre-is.rst:84 +#: ../../../_source/mail-libre-is.rst:231 msgid "Apache" msgstr "" -#: ../../../_source/mail-libre-is.rst:85 +#: ../../../_source/mail-libre-is.rst:232 msgid "" "The Apache webserver is used out of laziness as it allows easy certificate " "updates with certbot. A webmail server won't be running on the main mail " "server." msgstr "" -#: ../../../_source/mail-libre-is.rst:94 +#: ../../../_source/mail-libre-is.rst:241 msgid "Open up firewall ports 80 and 443." msgstr "" -#: ../../../_source/mail-libre-is.rst:99 +#: ../../../_source/mail-libre-is.rst:246 msgid "The main database server." msgstr "" -#: ../../../_source/mail-libre-is.rst:107 +#: ../../../_source/mail-libre-is.rst:254 msgid "Add databases. Change password to something secure." msgstr "" -#: ../../../_source/mail-libre-is.rst:151 +#: ../../../_source/mail-libre-is.rst:298 msgid "The main SMTP mail server." msgstr "" -#: ../../../_source/mail-libre-is.rst:158 +#: ../../../_source/mail-libre-is.rst:305 msgid "" "Set up postfix to use MariaDB. Edit /etc/postfix/mysql-virtual-mailbox-" "domains.cf and add below, using the mailserver password used in MariaDB." msgstr "" -#: ../../../_source/mail-libre-is.rst:171 +#: ../../../_source/mail-libre-is.rst:318 msgid "Edit /etc/postfix/mysql-virtual-mailbox-maps.cf and add below contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:181 +#: ../../../_source/mail-libre-is.rst:328 msgid "Edit /etc/postfix/mysql-virtual-alias-maps.cf and add below:" msgstr "" -#: ../../../_source/mail-libre-is.rst:191 +#: ../../../_source/mail-libre-is.rst:338 msgid "Edit /etc/postfix/mysql-email2email.cf and add:" msgstr "" -#: ../../../_source/mail-libre-is.rst:201 +#: ../../../_source/mail-libre-is.rst:348 msgid "Then run these commands:" msgstr "" -#: ../../../_source/mail-libre-is.rst:218 +#: ../../../_source/mail-libre-is.rst:365 msgid "Redis" msgstr "" -#: ../../../_source/mail-libre-is.rst:219 +#: ../../../_source/mail-libre-is.rst:366 msgid "" "Note, the licensing of Redis has gone bad. The version in Debian is OK. But " "in the future, probably replace with a fork." msgstr "" -#: ../../../_source/mail-libre-is.rst:228 +#: ../../../_source/mail-libre-is.rst:375 msgid "rspamd" msgstr "" -#: ../../../_source/mail-libre-is.rst:229 +#: ../../../_source/mail-libre-is.rst:376 msgid "Spam control." msgstr "" -#: ../../../_source/mail-libre-is.rst:237 +#: ../../../_source/mail-libre-is.rst:384 msgid "Certbot" msgstr "" -#: ../../../_source/mail-libre-is.rst:238 +#: ../../../_source/mail-libre-is.rst:385 msgid "" "Encryption certificates with Let's Encrypt. Not using an Apache webserver on " "the mail server makes getting new certificates a bit more complex." msgstr "" -#: ../../../_source/mail-libre-is.rst:253 +#: ../../../_source/mail-libre-is.rst:400 msgid "Just using encrypted IMAPS, not POP." msgstr "" -#: ../../../_source/mail-libre-is.rst:260 +#: ../../../_source/mail-libre-is.rst:407 msgid "" "Note, since IPv6 isn't being used, the dovecot install barfs. Edit /etc/" "dovecot/dovecot.conf and add this line, where appropriate:" msgstr "" -#: ../../../_source/mail-libre-is.rst:267 +#: ../../../_source/mail-libre-is.rst:414 msgid "" "Note, this is removing the \"::\" from listen, which using IPv6. Then re-run " "the install so the packages are happy. Note, the re-install won't overwrite " "the \"listen\" change." msgstr "" -#: ../../../_source/mail-libre-is.rst:276 +#: ../../../_source/mail-libre-is.rst:423 msgid "Add user and set up configs" msgstr "" -#: ../../../_source/mail-libre-is.rst:304 +#: ../../../_source/mail-libre-is.rst:451 msgid "Edit /etc/dovecot/conf.d/10-master.conf and add:" msgstr "" -#: ../../../_source/mail-libre-is.rst:315 +#: ../../../_source/mail-libre-is.rst:462 msgid "" "Edit /etc/dovecot/conf.d/10-ssl.conf, set key locations, and make it " "required." msgstr "" -#: ../../../_source/mail-libre-is.rst:324 +#: ../../../_source/mail-libre-is.rst:471 msgid "" "Edit /etc/dovecot/dovecot-sql.conf.ext file and add these lines at the " "bottom, changing the password to the mailserver database password." msgstr "" -#: ../../../_source/mail-libre-is.rst:347 +#: ../../../_source/mail-libre-is.rst:494 msgid "Set file permissions." msgstr "" -#: ../../../_source/mail-libre-is.rst:354 +#: ../../../_source/mail-libre-is.rst:501 msgid "Edit /etc/dovecot/conf.d/10-master.conf and change to:" msgstr "" -#: ../../../_source/mail-libre-is.rst:367 +#: ../../../_source/mail-libre-is.rst:514 msgid "Restart dovecot server." msgstr "" -#: ../../../_source/mail-libre-is.rst:373 +#: ../../../_source/mail-libre-is.rst:520 msgid "Run this to tell postfix to deliver to dovecot:" msgstr "" -#: ../../../_source/mail-libre-is.rst:379 +#: ../../../_source/mail-libre-is.rst:526 msgid "Edit /etc/dovecot/conf.d/20-lmtp.conf and change line like this:" msgstr "" -#: ../../../_source/mail-libre-is.rst:386 +#: ../../../_source/mail-libre-is.rst:533 msgid "Restart dovecot again...." msgstr "" -#: ../../../_source/mail-libre-is.rst:394 +#: ../../../_source/mail-libre-is.rst:541 msgid "More postfix" msgstr "" -#: ../../../_source/mail-libre-is.rst:395 +#: ../../../_source/mail-libre-is.rst:542 msgid "More postfix configuration, now that the above is set up." msgstr "" -#: ../../../_source/mail-libre-is.rst:397 +#: ../../../_source/mail-libre-is.rst:544 msgid "Set postfix to use dovecot for authentication:" msgstr "" -#: ../../../_source/mail-libre-is.rst:411 +#: ../../../_source/mail-libre-is.rst:558 msgid "Edit /etc/postfix/master.cf and change thusly:" msgstr "" -#: ../../../_source/mail-libre-is.rst:428 -#: ../../../_source/mail-libre-is.rst:555 +#: ../../../_source/mail-libre-is.rst:575 +#: ../../../_source/mail-libre-is.rst:702 msgid "Run:" msgstr "" -#: ../../../_source/mail-libre-is.rst:434 +#: ../../../_source/mail-libre-is.rst:581 msgid "Restart postfix:" msgstr "" -#: ../../../_source/mail-libre-is.rst:440 +#: ../../../_source/mail-libre-is.rst:587 msgid "" "Does it ever end? Edit /etc/postfix/master.cf and add to bottom of " "submission section." msgstr "" -#: ../../../_source/mail-libre-is.rst:452 +#: ../../../_source/mail-libre-is.rst:599 msgid "" "Allow aliases to send by adding this file (XXX check OK) /etc/postfix/" "aliases.cf with this contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:460 +#: ../../../_source/mail-libre-is.rst:607 msgid "Make sure all is good:" msgstr "" -#: ../../../_source/mail-libre-is.rst:468 +#: ../../../_source/mail-libre-is.rst:615 msgid "rspamd Configuration" msgstr "" -#: ../../../_source/mail-libre-is.rst:469 +#: ../../../_source/mail-libre-is.rst:616 msgid "Configure postfix for rspamd." msgstr "" -#: ../../../_source/mail-libre-is.rst:477 +#: ../../../_source/mail-libre-is.rst:624 msgid "Edit /etc/rspamd/override.d/milter_headers.conf and add:" msgstr "" -#: ../../../_source/mail-libre-is.rst:483 +#: ../../../_source/mail-libre-is.rst:630 msgid "Edit /etc/dovecot/conf.d/90-sieve.conf and change:" msgstr "" -#: ../../../_source/mail-libre-is.rst:489 +#: ../../../_source/mail-libre-is.rst:636 msgid "Create dir for new sieve filter:" msgstr "" -#: ../../../_source/mail-libre-is.rst:495 +#: ../../../_source/mail-libre-is.rst:642 msgid "" "Create /etc/dovecot/sieve-after/spam-to-folder.sieve with these contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:506 +#: ../../../_source/mail-libre-is.rst:653 msgid "Then compile it:" msgstr "" -#: ../../../_source/mail-libre-is.rst:512 +#: ../../../_source/mail-libre-is.rst:659 msgid "Set up redis by adding /etc/rspamd/override.d/redis.conf with this:" msgstr "" -#: ../../../_source/mail-libre-is.rst:518 +#: ../../../_source/mail-libre-is.rst:665 msgid "" "Add this /etc/rspamd/override.d/classifier-bayes.conf with below contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:524 +#: ../../../_source/mail-libre-is.rst:671 msgid "Add /etc/rspamd/local.d/classifier-bayes.conf with:" msgstr "" -#: ../../../_source/mail-libre-is.rst:530 +#: ../../../_source/mail-libre-is.rst:677 msgid "Edit /etc/dovecot/conf.d/20-imap.conf and change:" msgstr "" -#: ../../../_source/mail-libre-is.rst:536 +#: ../../../_source/mail-libre-is.rst:683 msgid "" "Edit /etc/dovecot/conf.d/90-sieve.conf and add below to \"plugins\" section:" msgstr "" -#: ../../../_source/mail-libre-is.rst:561 +#: ../../../_source/mail-libre-is.rst:708 msgid "Create /etc/dovecot/sieve/learn-spam.sieve with contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:568 +#: ../../../_source/mail-libre-is.rst:715 msgid "Create /etc/dovecot/sieve/learn-ham.sieve and add:" msgstr "" -#: ../../../_source/mail-libre-is.rst:582 +#: ../../../_source/mail-libre-is.rst:729 msgid "Run this to compile:" msgstr "" -#: ../../../_source/mail-libre-is.rst:591 +#: ../../../_source/mail-libre-is.rst:738 msgid "Create /etc/dovecot/sieve/rspamd-learn-spam.sh with contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:598 +#: ../../../_source/mail-libre-is.rst:745 msgid "Create /etc/dovecot/sieve/rspamd-learn-ham.sh with contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:605 +#: ../../../_source/mail-libre-is.rst:752 msgid "Set ownership and permissions on scripts:" msgstr "" -#: ../../../_source/mail-libre-is.rst:614 +#: ../../../_source/mail-libre-is.rst:761 msgid "Unbound" msgstr "" -#: ../../../_source/mail-libre-is.rst:615 +#: ../../../_source/mail-libre-is.rst:762 msgid "" "For proper spam filtering with rspam, unbound DNS resolver should be used." msgstr "" -#: ../../../_source/mail-libre-is.rst:621 +#: ../../../_source/mail-libre-is.rst:768 msgid "Change /etc/resolv.conf to:" msgstr "" -#: ../../../_source/mail-libre-is.rst:628 +#: ../../../_source/mail-libre-is.rst:775 msgid "Also add to /etc/rspamd/local.d/options.inc" msgstr "" -#: ../../../_source/mail-libre-is.rst:638 +#: ../../../_source/mail-libre-is.rst:785 msgid "DKIM" msgstr "" -#: ../../../_source/mail-libre-is.rst:639 +#: ../../../_source/mail-libre-is.rst:786 msgid "Set up DNS for DKIM." msgstr "" -#: ../../../_source/mail-libre-is.rst:648 +#: ../../../_source/mail-libre-is.rst:795 msgid "" "Add a 2024090101._domainkey TXT DNS record at the ISP, with contents of the " "\"p=\" and the rest, for example:" msgstr "" -#: ../../../_source/mail-libre-is.rst:655 +#: ../../../_source/mail-libre-is.rst:802 msgid "Create /etc/rspamd/local.d/dkim_signing.conf with contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:662 +#: ../../../_source/mail-libre-is.rst:809 msgid "Create /etc/rspamd/dkim_selectors.map with contents:" msgstr "" -#: ../../../_source/mail-libre-is.rst:668 +#: ../../../_source/mail-libre-is.rst:815 msgid "Restart again..." msgstr "" -#: ../../../_source/mail-libre-is.rst:674 +#: ../../../_source/mail-libre-is.rst:821 msgid "" "Take teh contents from running dkim_keygen above and add it this file: /var/" "lib/rspamd/dkim/libre.is.2024090101.key" msgstr "" -#: ../../../_source/mail-libre-is.rst:677 +#: ../../../_source/mail-libre-is.rst:824 msgid "" "Just add the PRIVATE KEY section, not the last two lines. Fix it's " "permissions:" msgstr "" -#: ../../../_source/mail-libre-is.rst:687 +#: ../../../_source/mail-libre-is.rst:834 +msgid "SPF" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:835 +msgid "Set up SPF." +msgstr "" + +#: ../../../_source/mail-libre-is.rst:837 +msgid "Add a DNS TXT record like this:" +msgstr "" + +#: ../../../_source/mail-libre-is.rst:845 msgid "Spamhaus" msgstr "" -#: ../../../_source/mail-libre-is.rst:688 +#: ../../../_source/mail-libre-is.rst:846 msgid "" "Spamhaus may automagically list the IP to be blocked when it is new. To " "remove, just go to:" msgstr "" -#: ../../../_source/mail-libre-is.rst:691 +#: ../../../_source/mail-libre-is.rst:849 msgid "``_" msgstr "" -#: ../../../_source/mail-libre-is.rst:693 +#: ../../../_source/mail-libre-is.rst:851 msgid "" "Then enter the IP address of the server and fill out the form. They will " "send a confirmation email with a link. Go to that link and it will be " "immediately removed." msgstr "" -#: ../../../_source/mail-libre-is.rst:699 -msgid "Administration" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:700 -msgid "Now that everything is working..." -msgstr "" - -#: ../../../_source/mail-libre-is.rst:702 -msgid "Log into the database using the mailadmin databse password:" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:710 -msgid "List Virtual Domains" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:718 -msgid "List Virtual Users" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:726 -msgid "List Virtual Aliases" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:734 -msgid "Add Virtual Domain" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:736 -msgid "Add the domain:" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:744 -msgid "Add a Mail User" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:745 -msgid "Generate a password with dovecot:" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:751 -msgid "" -"Log into database as mailadmin and run this command, using the dovecot " -"generated password string, and set the domain and user email." -msgstr "" - -#: ../../../_source/mail-libre-is.rst:754 -msgid "Note, upstream docs are missing \"(\" and \")\" for VALUES." -msgstr "" - -#: ../../../_source/mail-libre-is.rst:764 -msgid "Add a User Alias" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:765 -msgid "" -"Example to add an alias. The first email should be the alias, the second " -"email is where it should go to." -msgstr "" - -#: ../../../_source/mail-libre-is.rst:776 -msgid "Change a User Password" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:777 -msgid "Generate string for new password:" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:783 -msgid "Use that string:" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:791 -msgid "Delete Virtual Domain" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:799 -msgid "Delete User" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:807 -msgid "Delete Alias" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:815 -msgid "Email Client Setup" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:816 -msgid "Set up mail clients thusly." -msgstr "" - -#: ../../../_source/mail-libre-is.rst:820 -msgid "Thunderbird" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:821 -msgid "Example email Address: username@libre.is" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:842 +#: ../../../_source/mail-libre-is.rst:857 msgid "Other" msgstr "" -#: ../../../_source/mail-libre-is.rst:843 +#: ../../../_source/mail-libre-is.rst:858 msgid "Perhaps these too." msgstr "" -#: ../../../_source/mail-libre-is.rst:850 +#: ../../../_source/mail-libre-is.rst:865 msgid "Perhaps easier to admin with this script." msgstr "" -#: ../../../_source/mail-libre-is.rst:852 +#: ../../../_source/mail-libre-is.rst:867 msgid "``_" msgstr "" -#: ../../../_source/mail-libre-is.rst:858 +#: ../../../_source/mail-libre-is.rst:873 msgid "Requires database setup." msgstr "" - -#: ../../../_source/mail-libre-is.rst:867 -msgid "SPF" -msgstr "" - -#: ../../../_source/mail-libre-is.rst:868 -msgid "Set up SPF." -msgstr "" diff --git a/docs/_source/mail-libre-is.rst b/docs/_source/mail-libre-is.rst index 008a156..9a57d70 100644 --- a/docs/_source/mail-libre-is.rst +++ b/docs/_source/mail-libre-is.rst @@ -6,6 +6,153 @@ Documentation for Libre mail server. Setting up Internet mail servers is a pain. It's nothing like just setting up a web server... +The initial Administration section is for after the server has +been set up and configured. Below it is how the server is set up. + + +Administration +============== +Now that everything is working... + +Log into the database using the mailadmin databse password: + +.. code-block:: sh + + mariadb -u mailadmin -p mailserver + + +List Virtual Domains +-------------------- + +.. code-block:: sql + + SELECT * FROM virtual_domains; + + +List Virtual Users +------------------ + +.. code-block:: sql + + SELECT * FROM virtual_users; + + +List Virtual Aliases +-------------------- + +.. code-block:: sql + + SELECT * FROM virtual_aliases; + + +Add Virtual Domain +------------------ + +Add the domain: + +.. code-block:: sql + + INSERT INTO virtual_domains (name) VALUES ("example.org"); + + +Add a Mail User +--------------- +Generate a password with dovecot: + +.. code-block:: sh + + sudo dovecot pw -s BLF-CRYPT + +Log into database as mailadmin and run this command, using the dovecot +generated password string, and set the domain and user email. + +Note, upstream docs are missing "(" and ")" for VALUES. + +.. code-block:: sql + + INSERT INTO virtual_users (domain_id, email, password) VALUES + ((SELECT id FROM virtual_domains WHERE name='example.org'), + 'john@example.org','{BLF-CRYPT}$2y$05$.We…'); + + +Add a User Alias +---------------- +Example to add an alias. The first email should be the alias, +the second email is where it should go to. + +.. code-block:: sql + + INSERT INTO virtual_aliases (domain_id, source, destination) VALUES + ( (SELECT id FROM virtual_domains WHERE name='example.org'), + 'melissa@example.org', 'juila@example.net'); + + +Change a User Password +---------------------- +Generate string for new password: + +.. code-block:: sh + + sudo dovecot pw -s BLF-CRYPT + +Use that string: + +.. code-block:: sql + + UPDATE virtual_users SET password='{BLF-CRYPT}$2y$05$.We…' WHERE email='email@address'; + + +Delete Virtual Domain +--------------------- + +.. code-block:: sql + + DELETE FROM virtual_domains where name='example.org'; + + +Delete User +----------- + +.. code-block:: sql + + DELETE FROM virtual_users WHERE email='john@example.org'; + + +Delete Alias +------------ + +.. code-block:: sql + + DELETE FROM virtual_aliases WHERE source='melissa@example.org'; + + +Email Client Setup +================== +Set up mail clients thusly. + + +Thunderbird +----------- +Example email Address: username@libre.is + +.. code-block:: cfg + + Incoming Server + Hostname: mail.libre.is + Protocol: IMAP + Port: 993 + Connection Security: SSL/TLS + Authenication Method: Normal Password + Username: username@libre.is (same as email address) + + Outgoing Server + Hostname: mail.libre.is + Port: 587 + Connection Security: STARTTLS + Authenication Method: Normal Password + Username: username@libre.is (same as email address) + + Main Components =============== @@ -683,6 +830,17 @@ Fix it's permissions: sudo chmod 400 /var/lib/rspamd/dkim/libre.is.2024090101.key +SPF +=== +Set up SPF. + +Add a DNS TXT record like this: + +.. code-block:: cfg + + v=spf1 mx a ip4:70.39.110.156/32 include:mail.libre.is -all + + Spamhaus ======== Spamhaus may automagically list the IP to be blocked when it is new. @@ -695,149 +853,6 @@ They will send a confirmation email with a link. Go to that link and it will be immediately removed. -Administration -============== -Now that everything is working... - -Log into the database using the mailadmin databse password: - -.. code-block:: sh - - mariadb -u mailadmin -p mailserver - - -List Virtual Domains --------------------- - -.. code-block:: sql - - SELECT * FROM virtual_domains; - - -List Virtual Users ------------------- - -.. code-block:: sql - - SELECT * FROM virtual_users; - - -List Virtual Aliases --------------------- - -.. code-block:: sql - - SELECT * FROM virtual_aliases; - - -Add Virtual Domain ------------------- - -Add the domain: - -.. code-block:: sql - - INSERT INTO virtual_domains (name) VALUES ("example.org"); - - -Add a Mail User ---------------- -Generate a password with dovecot: - -.. code-block:: sh - - sudo dovecot pw -s BLF-CRYPT - -Log into database as mailadmin and run this command, using the dovecot -generated password string, and set the domain and user email. - -Note, upstream docs are missing "(" and ")" for VALUES. - -.. code-block:: sql - - INSERT INTO virtual_users (domain_id, email, password) VALUES - ((SELECT id FROM virtual_domains WHERE name='example.org'), - 'john@example.org','{BLF-CRYPT}$2y$05$.We…'); - - -Add a User Alias ----------------- -Example to add an alias. The first email should be the alias, -the second email is where it should go to. - -.. code-block:: sql - - INSERT INTO virtual_aliases (domain_id, source, destination) VALUES - ( (SELECT id FROM virtual_domains WHERE name='example.org'), - 'melissa@example.org', 'juila@example.net'); - - -Change a User Password ----------------------- -Generate string for new password: - -.. code-block:: sh - - sudo dovecot pw -s BLF-CRYPT - -Use that string: - -.. code-block:: sql - - UPDATE virtual_users SET password='{BLF-CRYPT}$2y$05$.We…' WHERE email='email@address'; - - -Delete Virtual Domain ---------------------- - -.. code-block:: sql - - DELETE FROM virtual_domains where name='example.org'; - - -Delete User ------------ - -.. code-block:: sql - - DELETE FROM virtual_users WHERE email='john@example.org'; - - -Delete Alias ------------- - -.. code-block:: sql - - DELETE FROM virtual_aliases WHERE source='melissa@example.org'; - - -Email Client Setup -================== -Set up mail clients thusly. - - -Thunderbird ------------ -Example email Address: username@libre.is - -.. code-block:: cfg - - Incoming Server - Hostname: mail.libre.is - Protocol: IMAP - Port: 993 - Connection Security: SSL/TLS - Authenication Method: Normal Password - Username: username@libre.is (same as email address) - - Outgoing Server - Hostname: mail.libre.is - Port: 587 - Connection Security: STARTTLS - Authenication Method: Normal Password - Username: username@libre.is (same as email address) - - Other ===== Perhaps these too. @@ -863,8 +878,4 @@ Requires database setup. sudo apt install opendmarc -SPF -=== -Set up SPF. -