charm-swift-proxy/charmhelpers/contrib/hardening
Ryan Beisner 1fff65bd5b
Sync charm-helpers
Change-Id: I6ca6e50686b0fe0e67d57948fa95252928adaa16
2018-11-07 15:36:04 -06:00
..
apache Sync charm-helpers 2018-11-07 15:36:04 -06:00
audits Sync charm-helpers 2018-11-07 15:36:04 -06:00
defaults Fix alphanumeric comparisons for openstack and ubuntu releases 2017-04-27 12:13:59 +01:00
host Fix alphanumeric comparisons for openstack and ubuntu releases 2017-04-27 12:13:59 +01:00
mysql Resync charmhelpers for licensing change 2016-07-06 16:43:58 +01:00
ssh Fix alphanumeric comparisons for openstack and ubuntu releases 2017-04-27 12:13:59 +01:00
__init__.py Resync charmhelpers for licensing change 2016-07-06 16:43:58 +01:00
harden.py Sync charm-helpers 2018-11-07 15:36:04 -06:00
README.hardening.md Add hardening support 2016-03-24 11:36:26 +00:00
templating.py Sync charm-helpers to enable swift 2.13.0 2017-02-16 15:05:40 +00:00
utils.py Resync charmhelpers for licensing change 2016-07-06 16:43:58 +01:00

Juju charm-helpers hardening library

Description

This library provides multiple implementations of system and application hardening that conform to the standards of http://hardening.io/.

Current implementations include:

  • OS
  • SSH
  • MySQL
  • Apache

Requirements

  • Juju Charms

Usage

  1. Synchronise this library into your charm and add the harden() decorator (from contrib.hardening.harden) to any functions or methods you want to use to trigger hardening of your application/system.

  2. Add a config option called 'harden' to your charm config.yaml and set it to a space-delimited list of hardening modules you want to run e.g. "os ssh"

  3. Override any config defaults (contrib.hardening.defaults) by adding a file called hardening.yaml to your charm root containing the name(s) of the modules whose settings you want override at root level and then any settings with overrides e.g.

    os: general: desktop_enable: True

  4. Now just run your charm as usual and hardening will be applied each time the hook runs.