Merge pull request #4 from kennydo/use_map
Better Configuration and State Modularity
This commit is contained in:
commit
531a68c4b9
13
README.rst
13
README.rst
@ -1,7 +1,12 @@
|
||||
openssh
|
||||
=======
|
||||
Install and configure an openssh server.
|
||||
|
||||
openssh
|
||||
-------
|
||||
|
||||
Install openssh and set up the daemon, install a useful banner as well
|
||||
States
|
||||
------
|
||||
``openssh``
|
||||
Installs the ``openssh`` package and service.
|
||||
``openssh.config``
|
||||
Installs the configuration file included in this formula (under "openssh/files").
|
||||
``openssh.banner``
|
||||
Installs a banner that users see when SSH-ing in.
|
||||
|
10
openssh/banner.sls
Normal file
10
openssh/banner.sls
Normal file
@ -0,0 +1,10 @@
|
||||
{% from "openssh/map.jinja" import openssh with context %}
|
||||
|
||||
include:
|
||||
- openssh
|
||||
|
||||
sshd_banner:
|
||||
file.managed:
|
||||
- name: {{ openssh.banner }}
|
||||
- source: {{ openssh.banner_src }}
|
||||
- template: jinja
|
12
openssh/config.sls
Normal file
12
openssh/config.sls
Normal file
@ -0,0 +1,12 @@
|
||||
{% from "openssh/map.jinja" import openssh with context %}
|
||||
|
||||
include:
|
||||
- openssh
|
||||
|
||||
sshd_config:
|
||||
file.managed:
|
||||
- name: {{ openssh.sshd_config }}
|
||||
- source: {{ openssh.sshd_config_src }}
|
||||
- watch_in:
|
||||
- service: {{ openssh.service }}
|
||||
|
@ -1,25 +1,11 @@
|
||||
{% from "openssh/map.jinja" import openssh with context %}
|
||||
|
||||
openssh:
|
||||
pkg:
|
||||
- installed
|
||||
{% if grains['os_family'] == 'Debian' %}
|
||||
- name: openssh-server
|
||||
{% endif %}
|
||||
pkg.installed:
|
||||
- name: {{ openssh.server }}
|
||||
service.running:
|
||||
- enable: True
|
||||
- name: ssh
|
||||
- name: {{ openssh.service }}
|
||||
- require:
|
||||
- pkg: openssh
|
||||
- file: sshd_banner
|
||||
- watch:
|
||||
- file: sshd_config
|
||||
- pkg: {{ openssh.server }}
|
||||
|
||||
sshd_config:
|
||||
file.managed:
|
||||
- name: /etc/ssh/sshd_config
|
||||
- source: salt://openssh/files/sshd_config
|
||||
|
||||
sshd_banner:
|
||||
file.managed:
|
||||
- name: /etc/ssh/banner
|
||||
- source: salt://openssh/files/banner
|
||||
- template: jinja
|
||||
|
18
openssh/map.jinja
Normal file
18
openssh/map.jinja
Normal file
@ -0,0 +1,18 @@
|
||||
{% set openssh = salt['grains.filter_by']({
|
||||
'Debian': {
|
||||
'server': 'openssh-server',
|
||||
'service': 'ssh',
|
||||
'sshd_config': '/etc/ssh/sshd_config',
|
||||
'sshd_config_src': 'salt://openssh/files/sshd_config',
|
||||
'banner': '/etc/ssh/banner',
|
||||
'banner_src': 'salt://openssh/files/banner',
|
||||
},
|
||||
'RedHat': {
|
||||
'server': 'openssh-server',
|
||||
'service': 'sshd',
|
||||
'sshd_config': '/etc/ssh/sshd_config',
|
||||
'sshd_config_src': 'salt://openssh/files/sshd_config',
|
||||
'banner': '/etc/ssh/banner',
|
||||
'banner_src': 'salt://openssh/files/banner',
|
||||
},
|
||||
}, merge=salt['pillar.get']('openssh:lookup')) %}
|
Loading…
Reference in New Issue
Block a user