aboutsummaryrefslogtreecommitdiffstats
path: root/modules/openssh/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'modules/openssh/manifests')
-rw-r--r--modules/openssh/manifests/init.pp26
-rw-r--r--modules/openssh/manifests/server.pp17
-rw-r--r--modules/openssh/manifests/ssh_keys_from_ldap.pp20
3 files changed, 38 insertions, 25 deletions
diff --git a/modules/openssh/manifests/init.pp b/modules/openssh/manifests/init.pp
index e55660fd..bae0fa5c 100644
--- a/modules/openssh/manifests/init.pp
+++ b/modules/openssh/manifests/init.pp
@@ -1,25 +1 @@
-class openssh {
-
- # some trick to manage sftp server, who is arch dependent on mdv
- $path_to_sftp = "$lib_dir/ssh/"
-
- package { "openssh-server":
- ensure => installed
- }
-
- service { sshd:
- ensure => running,
- path => "/etc/init.d/sshd",
- subscribe => [ Package["openssh-server"], File["sshd_config"] ]
- }
-
- file { "sshd_config":
- path => "/etc/ssh/sshd_config",
- ensure => present,
- owner => root,
- group => root,
- mode => 644,
- require => Package["openssh-server"],
- content => template("openssh/sshd_config")
- }
-}
+class openssh { }
diff --git a/modules/openssh/manifests/server.pp b/modules/openssh/manifests/server.pp
new file mode 100644
index 00000000..c45268d2
--- /dev/null
+++ b/modules/openssh/manifests/server.pp
@@ -0,0 +1,17 @@
+class openssh::server {
+ # some trick to manage sftp server, who is arch dependent on mdv
+ # TODO: the path changed on Mageia 6 to /usr/libexec/openssh/sftp-server
+ $path_to_sftp = "${::lib_dir}/ssh/"
+
+ package { 'openssh-server': }
+
+ service { 'sshd':
+ subscribe => Package['openssh-server'],
+ }
+
+ file { '/etc/ssh/sshd_config':
+ require => Package['openssh-server'],
+ content => template('openssh/sshd_config'),
+ notify => Service['sshd']
+ }
+}
diff --git a/modules/openssh/manifests/ssh_keys_from_ldap.pp b/modules/openssh/manifests/ssh_keys_from_ldap.pp
new file mode 100644
index 00000000..9ea6c139
--- /dev/null
+++ b/modules/openssh/manifests/ssh_keys_from_ldap.pp
@@ -0,0 +1,20 @@
+class openssh::ssh_keys_from_ldap inherits server {
+ package { 'python3-ldap': }
+
+ $ldap_pwfile = '/etc/ldap.secret'
+ $nslcd_conf_file = '/etc/nslcd.conf'
+ $ldap_servers = get_ldap_servers()
+ mga_common::local_script { 'ldap-sshkey2file.py':
+ content => template('openssh/ldap-sshkey2file.py'),
+ require => Package['python3-ldap']
+ }
+
+ cron { 'sshkey2file':
+ command => '/bin/bash -c "/usr/local/bin/ldap-sshkey2file.py && ( [[ -f /usr/bin/mgagit && -d /var/lib/git/.gitolite ]] && /bin/su -c \'/usr/bin/mgagit glrun\' - git ) ||:"',
+ hour => '*',
+ minute => '*/10',
+ user => 'root',
+ environment => 'MAILTO=root',
+ require => Mga_common::Local_script['ldap-sshkey2file.py'],
+ }
+}