]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/roles/manifests/rtc.pp
04560759788672f7ebb0aa5524585592b3640a17
[dsa-puppet.git] / modules / roles / manifests / rtc.pp
1 class roles::rtc {
2
3         ssl::service { 'www.debian.org':
4         }
5
6         ssl::service { 'sip-ws.debian.org':
7         }
8
9         dnsextras::tlsa_record{ 'tlsa-xmpp':
10                 zone     => 'debian.org',
11                 certfile => "/etc/puppet/modules/ssl/files/servicecerts/www.debian.org.crt",
12                 port     => [5061, 5222, 5269],
13                 hostname => $::fqdn,
14         }
15
16         @ferm::rule { 'dsa-xmpp-client-ip4':
17                 domain      => 'ip',
18                 description => 'XMPP connections (client to server)',
19                 rule        => 'proto tcp dport (5222) ACCEPT'
20         }
21         @ferm::rule { 'dsa-xmpp-client-ip6':
22                 domain      => 'ip6',
23                 description => 'XMPP connections (client to server)',
24                 rule        => 'proto tcp dport (5222) ACCEPT'
25         }
26         @ferm::rule { 'dsa-xmpp-server-ip4':
27                 domain      => 'ip',
28                 description => 'XMPP connections (server to server)',
29                 rule        => 'proto tcp dport (5269) ACCEPT'
30         }
31         @ferm::rule { 'dsa-xmpp-server-ip6':
32                 domain      => 'ip6',
33                 description => 'XMPP connections (server to server)',
34                 rule        => 'proto tcp dport (5269) ACCEPT'
35         }
36
37         @ferm::rule { 'dsa-sip-ws-ip4':
38                 domain      => 'ip',
39                 description => 'SIP connections (WebSocket; for WebRTC)',
40                 rule        => 'proto tcp dport (443) ACCEPT'
41         }
42         @ferm::rule { 'dsa-sip-ws-ip6':
43                 domain      => 'ip6',
44                 description => 'SIP connections (WebSocket; for WebRTC)',
45                 rule        => 'proto tcp dport (443) ACCEPT'
46         }
47         @ferm::rule { 'dsa-sip-tls-ip4':
48                 domain      => 'ip',
49                 description => 'SIP connections (TLS)',
50                 rule        => 'proto tcp dport (5061) ACCEPT'
51         }
52         @ferm::rule { 'dsa-sip-tls-ip6':
53                 domain      => 'ip6',
54                 description => 'SIP connections (TLS)',
55                 rule        => 'proto tcp dport (5061) ACCEPT'
56         }
57         @ferm::rule { 'dsa-turn-ip4':
58                 domain      => 'ip',
59                 description => 'TURN connections',
60                 rule        => 'proto udp dport (3478) ACCEPT'
61         }
62         @ferm::rule { 'dsa-turn-ip6':
63                 domain      => 'ip6',
64                 description => 'TURN connections',
65                 rule        => 'proto udp dport (3478) ACCEPT'
66         }
67         @ferm::rule { 'dsa-turn-tls-ip4':
68                 domain      => 'ip',
69                 description => 'TURN connections (TLS)',
70                 rule        => 'proto tcp dport (5349) ACCEPT'
71         }
72         @ferm::rule { 'dsa-turn-tls-ip6':
73                 domain      => 'ip6',
74                 description => 'TURN connections (TLS)',
75                 rule        => 'proto tcp dport (5349) ACCEPT'
76         }
77         @ferm::rule { 'dsa-rtp-ip4':
78                 domain      => 'ip',
79                 description => 'RTP streams',
80                 rule        => 'proto udp dport (49152:65535) ACCEPT'
81         }
82         @ferm::rule { 'dsa-rtp-ip6':
83                 domain      => 'ip6',
84                 description => 'RTP streams',
85                 rule        => 'proto udp dport (49152:65535) ACCEPT'
86         }
87
88         file { '/etc/monit/monit.d/50rtc':
89                 ensure  => absent,
90         }
91 }