diff --git a/CHANGELOG.md b/CHANGELOG.md
index a1df4b7..c56be5e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,16 @@ Changelog of Git Changelog.
No issue
+05036af24182601 Jenkins Server 2017-07-20 16:26:40
+
+
recommit for updates in build 12
+
+
+6e251a61a25bb1d Arne Teuke 2017-07-20 16:26:21
+
+
changed wrong refresh
+
+
2d7dc8a5c57ed98 Jenkins Server 2017-07-20 16:21:27
recommit for updates in build 11
diff --git a/README.md b/README.md
index fe1c2fd..b35d51f 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
|Repo Name| version | Build Status|
|---|---|---|---|
-|`cd_nagios`| 0.0.0.6 | [](https://jenkins.confdroid.com/job/cd_nagios/)|
+|`cd_nagios`| 0.0.0.7 | [](https://jenkins.confdroid.com/job/cd_nagios/)|
### Synopsis
Nagios is a powerful open source software solution for monitoring your IT environments.
diff --git a/REPOSTRUCTURE.md b/REPOSTRUCTURE.md
index 4b114a2..1beb036 100644
--- a/REPOSTRUCTURE.md
+++ b/REPOSTRUCTURE.md
@@ -49,6 +49,8 @@
| |-- init.pp
| `-- params.pp
|-- templates
+| |-- httpd
+| | `-- nagios_conf.erb
| |-- nagios
| | |-- cgi_cfg.erb
| | `-- htpasswd_rule.erb
@@ -65,4 +67,4 @@
|-- README.md
`-- REPOSTRUCTURE.md
-15 directories, 50 files
+16 directories, 51 files
diff --git a/doc/_index.html b/doc/_index.html
index af8b856..d2e63bd 100644
--- a/doc/_index.html
+++ b/doc/_index.html
@@ -176,7 +176,7 @@
diff --git a/doc/file.README.html b/doc/file.README.html
index 5eaa169..28d8d06 100644
--- a/doc/file.README.html
+++ b/doc/file.README.html
@@ -61,7 +61,7 @@
|Repo Name| version | Build
Status|
|---|---|---|---|
-|cd_nagios| 0.0.0.6 | cd_nagios| 0.0.0.7 | {Build
Status/]|
@@ -297,7 +297,7 @@ environments.
diff --git a/doc/index.html b/doc/index.html
index f7b51d8..4908ecc 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -61,7 +61,7 @@
|Repo Name| version | Build
Status|
|---|---|---|---|
-|cd_nagios| 0.0.0.6 | cd_nagios| 0.0.0.7 | {Build
Status/]|
@@ -297,7 +297,7 @@ environments.
diff --git a/doc/puppet_classes/cd_nagios.html b/doc/puppet_classes/cd_nagios.html
index 65d2d88..f2de14a 100644
--- a/doc/puppet_classes/cd_nagios.html
+++ b/doc/puppet_classes/cd_nagios.html
@@ -139,7 +139,7 @@ class cd_nagios {
diff --git a/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html
index 9a04a35..48a5e95 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html
@@ -207,7 +207,7 @@ class cd_nagios::firewall::iptables (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html
index 8745172..099126e 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html
@@ -187,7 +187,7 @@ class cd_nagios::main::config (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html
index c57b167..ad0e190 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html
@@ -468,7 +468,7 @@ class cd_nagios::main::dirs (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html
index ecae3a3..2ddc17a 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html
@@ -235,7 +235,7 @@ class cd_nagios::main::install (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html
index 57220ca..ca960dc 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html
@@ -200,7 +200,7 @@ class cd_nagios::main::user (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Aparams.html b/doc/puppet_classes/cd_nagios_3A_3Aparams.html
index 7f654ed..48f6f66 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Aparams.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Aparams.html
@@ -1803,6 +1803,27 @@ unchecked.
Whether to enable selinux tools and
policies. only effective if selinux is
enabled.
+
+
+
+
+
+
+ ng_required_hosts
+
+
+ (array)
+
+
+ (defaults to: [''])
+
+
+ —
+
+
Array of FQDNs for hosts which should be
+allowed/required. every entry in
+the array creates a new line in the
+configuration file.
@@ -1824,9 +1845,6 @@ enabled.
-198
-199
-200
201
202
203
@@ -1974,10 +1992,19 @@ enabled.
345
346
347
-348
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
- # File 'manifests/params.pp', line 198
+ # File 'manifests/params.pp', line 201
class cd_nagios::params (
@@ -2085,6 +2112,9 @@ $ng_ack_no_send = '0',
# selinux
$ng_use_selinux_tools = true,
+# httpd
+$ng_required_hosts = [''],
+
) {
# installation section
@@ -2100,30 +2130,33 @@ $ng_use_selinux_tools = true,
}
# service
-$ng_service = 'nagios'
+$ng_service = 'nagios'
+$ae_service = 'httpd'
# directories
-$ng_main_dir = '/etc/nagios'
-$ng_conf_d_dir = "${ng_main_dir}/conf.d"
-$ng_objects_dir = "${ng_main_dir}/objects"
-$ng_private_dir = "${ng_main_dir}/private"
-$ng_usr_incl = '/usr/include/nagios'
-$ng_lib_dir = '/usr/lib64/nagios'
-$ng_log_dir = '/var/log/nagios'
-$ng_log_archives = "${ng_log_dir}/archives"
-$ng_spool_dir = '/var/spool/nagios'
-$ng_usr_share = '/usr/share/nagios'
-$ng_share_html = "${ng_usr_share}/html"
+$ng_main_dir = '/etc/nagios'
+$ng_conf_d_dir = "${ng_main_dir}/conf.d"
+$ng_objects_dir = "${ng_main_dir}/objects"
+$ng_private_dir = "${ng_main_dir}/private"
+$ng_usr_incl = '/usr/include/nagios'
+$ng_lib_dir = '/usr/lib64/nagios'
+$ng_log_dir = '/var/log/nagios'
+$ng_log_archives = "${ng_log_dir}/archives"
+$ng_spool_dir = '/var/spool/nagios'
+$ng_usr_share = '/usr/share/nagios'
+$ng_share_html = "${ng_usr_share}/html"
# files
-$ng_main_config = "${ng_main_dir}/nagios.cfg"
-$ng_cgi_cfg_file = "${ng_main_dir}/cgi.cfg"
-$ng_cgi_cfg_erb = 'cd_nagios/nagios/cgi_cfg.erb'
-$ng_htpasswd_file = "${ng_main_dir}/passwd"
-$ng_htpasswd_head = 'cd_nagios/nagios/htpasswd_head.erb'
-$ng_htpasswd_rule = 'cd_nagios/nagios/htpasswd_rule.erb'
-$ng_taccgi_erb = 'cd_nagios/selinux/taccgi.erb'
-$ng_statcgi_erb = 'cd_nagios/selinux/statuscgi.erb'
+$ng_main_config = "${ng_main_dir}/nagios.cfg"
+$ng_cgi_cfg_file = "${ng_main_dir}/cgi.cfg"
+$ng_cgi_cfg_erb = 'cd_nagios/nagios/cgi_cfg.erb'
+$ng_htpasswd_file = "${ng_main_dir}/passwd"
+$ng_htpasswd_head = 'cd_nagios/nagios/htpasswd_head.erb'
+$ng_htpasswd_rule = 'cd_nagios/nagios/htpasswd_rule.erb'
+$ng_taccgi_erb = 'cd_nagios/selinux/taccgi.erb'
+$ng_statcgi_erb = 'cd_nagios/selinux/statuscgi.erb'
+$ng_nagios_conf = '/etc/httpd/conf.d/nagios.conf'
+$ng_nagios_conf_erb = 'cd_nagios/httpd/nagios_conf.erb'
# includes must be last
@@ -2137,7 +2170,7 @@ $ng_statcgi_erb = 'cd_nagios/selinux/statuscgi.erb'
diff --git a/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html b/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html
index 8610ee7..9a1c57a 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html
@@ -182,7 +182,8 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.
73
74
75
-76
+76
+77
|
# File 'manifests/selinux/config.pp', line 24
@@ -218,7 +219,7 @@ class cd_nagios::selinux::config (
path => ['/usr/bin','/usr/sbin'],
cwd => $ng_user_home,
require => Exec['create_policy_taccgi'],
- refreshonly => true,
+ refreshonly => true,
}
# sealert status.cgi
@@ -236,7 +237,8 @@ class cd_nagios::selinux::config (
path => ['/usr/bin','/usr/sbin'],
cwd => $ng_user_home,
require => Exec['create_policy_statuscgi'],
- refreshonly => true,
+ refreshonly => true,
+ notify => Service[$ng_service],
}
}
}
@@ -247,7 +249,7 @@ class cd_nagios::selinux::config (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html
index adff29d..a8c85c1 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html
@@ -195,7 +195,7 @@ class cd_nagios::server::access_rules (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html
index 8cd4a6e..2298ca2 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html
@@ -156,7 +156,23 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.
47
48
49
-50
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
|
# File 'manifests/server/files.pp', line 23
@@ -187,6 +203,22 @@ class cd_nagios::server::files (
content => template($ng_cgi_cfg_erb),
notify => Service[$ng_service],
}
+
+ # manage nagios.conf for httpd
+
+ file { $ng_nagios_conf:
+ ensure => file,
+ path => $ng_nagios_conf,
+ owner => 'root',
+ group => 'root',
+ mode => '0644',
+ selrange => s0,
+ selrole => object_r,
+ seltype => httpd_config_t,
+ seluser => system_u,
+ content => template($ng_nagios_conf_erb),
+ notify => Service[$ae_service],
+ }
}
}
|
@@ -196,7 +228,7 @@ class cd_nagios::server::files (
diff --git a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html
index a863fa3..479b7a6 100644
--- a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html
+++ b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html
@@ -174,7 +174,7 @@ class cd_nagios::server::service (
diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html b/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html
index 5d62b00..ca1b1b1 100644
--- a/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html
+++ b/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html
@@ -209,7 +209,7 @@ $ng_service = $::cd_nagios::params::ng_service
diff --git a/doc/top-level-namespace.html b/doc/top-level-namespace.html
index 2be2f8d..807736a 100644
--- a/doc/top-level-namespace.html
+++ b/doc/top-level-namespace.html
@@ -90,7 +90,7 @@
diff --git a/manifests/params.pp b/manifests/params.pp
index 79bf349..df74e86 100644
--- a/manifests/params.pp
+++ b/manifests/params.pp
@@ -194,6 +194,9 @@
# "Send Notification" to be unchecked.
# @param [boolean] ng_use_selinux_tools Whether to enable selinux tools and
# policies. only effective if selinux is enabled.
+# @param [array] ng_required_hosts Array of FQDNs for hosts which should be
+# allowed/required. every entry in the array creates a new line in the
+# configuration file.
###############################################################################
class cd_nagios::params (
@@ -301,6 +304,9 @@ $ng_ack_no_send = '0',
# selinux
$ng_use_selinux_tools = true,
+# httpd
+$ng_required_hosts = [''],
+
) {
# installation section
@@ -316,30 +322,33 @@ $ng_use_selinux_tools = true,
}
# service
-$ng_service = 'nagios'
+$ng_service = 'nagios'
+$ae_service = 'httpd'
# directories
-$ng_main_dir = '/etc/nagios'
-$ng_conf_d_dir = "${ng_main_dir}/conf.d"
-$ng_objects_dir = "${ng_main_dir}/objects"
-$ng_private_dir = "${ng_main_dir}/private"
-$ng_usr_incl = '/usr/include/nagios'
-$ng_lib_dir = '/usr/lib64/nagios'
-$ng_log_dir = '/var/log/nagios'
-$ng_log_archives = "${ng_log_dir}/archives"
-$ng_spool_dir = '/var/spool/nagios'
-$ng_usr_share = '/usr/share/nagios'
-$ng_share_html = "${ng_usr_share}/html"
+$ng_main_dir = '/etc/nagios'
+$ng_conf_d_dir = "${ng_main_dir}/conf.d"
+$ng_objects_dir = "${ng_main_dir}/objects"
+$ng_private_dir = "${ng_main_dir}/private"
+$ng_usr_incl = '/usr/include/nagios'
+$ng_lib_dir = '/usr/lib64/nagios'
+$ng_log_dir = '/var/log/nagios'
+$ng_log_archives = "${ng_log_dir}/archives"
+$ng_spool_dir = '/var/spool/nagios'
+$ng_usr_share = '/usr/share/nagios'
+$ng_share_html = "${ng_usr_share}/html"
# files
-$ng_main_config = "${ng_main_dir}/nagios.cfg"
-$ng_cgi_cfg_file = "${ng_main_dir}/cgi.cfg"
-$ng_cgi_cfg_erb = 'cd_nagios/nagios/cgi_cfg.erb'
-$ng_htpasswd_file = "${ng_main_dir}/passwd"
-$ng_htpasswd_head = 'cd_nagios/nagios/htpasswd_head.erb'
-$ng_htpasswd_rule = 'cd_nagios/nagios/htpasswd_rule.erb'
-$ng_taccgi_erb = 'cd_nagios/selinux/taccgi.erb'
-$ng_statcgi_erb = 'cd_nagios/selinux/statuscgi.erb'
+$ng_main_config = "${ng_main_dir}/nagios.cfg"
+$ng_cgi_cfg_file = "${ng_main_dir}/cgi.cfg"
+$ng_cgi_cfg_erb = 'cd_nagios/nagios/cgi_cfg.erb'
+$ng_htpasswd_file = "${ng_main_dir}/passwd"
+$ng_htpasswd_head = 'cd_nagios/nagios/htpasswd_head.erb'
+$ng_htpasswd_rule = 'cd_nagios/nagios/htpasswd_rule.erb'
+$ng_taccgi_erb = 'cd_nagios/selinux/taccgi.erb'
+$ng_statcgi_erb = 'cd_nagios/selinux/statuscgi.erb'
+$ng_nagios_conf = '/etc/httpd/conf.d/nagios.conf'
+$ng_nagios_conf_erb = 'cd_nagios/httpd/nagios_conf.erb'
# includes must be last
diff --git a/manifests/selinux/config.pp b/manifests/selinux/config.pp
index 53b78db..ffa7381 100644
--- a/manifests/selinux/config.pp
+++ b/manifests/selinux/config.pp
@@ -52,7 +52,7 @@ class cd_nagios::selinux::config (
path => ['/usr/bin','/usr/sbin'],
cwd => $ng_user_home,
require => Exec['create_policy_taccgi'],
- refreshonly => true,
+ refreshonly => true,
}
# sealert status.cgi
@@ -70,7 +70,8 @@ class cd_nagios::selinux::config (
path => ['/usr/bin','/usr/sbin'],
cwd => $ng_user_home,
require => Exec['create_policy_statuscgi'],
- refreshonly => true,
+ refreshonly => true,
+ notify => Service[$ng_service],
}
}
}
diff --git a/manifests/server/files.pp b/manifests/server/files.pp
index d51f0bc..16a5c47 100644
--- a/manifests/server/files.pp
+++ b/manifests/server/files.pp
@@ -46,5 +46,21 @@ class cd_nagios::server::files (
content => template($ng_cgi_cfg_erb),
notify => Service[$ng_service],
}
+
+ # manage nagios.conf for httpd
+
+ file { $ng_nagios_conf:
+ ensure => file,
+ path => $ng_nagios_conf,
+ owner => 'root',
+ group => 'root',
+ mode => '0644',
+ selrange => s0,
+ selrole => object_r,
+ seltype => httpd_config_t,
+ seluser => system_u,
+ content => template($ng_nagios_conf_erb),
+ notify => Service[$ae_service],
+ }
}
}
diff --git a/templates/httpd/nagios_conf.erb b/templates/httpd/nagios_conf.erb
new file mode 100644
index 0000000..92bd19d
--- /dev/null
+++ b/templates/httpd/nagios_conf.erb
@@ -0,0 +1,78 @@
+################################################################################
+########## /etc/httpd/conf.d/nagios.conf created by Puppet ###########
+########## manual changes will be overwritten !!! ###########
+################################################################################
+########## full reference is available at ###########
+########## https://confdroid.com/2017/07/nagios-nagios-conf/ ###########
+################################################################################
+
+ScriptAlias /nagios/cgi-bin/ "/usr/lib64/nagios/cgi-bin/"
+
+
+<% if @ng_use_https == true -%>
+ SSLRequireSSL
+<% else -%>
+# SSLRequireSSL
+<% end -%>
+ Options ExecCGI
+ AllowOverride None
+ = 2.3>
+
+ Require all granted
+ Require local
+<% @ng_required_hosts.each do |required_host| -%>
+ Require host <%= required_host %>
+<% end -%>
+ AuthName "Nagios Access"
+ AuthType Basic
+ AuthUserFile /etc/nagios/passwd
+ Require valid-user
+
+
+
+ Order allow,deny
+ Allow from all
+# Order deny,allow
+# Deny from all
+# Allow from 127.0.0.1
+
+ AuthName "Nagios Access"
+ AuthType Basic
+ AuthUserFile /etc/nagios/passwd
+ Require valid-user
+
+
+
+Alias /nagios "/usr/share/nagios/html"
+
+
+# SSLRequireSSL
+ Options None
+ AllowOverride None
+ = 2.3>
+
+ Require all granted
+ Require local
+<% @ng_required_hosts.each do |required_host| -%>
+ Require host <%= required_host %>
+<% end -%>
+
+ AuthName "Nagios Access"
+ AuthType Basic
+ AuthUserFile /etc/nagios/passwd
+ Require valid-user
+
+
+
+ Order allow,deny
+ Allow from all
+# Order deny,allow
+# Deny from all
+# Allow from 127.0.0.1
+
+ AuthName "Nagios Access"
+ AuthType Basic
+ AuthUserFile /etc/nagios/passwd
+ Require valid-user
+
+