cloudamatic/mu

View on GitHub
cookbooks/mu-master/templates/default/nagios.conf.erb

Summary

Maintainability
Test Coverage
# Autogenerated by Chef.

<% unless node['nagios']['ldap_verify_cert'].nil? %>LDAPVerifyServerCert <%= node['nagios']['ldap_verify_cert'] %><% end %>
<% unless node['nagios']['ldap_trusted_mode'].nil? -%>LDAPTrustedMode <%= node['nagios']['ldap_trusted_mode'] %> <% end -%>
<% unless node['nagios']['ldap_trusted_global_cert'].nil? -%>LDAPTrustedGlobalCert <%= node['nagios']['ldap_trusted_global_cert'] %> <% end -%>

<VirtualHost *:<%= node['nagios']['http_port'] %>>
  ServerAdmin     <%= node['nagios']['sysadmin_email'] %>
<% if @nagios_url %>
  ServerName <%= @nagios_url %>
<% else %>
  ServerName <%= @server_name %>
<% end %>
  ServerAlias <% @server_aliases.each do |a| %><%= a %> <% end %>
  DocumentRoot    <%= node['nagios']['docroot'] %>
#  CustomLog       <%= node['apache']['log_dir'] %>/nagios_access.log combined
#  ErrorLog        <%= node['apache']['log_dir'] %>/nagios_error.log

<% if node['platform_family'] == 'debian' && node['nagios']['server']['install_method'] == 'package'-%>
  Alias /stylesheets /etc/<%= node['nagios']['server']['vname'] %>/stylesheets
  Alias /nagios3/stylesheets /etc/<%= node['nagios']['server']['vname'] %>/stylesheets
<% end -%>
  ScriptAlias <%= node['nagios']['cgi-path'] %> <%= node['nagios']['cgi-bin'] %>
  ScriptAlias /cgi-bin/statusjson.cgi <%= node['nagios']['cgi-bin'] %>/statusjson.cgi
  Alias /<%= node['nagios']['server']['vname'] %> <%= node['nagios']['docroot'] %>

  <Directory "<%= node['nagios']['cgi-bin'] %>">
     Options ExecCGI
     <% if node['nagios']['default_user_name'] -%>
     require all granted
     <% end -%>
  </Directory>

  <FilesMatch ".+\.ph(p[345]?|t|tml)$">
     SetHandler application/x-httpd-php
  </FilesMatch>

<% if @https -%>
  SSLEngine On
  SSLProtocol <%= node['nagios']['ssl_protocols'] %>
<% if node['nagios']['ssl_ciphers'] != nil -%>
  SSLCipherSuite <%= node['nagios']['ssl_ciphers'] %>
<% end -%>
  SSLCertificateFile <%= @ssl_cert_file %>
<% if node['nagios']['ssl_cert_chain_file'] %>
  SSLCertificateChainFile <%= node['nagios']['ssl_cert_chain_file'] %>
<% end -%>
  SSLCertificateKeyFile <%= @ssl_cert_key %>

<% end -%>
<% case node['nagios']['server_auth_method'] -%>
<% when "openid" -%>
  <Location />
    AuthName "Nagios Server"
    AuthType OpenID
    require user <%= node['apache']['allowed_openids'].join(' ') %>
    AuthOpenIDDBLocation <%= node['apache']['mod_auth_openid']['dblocation'] %>
  </Location>
<% when "cas" -%>
  CASLoginURL <%= node['nagios']['cas_login_url'] %>
  CASValidateURL <%= node['nagios']['cas_validate_url'] %>
  CASValidateServer <%= node['nagios']['cas_validate_server'] %>
  <% if node['nagios']['cas_root_proxy_url'] -%>
  CASRootProxiedAs <%= node['nagios']['cas_root_proxy_url'] %>
  <% end -%>

  <Location />
    AuthType CAS
    require <%= node['nagios']['server_auth_require'] %>
  </Location>
<% when "ldap" -%>
  <Location />
    AuthName "Nagios Server"
    AuthType Basic
    AuthBasicProvider ldap
    <% unless node['nagios']['ldap_group_attribute_is_dn'].nil? %>AuthLDAPGroupAttributeIsDN <%= node['nagios']['ldap_group_attribute_is_dn'] %><% end %>
    <% unless node['nagios']['ldap_group_attribute'].nil? -%>AuthLDAPGroupAttribute "<%= node['nagios']['ldap_group_attribute'] %>" <% end -%>
    <% unless node['nagios']['ldap_bind_dn'].nil? -%>AuthLDAPBindDN "<%= node['nagios']['ldap_bind_dn'] %>" <% end -%>
    <% unless node['nagios']['ldap_bind_password'].nil? -%>AuthLDAPBindPassword "<%= node['nagios']['ldap_bind_password'] %>"<% end -%>
    AuthLDAPURL "<%= node['nagios']['ldap_url'] %>"
    <% if !node['apache']['version'].nil? and node['apache']['version'] < "2.4" %>
      <% unless node['nagios']['ldap_authoritative'].nil? %>AuthzLDAPAuthoritative <%= node['nagios']['ldap_authoritative'] %><% end %>
    <% end %>
    require <%= node['nagios']['server_auth_require'] %>
  </Location>
<% else -%>
  <Location />
    AuthName "Nagios Server"
    AuthType Basic
    AuthUserFile "<%= node['nagios']['conf_dir'] %>/htpasswd.users"
    require <%= node['nagios']['server_auth_require'] %>
    <% unless node['nagios']['allowed_ips'].empty? -%>
    Order Deny,Allow
    Deny from All
    Allow from <%=node['nagios']['allowed_ips'].join(' ') %>
    Satisfy Any
    <% end -%>
  </Location>
<% end -%>

  SetEnv TZ "<%= node['nagios']['conf']['use_timezone'] %>"

</VirtualHost>