mirror of
https://github.com/inspec/inspec
synced 2024-12-18 00:53:22 +00:00
2cc446a686
* Fixes the apache_conf Listen property returns an array The result is an array and not a string even when there is one value. Signed-off-by: Franklin Webber <franklin@chef.io> * Updates the apache_conf timeout, allowoverride, and maxclients to include It seems that all of these values are placed in an array of values so the matcher needs to be `include`. Signed-off-by: Franklin Webber <franklin@chef.io> * Updates docs for apache_conf * Uses the suggested `cmp` instead of `include` * Adds the way to properly compare a list of multiple ports Signed-off-by: Franklin Webber <franklin@chef.io>
67 lines
1.7 KiB
Text
67 lines
1.7 KiB
Text
---
|
|
title: About the apache_conf Resource
|
|
---
|
|
|
|
# apache_conf
|
|
|
|
Use the `apache_conf` InSpec audit resource to test the configuration settings for Apache. This file is typically located under `/etc/apache2` on the Debian and Ubuntu platforms and under `/etc/httpd` on the Fedora, CentOS, RedHat Enterprise Linux, and ArchLinux platforms. The configuration settings may vary significantly from platform to platform.
|
|
|
|
<br>
|
|
|
|
## Syntax
|
|
|
|
An `apache_conf` InSpec audit resource block declares configuration settings that should be tested:
|
|
|
|
describe apache_conf('path') do
|
|
its('setting_name') { should eq 'value' }
|
|
end
|
|
|
|
where
|
|
|
|
* `'setting_name'` is a configuration setting defined in the Apache configuration file
|
|
* `('path')` is the non-default path to the Apache configuration file
|
|
* `{ should eq 'value' }` is the value that is expected
|
|
|
|
<br>
|
|
|
|
## Examples
|
|
|
|
The following examples show how to use this InSpec audit resource.
|
|
|
|
### Test for blocking .htaccess files on CentOS
|
|
|
|
describe apache_conf do
|
|
its('AllowOverride') { should cmp 'None' }
|
|
end
|
|
|
|
### Test ports for SSL
|
|
|
|
describe apache_conf do
|
|
its('Listen') { should cmp '443' }
|
|
end
|
|
|
|
### Test multiple ports are listening
|
|
|
|
describe apache_conf do
|
|
its('Listen') { should =~ [ '80', '443' ] }
|
|
end
|
|
|
|
<br>
|
|
|
|
## Matchers
|
|
|
|
For a full list of available matchers please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
|
|
This InSpec audit resource matches any service that is listed in the Apache configuration file:
|
|
|
|
its('PidFile') { should_not eq '/var/run/httpd.pid' }
|
|
|
|
or:
|
|
|
|
its('Timeout') { should cmp '300' }
|
|
|
|
For example:
|
|
|
|
describe apache_conf do
|
|
its('MaxClients') { should cmp '100' }
|
|
its('Listen') { should cmp '443' }
|
|
end
|