Allow sudo to runmirrors in the current location
[mirror/dsa-puppet.git] / modules / sudo / files / sudoers
1 # /etc/sudoers
2 ##
3 ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
4 ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
5 ##
6
7 ###################################################################
8 ###################################################################
9 ###################################################################
10 ##
11 ## PLEASE EDIT THIS FILE WITH THE visudo COMMAND TO ENSURE IT
12 ## IS SYNTACTICALLY VALID.
13 ##
14 ##  /usr/sbin/visudo -f sudoers
15 ##
16 ###################################################################
17 ###################################################################
18 ###################################################################
19
20 Defaults        env_reset
21 Defaults        passprompt="[sudo] password for %u on %h: "
22 Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
23
24 Defaults>archvsync secure_path="/home/archvsync/bin:/usr/local/bin:/usr/bin:/bin"
25
26 # Host alias specification
27 Host_Alias      VOIPHOSTS       = vogler
28 Host_Alias      WEBHOSTS        = wolkenstein
29 Host_Alias      SECHOSTS        = seger
30 Host_Alias      FTPHOSTS        = fasolo
31 Host_Alias      ZIVITHOSTS      = zelenka, zandonai
32 Host_Alias      AACRAIDHOSTS    = pettersson
33 Host_Alias      MEGARAIDHOSTS   = sibelius
34 Host_Alias      LISTHOSTS       = bendel
35 Host_Alias      BUILDD_MASTER   = wuiet
36 Host_Alias      PORTERBOXES     = abel, amdahl, asachi, barriere, eller, falla, fischer, harris, minkus, partch, plummer, pizzetti, zelenka
37 Host_Alias      PIUPARTS_SLAVE_HOSTS    = piu-slave-bm-a, piu-slave-ubc-01
38 Host_Alias      MQ_HOSTS        = rainier, rapoport
39 Host_Alias      JENKINSHOSTS    = jerea
40 Host_Alias      SIGNINGHOSTS    = fasolo
41
42 # Cmnd alias specification
43
44 # User privilege specification
45 root    ALL=(ALL) ALL
46
47
48 # DSA and local admins
49 %adm            ALL=(ALL)       ALL
50
51 %adm            ALL=(ALL)       NOPASSWD: /usr/bin/apt-get update, /usr/bin/apt-get upgrade, /usr/bin/apt-get dist-upgrade, /usr/bin/apt-get clean, /usr/sbin/samhain -t check -i -p err -s none -l none -m none, /usr/sbin/upgrade-porter-chroots
52
53 %zivit-admins   ZIVITHOSTS=(ALL)        NOPASSWD: ALL
54
55 # nagios
56 nagios          ALL=(ALL)       NOPASSWD: /bin/systemctl is-system-running
57 nagios          MQ_HOSTS=(rabbitmq)     NOPASSWD: /usr/sbin/rabbitmqctl list_queues -p dsa name messages consumers
58 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/service ekeyd-egd-linux restart
59 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/service samhain restart
60 nagios          ALL=(ALL)       NOPASSWD: /usr/lib/nagios/plugins/dsa-check-dabackup ""
61 nagios          ALL=(ALL)       NOPASSWD: /usr/lib/nagios/plugins/dsa-check-filesystems ""
62 nagios          ALL=(ALL)       NOPASSWD: /usr/lib/nagios/plugins/dsa-check-libs ""
63 nagios          ALL=(ALL)       NOPASSWD: /usr/lib/nagios/plugins/dsa-check-stunnel-sanity ""
64 nagios          handel=(puppet) NOPASSWD: /usr/lib/nagios/plugins/dsa-check-cert-expire /var/lib/puppet/ssl/certs/ca.pem
65 # with smartarray controllers
66 nagios          ALL=(ALL)       NOPASSWD: /sbin/hpasmcli ""
67 nagios          ALL=(ALL)       NOPASSWD: /usr/bin/arrayprobe ""
68 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller all show
69 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] ld all show
70 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] ld [0-9] show
71 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd all show
72 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd [0-9]\:[0-9] show
73 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9] show
74 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9][0-9] show
75 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] show status
76 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller all show
77 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] ld all show
78 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] ld [0-9] show
79 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd all show
80 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd [0-9]\:[0-9] show
81 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9] show
82 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9][0-9] show
83 nagios          ALL=(ALL)       NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] show status
84
85 # other raid controllers
86 nagios          AACRAIDHOSTS=(ALL)      NOPASSWD: /usr/local/bin/arcconf GETCONFIG 1 LD, /usr/local/bin/arcconf GETCONFIG 1 AD
87 nagios          MEGARAIDHOSTS=(ALL)     NOPASSWD: /usr/local/bin/megarc -AllAdpInfo -nolog, /usr/local/bin/megarc -dispCfg -a0 -nolog
88 # other nagios things
89 nagios          backuphost=(debbackup)  NOPASSWD: /usr/lib/nagios/plugins/dsa-check-backuppg ""
90 nagios          storace=(debbackup)     NOPASSWD: /usr/lib/nagios/plugins/dsa-check-backuppg ""
91
92 # groups and their role accounts
93 %appstream      ALL=(appstream) ALL
94 %auditor        ALL=(accounting)        ALL
95 %backports      ALL=(backports) ALL
96 %blends         ALL=(blends)    ALL
97 %bootstrap      ALL=(bootstrap) ALL
98 %btslink        ALL=(btslink)   ALL
99 %buildd         ALL=(buildd)    ALL
100 %codesearch     ALL=(codesearch)        ALL
101 %d-i            ALL=(d-i)       ALL
102 %dde            ALL=(dde)       ALL
103 %ddtp           ALL=(ddtp)      ALL
104 %debadmin       ALL=(dak)       ALL
105 %debbugs        ALL=(debbugs)   ALL
106 %debbugs        ALL=(debbugs-mirror)    ALL
107 %debconfstatic  ALL=(debconfstatic)     ALL
108 %debdelta       ALL=(debdelta)  ALL
109 %debian-cd      ALL=(debian-cd) ALL
110 %cloud-build    ALL=(cloud-build)       ALL
111 %cloud-ci       ALL=(cloud-ci)  ALL
112 %cloud-test     ALL=(cloud-test)        ALL
113 %cloud-deploy-aws       ALL=(cloud-deploy-aws)  ALL
114 %cloud-deploy-azure     ALL=(cloud-deploy-azure)        ALL
115 %cloud-deploy-gce       ALL=(cloud-deploy-gce)  ALL
116 %cloud-deploy-openstack ALL=(cloud-deploy-openstack)    ALL
117 %cloud-deploy-digitalocean      ALL=(cloud-deploy-digitalocean) ALL
118 %debian-i18n    ALL=(debian-i18n)       ALL
119 %debian-r       ALL=(debian-r)  ALL
120 %debian-r       ALL=(debian-r-wb-buildd)        ALL
121 %debian-release ALL=(release)   ALL
122 %debsources     ALL=(debsources)        ALL
123 %debtags        ALL=(debtags)   ALL
124 %debwww         ALL=(debwww)    ALL
125 %dedup          ALL=(dedup)     ALL
126 %dgit           ALL=(dgit)      ALL
127 %dgit           ALL=(dgit-unpriv)       ALL
128 %emdebian       ALL=(emdebian)  ALL
129 %forums         ALL=(forums)    ALL
130 %gitdoadm       ALL=(gitdoadm)  ALL
131 # the git user also exists on adayevskaya where it's a different service..
132 %gitdoadm       godard=(git)    ALL
133 %keyring        ALL=(keyring)   ALL
134 %jenkins-adm    ALL=(jenkins-adm)       ALL
135 %lintian        ALL=(lintian)   ALL
136 %listweb        ALL=(listweb)   ALL
137 %list           LISTHOSTS=(list)        ALL
138 # archives and stuff
139 %list           master=(debian) ALL
140 %manpages       ALL=(manpages)  ALL
141 %mirroradm      ALL=(archvsync) ALL
142 %mirroradm      melartin=(mirroradm)    ALL
143 %nm             ALL=(nm)        ALL
144 %patch-tracker  ALL=(patch-tracker)     ALL
145 %pet-devel      ALL=(pet-devel) ALL
146 %piuparts       ALL=(piupartsm) ALL
147 %piuparts       ALL=(piupartss) ALL
148 %pkg_maint      ALL=(pkg_user)  ALL
149 %planet         ALL=(planet)    ALL
150 %popcon         ALL=(popcon)    ALL
151 %ports          ALL=(ports)     ALL
152 %search         ALL=(search)    ALL
153 %secretary      ALL=(secretary) ALL
154 %sectracker     ALL=(sectracker)        ALL
155 %security       SECHOSTS=(mail_security)        ALL
156 %security       ALL=(security)  ALL
157 %snapshot       ALL=(snapshot)  ALL
158 %uddadm         ALL=(udd)       ALL
159 %videoteam      vittoria=(veyepar)      ALL
160 %videoteam      vittoria=(sreview)      ALL
161 %volatile       ALL=(volatile)  ALL
162 %wbadm          ALL=(wbadm)     ALL
163 %mujeres        ALL=(women)     ALL
164 %wikiadm        ALL=(wiki,wikiweb)      ALL
165 %qa-core        ALL=(qa)        ALL
166 %gobby          gombert=(gobby) ALL
167 %dacshelper     diabelli=(www-data)     ALL
168 %debsso         diabelli=(debsso)       ALL
169 %debsso-web     diabelli=(debsso-web)   ALL
170 %debconf-web    debussy=(debconf-web)   ALL
171
172 # the dak user gets to run stuff as dak-unpriv (for things like lintian checks)
173 %ftptrainee     FTPHOSTS=(dak-unpriv)   NOPASSWD: /usr/bin/lintian
174 dak             ALL=(dak-unpriv)        NOPASSWD: ALL
175 # and ftpmaster can access the role user for their web services
176 %debadmin       FTPHOSTS=(dak-web)      ALL
177 # the dak user gets to sign stuff
178 dak             SIGNINGHOSTS=(codesign) /usr/local/bin/secure-boot-code-sign
179
180 # some groups are in apachectrl on "their" hosts so they can reload apache and update their vhost
181 %apachectrl     ALL=(root)      /usr/sbin/apache2-vhost-update
182
183 # buildd
184 # FIXME: change that ALL for hosts to a hostlist of buildds?
185 Defaults:buildd env_reset,env_keep+="APT_CONFIG DEBIAN_FRONTEND"
186 buildd          ALL=(ALL)               NOPASSWD: ALL
187
188 %appstream      mekeel=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component appstream.debian.org
189 %backports      FTPHOSTS,coccia=(staticsync)    NOPASSWD: /usr/local/bin/static-update-component backports.debian.org
190 %bootstrap      boott=(staticsync)              NOPASSWD: /usr/local/bin/static-update-component bootstrap.debian.net
191 d-i             dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component d-i.debian.org
192 lucas           dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debaday.debian.net
193 dsa             dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component dsa.debian.org
194 dak             FTPHOSTS=(staticsync)           NOPASSWD: /usr/local/bin/static-update-component incoming.debian.org
195 dak             FTPHOSTS=(staticsync)           NOPASSWD: /usr/local/bin/static-update-component metadata.ftp-master.debian.org
196 %publicity      dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component bits.debian.org
197 %publicity      dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component micronews.debian.org
198 %mirroradm      melartin=(staticsync)           NOPASSWD: /usr/local/bin/static-update-component mirror-master.debian.org
199 %debdelta       donizetti=(staticsync)          NOPASSWD: /usr/local/bin/static-update-component debdeltas.debian.net
200 %webwml         master=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component network-test.debian.org
201 planet          philp=(staticsync)              NOPASSWD: /usr/local/bin/static-update-component planet.debian.org
202 debwww          wolkenstein=(staticsync)        NOPASSWD: /usr/local/bin/static-update-component www.debian.org
203 %blends         dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component blends.debian.org
204 %Debian         dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component wnpp-by-tags.debian.net
205 %Debian         dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component mozilla.debian.net
206 %ports          dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component www.ports.debian.org
207 %debian-release respighi=(staticsync)           NOPASSWD: /usr/local/bin/static-update-component release.debian.org
208 %debian-release coccia=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component release.debian.org-pu
209 %debvoip        dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component rtc.debian.org
210 %security       dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component security-team.debian.org
211 %publicity      dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component timeline.debian.net
212 pabs            dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component timeline.debian.net
213 %lintian        lindsay=(staticsync)            NOPASSWD: /usr/local/bin/static-update-component lintian.debian.org
214 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component 10years.debconf.org
215 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf0.debconf.org
216 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf1.debconf.org
217 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf2.debconf.org
218 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf3.debconf.org
219 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf4.debconf.org
220 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf5.debconf.org
221 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf6.debconf.org
222 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf7.debconf.org
223 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf16.debconf.org
224 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf17.debconf.org
225 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component debconf18.debconf.org
226 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component es.debconf.org
227 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component fr.debconf.org
228 %debconfstatic  dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component miniconf10.debconf.org
229 mini-dak        porta=(staticsync)              NOPASSWD: /usr/local/bin/static-update-component incoming.ports.debian.org
230 %wbadm          wuiet=(staticsync)              NOPASSWD: /usr/local/bin/static-update-component apt.buildd.debian.org
231 %manpages       manziarly=(staticsync)          NOPASSWD: /usr/local/bin/static-update-component manpages.debian.org
232 %dpl            dillon=(staticsync)             NOPASSWD: /usr/local/bin/static-update-component dpl.debian.org
233
234 # The piuparts slave needs to handle chroots
235 piupartss       PIUPARTS_SLAVE_HOSTS=(ALL)              NOPASSWD: ALL
236 # trigger of mirror run for packages
237 dnsadm          denis=(root)                    NOPASSWD: /usr/sbin/service bind9 reload
238 letsencrypt     denis=(dnsadm)                  NOPASSWD: /srv/dns.debian.org/bin/update
239 %adm            draghi=(puppet)                 NOPASSWD: /usr/bin/make -s -C /srv/db.debian.org/var/gitnagios/dsa-nagios/config install
240 # wbadm can update all buildd* users' keys on buildd.d.o
241 %wbadm          BUILDD_MASTER=(wb-buildd)       ALL
242 %wbadm          BUILDD_MASTER=(root)            /usr/local/bin/update-buildd-sshkeys
243 # mirror push
244 dak             FTPHOSTS,SECHOSTS=(archvsync)   NOPASSWD:/home/archvsync/runmirrors, /home/archvsync/bin/runmirrors
245 # archvsync triggers snapshot
246 archvsync       sibelius=(snapshot)     NOPASSWD: /srv/snapshot.debian.org/bin/update-trigger
247 archvsync       sibelius=(snapshot)     NOPASSWD: /srv/2ndsnapshot/bin/update-trigger
248 # dak stuff
249 %debian-release FTPHOSTS=(dak)          /usr/local/bin/dak transitions --import *
250 %ftpteam        FTPHOSTS=(dak)          /usr/local/bin/dak transitions --import *
251 # security
252 %security       SECHOSTS=(dak)          NOPASSWD: /usr/local/bin/dak new-security-install -[AR]
253 %sec_public     SECHOSTS=(dak)          NOPASSWD: /usr/local/bin/dak new-security-install -[AR]
254 %sec_public     SECHOSTS=(dak)          NOPASSWD: /home/dak/trigger_mirror
255 dak             SECHOSTS=(archvsync)    NOPASSWD: /home/archvsync/signal_security
256 dak             SECHOSTS=(archvsync)    NOPASSWD: /home/archvsync/signal_security-buildd-pool
257 # web stuff
258 debwww          WEBHOSTS=(archvsync)    NOPASSWD: /home/archvsync/webmirrors/runmirrors
259 %publicity      WEBHOSTS=(debwww)       /srv/www.debian.org/update-part News
260 %debvote        WEBHOSTS=(debwww)       /srv/www.debian.org/update-part vote
261 %d-i            WEBHOSTS=(debwww)       /srv/www.debian.org/update-part devel/debian-installer
262 %d-i            WEBHOSTS=(debwww)       /srv/www.debian.org/cron/lessoften-parts/1installation-guide
263 # more list stuff
264 %list           LISTHOSTS=(postfix)             /usr/sbin/postcat
265 %list           LISTHOSTS=(root)                /usr/sbin/postfix reload
266 %list           LISTHOSTS=(root)                /usr/sbin/qshape, /usr/sbin/postsuper
267 %list           LISTHOSTS=(root)                /usr/sbin/service spamassassin restart, /usr/sbin/service spamassassin reload, /usr/sbin/service spamassassin stop, /usr/sbin/service spamassassin start
268 %list           LISTHOSTS=(root)                /usr/sbin/service amavis restart, /usr/sbin/service amavis reload, /usr/sbin/service amavis stop, /usr/sbin/service amavis start
269 %list           LISTHOSTS=(amavis)              NOPASSWD: /usr/bin/sa-learn
270 %list           LISTHOSTS=(amavis)              ALL
271 # geodns may reload bind
272 geodnssync      geo1,geo2,geo3=(root)   NOPASSWD: /usr/sbin/service bind9 reload
273 geodnssync      geo1,geo2,geo3=(root)   NOPASSWD: /usr/sbin/rndc reconfig
274 # pushed nagiosadm reload icinga on tchaikovsky
275 nagiosadm       tchaikovsky=(root)              NOPASSWD: /usr/sbin/service icinga reload
276 # voip stuff
277 %debvoip        VOIPHOSTS=(root)        /usr/sbin/service resiprocate-turn-server restart, /usr/sbin/service repro restart
278 %debvoip        VOIPHOSTS=(root)        /usr/sbin/service prosody restart, /usr/sbin/service prosody reload, /usr/sbin/service prosody stop, /usr/sbin/service prosody start
279 # jenkins
280 %jenkins-adm    JENKINSHOSTS=(jenkins)  ALL
281 %jenkins-adm    JENKINSHOSTS=(root)     /usr/sbin/service jenkins restart, /usr/sbin/service jenkins reload, /usr/sbin/service jenkins stop, /usr/sbin/service jenkins start
282
283 %Debian,%guest,%d-i     PORTERBOXES=(root)      NOPASSWD: /usr/local/bin/dd-schroot-cmd
284
285
286 # ports stuff
287 mini-dak        porta=(archvsync)       NOPASSWD: /home/archvsync/signal_ports
288
289 # temporary, for debugging
290 thijs           klecker=(root)          /usr/sbin/tcpdump