]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/ntp/manifests/init.pp
74a5a322e269956643520d40b652b361a410151f
[dsa-puppet.git] / modules / ntp / manifests / init.pp
1 class ntp {
2     package { ntp: ensure => installed }
3     file {
4         "/var/lib/ntp/":
5             ensure  => directory,
6             owner   => ntp,
7             group   => ntp,
8             mode    => 755,
9             require => Package["ntp"]
10             ;
11         "/var/lib/ntp":
12             ensure  => directory,
13             owner   => ntp,
14             group   => ntp,
15             mode    => 755,
16             require => Package["ntp"]
17             ;
18         "/etc/ntp.conf":
19             owner   => root,
20             group   => root,
21             mode    => 444,
22             content => template("ntp/ntp.conf"),
23             notify  => Exec["ntp restart"],
24             require => Package["ntp"]
25             ;
26         "/etc/ntp.keys.d":
27             owner   => root,
28             group   => ntp,
29             mode    => 750,
30             ensure  => directory,
31             require => Package["ntp"]
32             ;
33     }
34     case getfromhash($nodeinfo, 'timeserver') {
35         true: {
36             file {
37                 "/var/lib/ntp/leap-seconds.list":
38                     owner   => root,
39                     group   => root,
40                     mode    => 444,
41                     source  => [ "puppet:///modules/ntp/leap-seconds.list" ],
42                     require => Package["ntp"],
43                     notify  => Exec["ntp restart"],
44                     ;
45             }
46         }
47         default: {
48             file {
49                 "/etc/default/ntp":
50                     owner   => root,
51                     group   => root,
52                     mode    => 444,
53                     source  => [ "puppet:///modules/ntp/etc-default-ntp" ],
54                     require => Package["ntp"],
55                     notify  => Exec["ntp restart"],
56                     ;
57
58                 "/etc/ntp.keys.d/ntpkey_iff_merikanto":
59                     owner   => root,
60                     group   => root,
61                     mode    => 444,
62                     source  => [ "puppet:///modules/ntp/ntpkey_iff_merikanto.pub" ],
63                     require => Package["ntp"],
64                     notify  => Exec["ntp restart"],
65                     ;
66                 "/etc/ntp.keys.d/ntpkey_iff_orff":
67                     owner   => root,
68                     group   => root,
69                     mode    => 444,
70                     source  => [ "puppet:///modules/ntp/ntpkey_iff_orff.pub" ],
71                     require => Package["ntp"],
72                     notify  => Exec["ntp restart"],
73                     ;
74                 "/etc/ntp.keys.d/ntpkey_iff_ravel":
75                     owner   => root,
76                     group   => root,
77                     mode    => 444,
78                     source  => [ "puppet:///modules/ntp/ntpkey_iff_ravel.pub" ],
79                     require => Package["ntp"],
80                     notify  => Exec["ntp restart"],
81                     ;
82                 "/etc/ntp.keys.d/ntpkey_iff_busoni":
83                     owner   => root,
84                     group   => root,
85                     mode    => 444,
86                     source  => [ "puppet:///modules/ntp/ntpkey_iff_busoni.pub" ],
87                     require => Package["ntp"],
88                     notify  => Exec["ntp restart"],
89                     ;
90             }
91         }
92     }
93
94
95     exec { "ntp restart":
96         path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
97         refreshonly => true,
98     }
99     @ferm::rule { "dsa-ntp":
100         domain          => "(ip ip6)",
101         description     => "Allow ntp access",
102         rule            => "&SERVICE(udp, 123)"
103     }
104 }
105 # vim:set et:
106 # vim:set sts=4 ts=4:
107 # vim:set shiftwidth=4: