Use postfix options for routing mails through tunnel #45

Closed
esavkin wants to merge 15 commits from enable-mail-proxy-and-tunnel into master
1 changed files with 14 additions and 10 deletions
Showing only changes of commit bbfee50b53 - Show all commits

View File

@ -270,8 +270,8 @@ in
interfaces.intl0 = {
ipv4.addresses = [
{
address = "10.47.3.2";
prefixLength = 30;
address = "10.47.3.1";
prefixLength = 31;
}
];
ipv4.routes = [
@ -405,7 +405,7 @@ in
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
ExecStart = "${pkgs.iproute2}/bin/ip rule add from 10.47.3.0/30 table 3";
ExecStart = "${pkgs.iproute2}/bin/ip rule add from 10.47.3.0/31 table 3";
ExecStop = "${pkgs.iproute2}/bin/ip rule del table 3";
};
};
@ -1305,14 +1305,14 @@ in
};
};
services.postfix.mapFiles.sender_relay = pkgs.writeText "sender_relay" ''
m-labs-intl.com smtptun:
services.postfix.mapFiles.sender_transport = pkgs.writeText "sender_transport" ''
@m-labs-intl.com intltunnel:
* :
'';
systemd.services.postfix-rebuild-sender-relay = {
description = "Postfix Rebuild Sender Dependent Relayhost Maps";
description = "Postfix Rebuild Sender Dependent Transport Maps";
serviceConfig = {
ExecStart = "${pkgs.postfix}/sbin/postmap /var/lib/postfix/conf/sender_relay";
ExecStart = "${pkgs.postfix}/sbin/postmap /var/lib/postfix/conf/sender_transport";
};
wantedBy = [ "multi-user.target" ];
};
@ -1328,12 +1328,16 @@ in
} // (import /etc/nixos/secret/email_settings.nix);
services.postfix = {
config = {
sender_dependent_relayhost_maps = "hash:/var/lib/postfix/conf/sender_relay";
sender_dependent_default_transport_maps = "hash:/var/lib/postfix/conf/sender_transport";
};
masterConfig."smtptun" = {
masterConfig."intltunnel" = {
type = "unix";
command = "smtp";
args = [ "-o" "smtp_bind_address=10.47.3.2" ];
args = [
"-o" "smtp_bind_address=10.47.3.1"
"-o" "inet_interfaces=10.47.3.1"
"-o" "inet_protocols=ipv4"
];
};
};