{ lib, ... }: { config.services.freeswitch = { enable = true; enableReload = true; configTemplate = ./freeswitch; }; config.environment.etc.freeswitch.source = lib.mkForce "/home/lukegb/depot/ops/nixos/lib/freeswitch"; config.systemd.services.freeswitch-config-reload.before = lib.mkForce []; config.networking.firewall.extraCommands = lib.mkAfter '' # STUN iptables -A nixos-fw -p udp --dst 92.118.30.19 --dport 3478 -j ACCEPT ip6tables -A nixos-fw -p udp --dst 2a09:a443::1000 --dport 3478 -j ACCEPT iptables -A nixos-fw -p udp --dst 92.118.30.19 --dport 3479 -j ACCEPT ip6tables -A nixos-fw -p udp --dst 2a09:a443::1000 --dport 3479 -j ACCEPT # SIP iptables -A nixos-fw -p udp --dst 92.118.30.19 --dport 5060 -j ACCEPT iptables -A nixos-fw -p tcp --dst 92.118.30.19 --dport 5060 -j ACCEPT ip6tables -A nixos-fw -p udp --dst 2a09:a443::1000 --dport 5060 -j ACCEPT ip6tables -A nixos-fw -p tcp --dst 2a09:a443::1000 --dport 5060 -j ACCEPT # SIP + TLS iptables -A nixos-fw -p udp --dst 92.118.30.19 --dport 5061 -j ACCEPT iptables -A nixos-fw -p tcp --dst 92.118.30.19 --dport 5061 -j ACCEPT ip6tables -A nixos-fw -p udp --dst 2a09:a443::1000 --dport 5061 -j ACCEPT ip6tables -A nixos-fw -p tcp --dst 2a09:a443::1000 --dport 5061 -j ACCEPT # Trunk SIP #iptables -A nixos-fw -p udp --dst 92.118.30.19 --dport 5080 -j ACCEPT #iptables -A nixos-fw -p tcp --dst 92.118.30.19 --dport 5080 -j ACCEPT #ip6tables -A nixos-fw -p udp --dst 2a09:a443::1000 --dport 5080 -j ACCEPT #ip6tables -A nixos-fw -p tcp --dst 2a09:a443::1000 --dport 5080 -j ACCEPT # RTP iptables -A nixos-fw -p udp --dst 92.118.30.19 --dport 16384:32768 -j ACCEPT ip6tables -A nixos-fw -p udp --dst 2a09:a443::1000 --dport 16384:32748 -j ACCEPT ''; }