X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fbacula%2Ftemplates%2Fbacula-sd.conf.erb;h=a46d9739ba7ac365b2ad6962f8b6b17d51f9acf8;hb=51c075b8a16d51f953a49a8cb1afd5b942424153;hp=ee1dd1cda46a87357b350a9033b089f952b4826c;hpb=0b542d43d901e68c421958d59642a67f5ebbbd53;p=mirror%2Fdsa-puppet.git diff --git a/modules/bacula/templates/bacula-sd.conf.erb b/modules/bacula/templates/bacula-sd.conf.erb index ee1dd1cda..a46d9739b 100644 --- a/modules/bacula/templates/bacula-sd.conf.erb +++ b/modules/bacula/templates/bacula-sd.conf.erb @@ -5,35 +5,55 @@ # For Bacula release 5.0.1 (24 February 2010) -- debian 5.0.4 Storage { - Name = <%= bacula_storage_name %> - SDPort = <%= bacula_storage_port %> + Name = <%= @bacula_storage_name %> + SDAddresses = { + # bacula, on Debian 9 (stretch), does not resolve a single name + # to both v4 and v6 addresses. Se we can't just say + # ip = { addr = }. Boo. + <%- if scope.lookupvar('deprecated::nodeinfo')['misc']['has_v4_ldap'] -%> + ipv4 = { + # use the hostname rather than the IP address from LDAP, + # as /etc/hosts might have a better answer in case of natted hosts. + addr = <%= @bacula_storage_address %> + port = <%= @bacula_storage_port %> + } + <%- end -%> + <%- if scope.lookupvar('deprecated::nodeinfo')['misc']['has_v6_ldap'] -%> + ipv6 = { + addr = <%= @bacula_storage_address %> + port = <%= @bacula_storage_port %> + } + <%- end -%> + } WorkingDirectory = "/var/lib/bacula" - Pid Directory = "/var/run/bacula" + Pid Directory = "/run/bacula" + Plugin Directory = "/usr/lib/bacula" Maximum Concurrent Jobs = 21 - SDAddress = <%= bacula_storage_address %> + Heartbeat Interval = 60 + + TLS Enable = yes + TLS Require = yes + TLS Verify Peer = yes + TLS CA Certificate File = "<%= @bacula_ca_path %>" + # This is a server certificate, used for incoming connections. + TLS Certificate = "<%= @bacula_ssl_server_cert %>" + TLS Key = "<%= @bacula_ssl_server_key %>" } # List Directors who are permitted to contact Storage daemon # Director { - Name = <%= bacula_director_name %> - Password = "<%= bacula_storage_secret %>" -} - + Name = <%= @bacula_director_name %> + Password = "<%= @bacula_storage_secret %>" -# To connect, the Director's bacula-dir.conf must have the -# same Name and MediaType. -# -Device { - Name = <%= bacula_filestor_device %> - Media Type = <%= bacula_filestor_name %> - Archive Device = <%= bacula_backup_path %> - LabelMedia = yes; - Random Access = Yes; - AutomaticMount = yes; - RemovableMedia = no; - AlwaysOpen = no; - Maximum Network Buffer Size = 65536 + TLS Enable = yes + TLS Require = yes + TLS Verify Peer = yes + TLS Allowed CN = "clientcerts/<%= @bacula_director_address %>" + TLS CA Certificate File = "<%= @bacula_ca_path %>" + # This is a server certificate, used for incoming director connections. + TLS Certificate = "<%= @bacula_ssl_server_cert %>" + TLS Key = "<%= @bacula_ssl_server_key %>" } # Send all messages to the Director, @@ -41,5 +61,7 @@ Device { # Messages { Name = Standard - director = <%= bacula_director_name %> = all + director = <%= @bacula_director_name %> = all } + +@|"sh -c 'for f in /etc/bacula/storage-conf.d/*.conf ; do echo @${f} ; done'"