depot/ops/nixos/lib/freeswitch.nix

42 lines
1.8 KiB
Nix
Raw Normal View History

2023-12-14 11:30:26 +00:00
{ 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
'';
}