X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/aeaa46f3071de018b5c5e0f5678cb5b4082e3ddc..4b9d80c0887c9792ebfbbb1c3bed79dc19173b18:/cookbooks/geodns/recipes/default.rb diff --git a/cookbooks/geodns/recipes/default.rb b/cookbooks/geodns/recipes/default.rb index 43643c2f9..90ae979be 100644 --- a/cookbooks/geodns/recipes/default.rb +++ b/cookbooks/geodns/recipes/default.rb @@ -19,17 +19,25 @@ include_recipe "geoipupdate" +servers = search(:node, "roles:geodns").collect(&:name).sort + +servers << "dummy.example.com" if servers.empty? + package %w[ gdnsd ] +link "/etc/gdnsd/geoip/GeoLite2-Country.mmdb" do + to "#{node[:geoipupdate][:directory]}/GeoLite2-Country.mmdb" +end + directory "/etc/gdnsd/config.d" do owner "nobody" group "nogroup" mode "755" end -%w[tile nominatim].each do |zone| +%w[nominatim].each do |zone| %w[map resource weighted].each do |type| template "/etc/gdnsd/config.d/#{zone}.#{type}" do action :create_if_missing @@ -55,6 +63,7 @@ template "/etc/gdnsd/zones/geo.openstreetmap.org" do owner "root" group "root" mode "644" + variables :servers => servers notifies :restart, "service[gdnsd]" end @@ -69,11 +78,8 @@ systemd_service "gdnsd-reload" do user "root" exec_start "/bin/systemctl reload-or-restart gdnsd" standard_output "null" - private_tmp true - private_devices true - protect_system "full" - protect_home true - no_new_privileges true + sandbox true + restrict_address_families "AF_UNIX" end systemd_path "gdnsd-reload" do @@ -88,16 +94,14 @@ end firewall_rule "accept-dns-udp" do action :accept - source "net" - dest "fw" - proto "udp" + context :incoming + protocol :udp dest_ports "domain" end firewall_rule "accept-dns-tcp" do action :accept - source "net" - dest "fw" - proto "tcp:syn" + context :incoming + protocol :tcp dest_ports "domain" end