blob: 9f5ec9bc6e1a882feb0318a5fff373d9080e5d41 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
class openssl {
class base {
package { 'openssl':
ensure => installed
}
}
define self_signed_cert($directory = '/etc/certs') {
include openssl::base
$pem_file = "$name.pem"
exec { "openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout $pem_file -out $pem_file -subj '/CN=$name'":
cwd => "$directory",
creates => "$directory/$name.pem",
require => Package['openssl']
}
}
define self_signed_splitted_cert($filename = '',
$directory = '/etc/certs',
$owner = "root",
$group = 'root',
$mode = '600') {
include openssl::base
$crt_file = "$filename.crt"
$key_file = "$filename.key"
exec { "openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout $key_file -out $crt_file -subj '/CN=$name'":
cwd => "$directory",
creates => "$directory/$key_file",
require => Package['openssl'],
before => [ File["$directory/$key_file"],
File["$directory/$crt_file"]]
}
file { ["$directory/$key_file","$directory/$crt_file"]:
owner => $owner,
group => $group,
mode => $mode
}
}
}
|