X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/9e4e90fddd2c71d77d811a32b15a568944accae8..1ece13ea17003cdc2679d8511b258c4b64197d13:/cookbooks/nominatim/recipes/default.rb diff --git a/cookbooks/nominatim/recipes/default.rb b/cookbooks/nominatim/recipes/default.rb index e0a7870d5..fc6d2e9e3 100644 --- a/cookbooks/nominatim/recipes/default.rb +++ b/cookbooks/nominatim/recipes/default.rb @@ -102,7 +102,7 @@ directory "#{basedir}/tablespaces" do mode "700" end -# Note: tablespaces must be exactly in the same location on each +# NOTE: tablespaces must be exactly in the same location on each # Nominatim instance when replication is in use. Therefore # use symlinks to canonical directory locations. node[:nominatim][:tablespaces].each do |name, location| @@ -370,7 +370,7 @@ directory "#{basedir}/etc" do mode "775" end -%w[user_agent referrer email].each do |name| +%w[user_agent referrer email generic].each do |name| file "#{basedir}/etc/nginx_blocked_#{name}.conf" do action :create_if_missing owner "nominatim" @@ -412,11 +412,13 @@ nginx_site "default" do action [:delete] end +frontends = search(:node, "recipes:web\\:\\:frontend") + nginx_site "nominatim" do template "nginx.erb" directory build_directory variables :pools => node[:nominatim][:fpm_pools], - :frontends => search(:node, "recipes:web\\:\\:frontend"), + :frontends => frontends, :confdir => "#{basedir}/etc", :ui_directory => ui_directory end @@ -454,9 +456,12 @@ end include_recipe "fail2ban" +frontend_addresses = frontends.collect { |f| f.ipaddresses(:role => :external) } + fail2ban_jail "nominatim_limit_req" do filter "nginx-limit-req" logpath "#{node[:nominatim][:logdir]}/nominatim.openstreetmap.org-error.log" ports [80, 443] maxretry 5 + ignoreips frontend_addresses.flatten end