35 lines
1.2 KiB
Puppet
35 lines
1.2 KiB
Puppet
## confdroid_ssh::custom::custom_config.pp
|
|
# Module name: confdroid_ssh
|
|
# Author: 12ww1160 (12ww1160@confdroid.com)
|
|
# @summary Class manages custom configurations for SSH
|
|
# @param [String] config_name name of the custom configuration file
|
|
# (without .conf extension)
|
|
# @param [Array[String]] config_content array of configuration lines to
|
|
# include in the custom config
|
|
##############################################################################
|
|
define confdroid_ssh::custom::custom_config (
|
|
|
|
String $config_name,
|
|
Array[String] $config_content,
|
|
|
|
) {
|
|
$sshd_custom_path = $confdroid_ssh::params::sshd_custom_path
|
|
$sshd_service = $confdroid_ssh::params::sshd_service
|
|
$custom_config_erb = 'confdroid_ssh/custom_config.erb'
|
|
$config_basename = regsubst($config_name, '\\.conf$', '')
|
|
$config_file = "${config_basename}.conf"
|
|
|
|
file { "${sshd_custom_path}/${config_file}":
|
|
ensure => file,
|
|
content => template($custom_config_erb),
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0600',
|
|
selrange => s0,
|
|
selrole => object_r,
|
|
seltype => etc_t,
|
|
seluser => system_u,
|
|
notify => Service[$sshd_service],
|
|
}
|
|
}
|