charm-cinder/charmhelpers/contrib/hardening
Ryan Beisner cbff05ee1a
Sync charm/ceph helpers, tox, and requirements
Change-Id: Ia983450e480ab6811a67034e5503ef3a476b6cbb
2019-09-30 22:09:55 -05:00
..
apache Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
audits Sync charm/ceph helpers, tox, and requirements 2019-09-30 22:09:55 -05:00
defaults Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
host Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
mysql Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
ssh Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
__init__.py Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
harden.py Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
README.hardening.md Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
templating.py Migrate to python3 only charm 2019-01-30 12:36:21 +00:00
utils.py Migrate to python3 only charm 2019-01-30 12:36:21 +00: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.