From d3fa00c3b5e763aafd287c881cf7d73bcc21705f Mon Sep 17 00:00:00 2001 From: Marek Paśnikowski Date: Fri, 8 May 2026 09:30:20 +0200 Subject: move SMTP configuration to a dedicated module --- users/id1000.scm | 104 ------------------------------------------------------- 1 file changed, 104 deletions(-) (limited to 'users/id1000.scm') diff --git a/users/id1000.scm b/users/id1000.scm index 1062c55..aec6ca3 100644 --- a/users/id1000.scm +++ b/users/id1000.scm @@ -49,20 +49,6 @@ ;;;;; -(define aliases-file - ((@ (guix gexp) mixed-text-file) - "aliases" - "@ vmail\n")) - -(define blacklist-file - ((@ (guix gexp) mixed-text-file) - "blacklist" - "@yahoo.com.cn\n" - "@qq.com\n" - "@fnac.com\n" - "@just-aero.us\n" - "@elitetorrent1.com\n")) - (define dkimproxy-signatures-marekpasnikowski (list dkimproxy-signature-dkim dkimproxy-signature-domainkeys)) @@ -116,15 +102,6 @@ (auto "subscribe") (special-use (list "\\Trash")))) -(define relays-file - ((@ (guix gexp) mixed-text-file) - "other-relays" - "mx1.forwardemail.net\n" - "mx2.forwardemail.net\n")) - -(define smtpd-keys - "/secrets/smtpd") - ;;; (define dkimproxy-sender-marekpasnikowski @@ -172,76 +149,6 @@ "uid=vmail")) (driver "static"))) -(define (opensmtpd-config interface - domain) - ((@ (guix gexp) mixed-text-file) - "smtpd.conf" - "# This is the smtpd server system-wide configuration file.\n" - "# See smtpd.conf(5) for more information.\n" - "\n" - "# My TLS certificate and key\n" - "pki marekpasnikowski.pl cert \"/etc/letsencrypt/live/" domain "/fullchain.pem\"\n" - "pki marekpasnikowski.pl key \"/etc/letsencrypt/live/" domain "/privkey.pem\"\n" - "\n" - "# Edit this file to add add more virtual users (passwords are read in that file\n" - "# instead of /etc/passwd\n" - "table passwd file:" smtpd-keys "\n" - "\n" - "# table other-relays file:" relays-file "\n" - "table blacklist file:" blacklist-file "\n" - "\n" - "# A simple spam filter\n" - "# filter spam-filter phase mail-from match mail-from reject \"555\"\n" - "\n" - "# port 25 is used only for receiving from external servers, and they may start\n" - "# a TLS session if they want.\n" - "listen on " interface " port 25 # tls pki marekpasnikowski.pl filter spam-filter\n" - "\n" - "# For sending messages from outside of this server, you need to authenticate and\n" - "# use TLS.\n" - "listen on " interface " port 465 smtps pki marekpasnikowski.pl mask-src auth \n" - "\n" - "# Localhost is used by the .onion, so we use the same configuration for \n" - "# local connections." - "listen on lo port 25 tls pki marekpasnikowski.pl filter spam-filter\n" - "# Since incoming connection uses tor, we don't need tls, but still require\n" - "# authentication; we're not a relay\n" - "# listen on lo port 587 tls pki marekpasnikowski.pl mask-src auth \n" - "\n" - "# DKIMproxy\n" - "listen on lo port 10028 tag DKIM_OUT\n" - "\n" - "# The socket is considered an internal connection\n" - "listen on socket mask-src\n" - "\n" - "# Maybe it'll work better if we connect to gmail only with v4?\n" - "# limit mta for domain gmail.com inet4\n" - "\n" - "# TODO: manage these files directly in the configuration?\n" - "# If you edit the file, you have to run \"smtpctl update table aliases\"\n" - "table aliases file:" aliases-file "\n" - "\n" - "# We define some actions\n" - "action receive lmtp \"/var/run/dovecot/lmtp\" rcpt-to virtual \n" - "action godkim relay host smtp://localhost:10027\n" - "action outbound relay src \"192.168.1.2\" helo " domain "\n" - "\n" - "# We accept to relay any mail from authenticated users\n" - "match for any from any auth action godkim\n" - "match tag DKIM_OUT for any action outbound\n" - "\n" - "# Then, we reject on some other conditions:\n" - "\n" - "# If the mail tries to impersonate us\n" - "# match !from src mail-from \"@marekpasnikowski.pl\" for any reject\n" - "\n" - "# If it comes from someone on the blacklist\n" - "match from any mail-from reject\n" - "\n" - "# Finally, if we accept incoming messages\n" - "match from any for domain \"marekpasnikowski.pl\" action receive\n" - "match for local action receive\n" )) - (define ssl-cert-path (string-append "