inspec/docs/resources/kernel_parameter.md.erb
2016-09-22 15:23:21 +02:00

72 lines
1.5 KiB
Text

---
title: About the kernel_parameter Resource
---
# kernel_parameter
Use the `kernel_parameter` InSpec audit resource to test kernel parameters on Linux platforms.
# Syntax
A `kernel_parameter` resource block declares a parameter and then a value to be tested:
describe kernel_parameter('path.to.parameter') do
its('value') { should eq 0 }
end
where
* `'kernel.parameter'` must specify a kernel parameter, such as `'net.ipv4.conf.all.forwarding'`
* `{ should eq 0 }` states the value to be tested
# Matchers
This InSpec audit resource has the following matchers:
## be
<%= partial "/shared/matcher_be" %>
## cmp
<%= partial "/shared/matcher_cmp" %>
## eq
<%= partial "/shared/matcher_eq" %>
## include
<%= partial "/shared/matcher_include" %>
## match
<%= partial "/shared/matcher_match" %>
## value
The `value` matcher tests the value assigned to the named IP address versus the value declared in the test:
its('value') { should eq 0 }
# Examples
The following examples show how to use this InSpec audit resource.
## Test if global forwarding is enabled for an IPv4 address
describe kernel_parameter('net.ipv4.conf.all.forwarding') do
its('value') { should eq 1 }
end
## Test if global forwarding is disabled for an IPv6 address
describe kernel_parameter('net.ipv6.conf.all.forwarding') do
its('value') { should eq 0 }
end
## Test if an IPv6 address accepts redirects
describe kernel_parameter('net.ipv6.conf.interface.accept_redirects') do
its('value') { should eq 'true' }
end