Use postfix options for routing mails through tunnel #45
|
@ -270,8 +270,8 @@ in
|
||||||
interfaces.intl0 = {
|
interfaces.intl0 = {
|
||||||
ipv4.addresses = [
|
ipv4.addresses = [
|
||||||
{
|
{
|
||||||
address = "10.47.3.2";
|
address = "10.47.3.1";
|
||||||
prefixLength = 30;
|
prefixLength = 31;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
ipv4.routes = [
|
ipv4.routes = [
|
||||||
|
@ -405,7 +405,7 @@ in
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
RemainAfterExit = true;
|
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";
|
ExecStop = "${pkgs.iproute2}/bin/ip rule del table 3";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1305,14 +1305,14 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.postfix.mapFiles.sender_relay = pkgs.writeText "sender_relay" ''
|
services.postfix.mapFiles.sender_transport = pkgs.writeText "sender_transport" ''
|
||||||
m-labs-intl.com smtptun:
|
@m-labs-intl.com intltunnel:
|
||||||
* :
|
* :
|
||||||
'';
|
'';
|
||||||
systemd.services.postfix-rebuild-sender-relay = {
|
systemd.services.postfix-rebuild-sender-relay = {
|
||||||
description = "Postfix Rebuild Sender Dependent Relayhost Maps";
|
description = "Postfix Rebuild Sender Dependent Transport Maps";
|
||||||
serviceConfig = {
|
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" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
};
|
};
|
||||||
|
@ -1328,12 +1328,16 @@ in
|
||||||
} // (import /etc/nixos/secret/email_settings.nix);
|
} // (import /etc/nixos/secret/email_settings.nix);
|
||||||
services.postfix = {
|
services.postfix = {
|
||||||
config = {
|
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";
|
type = "unix";
|
||||||
command = "smtp";
|
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"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue