Added ability to manage security settings

By reassigning options with `blockreplace` at `/etc/apache2/conf-available/security.conf`, which is linked as conf-enabled by default on Debian packages
This commit is contained in:
Alexander Kozlov 2015-12-14 17:12:20 +03:00
parent 00d0785886
commit 8584dbf2a1
2 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,33 @@
{% if grains['os_family']=="Debian" %}
{% from "apache/map.jinja" import apache with context %}
include:
- apache
{% if salt['file.file_exists' ]('/etc/apache2/conf-available/security.conf') %}
apache_security-block:
file.blockreplace:
- name: /etc/apache2/conf-available/security.conf
- marker_start: "# START managed zone -DO-NOT-EDIT-"
- marker_end: "# END managed zone --"
- append_if_not_found: True
- show_changes: True
- require:
- pkg: apache
- watch_in:
- module: apache-reload
{% for option, value in salt['pillar.get']('apache:security', {}).items() %}
apache_manage-security-{{ option }}:
file.accumulated:
- filename: /etc/apache2/conf-available/security.conf
- name: apache_manage-security-add-{{ option }}
- text: "{{ option }} {{ value }}"
- require_in:
- file: apache_security-block
{% endfor %}
{% endif %}
{% endif %}

View File

@ -115,3 +115,8 @@ apache:
- ssl
disabled: # List modules to disable
- rewrite
security:
# can be Full | OS | Minimal | Minor | Major | Prod
# where Full conveys the most information, and Prod the least.
ServerTokens: Prod