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