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 LISTHOSTS = bendel
37 Host_Alias BUILDD_MASTER = wuiet
38 Host_Alias PORTERBOXES = abel, amdahl, barriere, eller, harris, minkus, partch, plummer, zelenka
39 Host_Alias PIUPARTS_SLAVE_HOSTS = piu-slave-bm-a, piu-slave-ubc-01
40 Host_Alias MQ_HOSTS = rainier, rapoport
41 Host_Alias JENKINSHOSTS = jerea
43 # Cmnd alias specification
45 # User privilege specification
49 # DSA and local admins
52 %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
54 %zivit-admins ZIVITHOSTS=(ALL) NOPASSWD: ALL
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 --ignore-younger=1h
63 nagios ALL=(ALL) NOPASSWD: /usr/lib/nagios/plugins/dsa-check-stunnel-sanity ""
64 nagios ALL=(ALL) NOPASSWD: /usr/lib/nagios/plugins/dsa-check-systemd-services ""
65 nagios handel=(puppet) NOPASSWD: /usr/lib/nagios/plugins/dsa-check-cert-expire /var/lib/puppet/ssl/certs/ca.pem
66 # with smartarray controllers
67 nagios ALL=(ALL) NOPASSWD: /sbin/hpasmcli ""
68 nagios ALL=(ALL) NOPASSWD: /usr/bin/arrayprobe ""
69 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller all show
70 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] ld all show
71 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] ld [0-9] show
72 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd all show
73 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd [0-9]\:[0-9] show
74 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9] show
75 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9][0-9] show
76 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpssacli controller slot=[0129] show status
77 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller all show
78 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] ld all show
79 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] ld [0-9] show
80 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd all show
81 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd [0-9]\:[0-9] show
82 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9] show
83 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] pd [0-9][EIC]\:[0-9]\:[0-9][0-9] show
84 nagios ALL=(ALL) NOPASSWD: /usr/sbin/hpacucli controller slot=[0129] show status
86 # other raid controllers
87 nagios AACRAIDHOSTS=(ALL) NOPASSWD: /usr/local/bin/arcconf GETCONFIG 1 LD, /usr/local/bin/arcconf GETCONFIG 1 AD
88 nagios MEGARAIDHOSTS=(ALL) NOPASSWD: /usr/local/bin/megarc -AllAdpInfo -nolog, /usr/local/bin/megarc -dispCfg -a0 -nolog
90 nagios backuphost=(debbackup) NOPASSWD: /usr/lib/nagios/plugins/dsa-check-backuppg ""
91 nagios storace=(debbackup) NOPASSWD: /usr/lib/nagios/plugins/dsa-check-backuppg ""
93 # groups and their role accounts
94 %appstream ALL=(appstream) ALL
95 %auditor ALL=(accounting) ALL
96 %backports ALL=(backports) ALL
97 %blends ALL=(blends) ALL
98 %bootstrap ALL=(bootstrap) ALL
99 %btslink ALL=(btslink) ALL
100 %buildd ALL=(buildd) ALL
101 %codesearch ALL=(codesearch) ALL
105 %debadmin ALL=(dak) ALL
106 %debbugs ALL=(debbugs) ALL
107 %debbugs ALL=(debbugs-mirror) ALL
108 %debconfstatic ALL=(debconfstatic) ALL
109 %debdelta ALL=(debdelta) ALL
110 %debian-cd ALL=(debian-cd) ALL
111 %cloud-build ALL=(cloud-build) ALL
112 %cloud-ci ALL=(cloud-ci) ALL
113 %cloud-test ALL=(cloud-test) ALL
114 %cloud-deploy-aws ALL=(cloud-deploy-aws) ALL
115 %cloud-deploy-azure ALL=(cloud-deploy-azure) ALL
116 %cloud-deploy-gce ALL=(cloud-deploy-gce) ALL
117 %cloud-deploy-openstack ALL=(cloud-deploy-openstack) ALL
118 %cloud-deploy-digitalocean ALL=(cloud-deploy-digitalocean) ALL
119 %debian-i18n ALL=(debian-i18n) ALL
120 %debian-r ALL=(debian-r) ALL
121 %debian-r ALL=(debian-r-wb-buildd) ALL
122 %debian-release ALL=(release) ALL
123 %debsources ALL=(debsources) ALL
124 %debtags ALL=(debtags) ALL
125 %debwww ALL=(debwww) ALL
126 %dedup ALL=(dedup) ALL
128 %dgit ALL=(dgit-unpriv) ALL
129 %emdebian ALL=(emdebian) ALL
130 %forums ALL=(forums) ALL
131 %gitdoadm ALL=(gitdoadm) ALL
132 # the git user also exists on adayevskaya where it's a different service..
133 %gitdoadm godard=(git) ALL
134 %gitdoadm godard=(salsa-webhook) ALL
135 %keyring ALL=(keyring) ALL
136 %jenkins-adm ALL=(jenkins-adm) ALL
137 %lintian ALL=(lintian) ALL
138 %listweb ALL=(listweb) ALL
139 %list LISTHOSTS=(list) ALL
141 %list master=(debian) ALL
142 %manpages ALL=(manpages) ALL
143 %mirroradm ALL=(archvsync) ALL
144 %mirroradm melartin=(mirroradm) ALL
146 %patch-tracker ALL=(patch-tracker) ALL
147 %pet-devel ALL=(pet-devel) ALL
148 %piuparts ALL=(piupartsm) ALL
149 %piuparts ALL=(piupartss) ALL
150 %pkg_maint ALL=(pkg_user) ALL
151 %planet ALL=(planet) ALL
152 %popcon ALL=(popcon) ALL
153 %ports ALL=(ports) ALL
154 %search ALL=(search) ALL
155 %secretary ALL=(secretary) ALL
156 %sectracker ALL=(sectracker) ALL
157 %security SECHOSTS=(mail_security) ALL
158 %security ALL=(security) ALL
159 %snapshot ALL=(snapshot) ALL
160 %uddadm ALL=(udd) ALL
161 %videoteam vittoria=(veyepar) ALL
162 %videoteam vittoria=(sreview) ALL
163 %volatile ALL=(volatile) ALL
164 %wbadm ALL=(wbadm) ALL
165 %mujeres ALL=(women) ALL
166 %wikiadm ALL=(wiki,wikiweb) ALL
167 %qa-core ALL=(qa) ALL
168 %gobby gombert=(gobby) ALL
169 %dacshelper diabelli=(www-data) ALL
170 %debsso diabelli=(debsso) ALL
171 %debsso-web diabelli=(debsso-web) ALL
172 %debconf-web debussy=(debconf-web) ALL
174 # the dak user gets to run stuff as dak-unpriv (for things like lintian checks)
175 %ftptrainee FTPHOSTS=(dak-unpriv) NOPASSWD: /usr/bin/lintian
176 dak ALL=(dak-unpriv) NOPASSWD: ALL
177 # and ftpmaster can access the role user for their web services
178 %debadmin FTPHOSTS=(dak-web) ALL
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
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
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 debian-cd casulana=(staticsync) NOPASSWD: /usr/local/bin/static-update-component cdbuilder-logs.debian.org
193 lucas dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debaday.debian.net
194 dsa dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component dsa.debian.org
195 dak FTPHOSTS=(staticsync) NOPASSWD: /usr/local/bin/static-update-component incoming.debian.org
196 dak FTPHOSTS=(staticsync) NOPASSWD: /usr/local/bin/static-update-component metadata.ftp-master.debian.org
197 %publicity dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component bits.debian.org
198 %publicity dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component micronews.debian.org
199 %mirroradm melartin=(staticsync) NOPASSWD: /usr/local/bin/static-update-component mirror-master.debian.org
200 %debdelta donizetti=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debdeltas.debian.net
201 %webwml master=(staticsync) NOPASSWD: /usr/local/bin/static-update-component network-test.debian.org
202 planet philp=(staticsync) NOPASSWD: /usr/local/bin/static-update-component planet.debian.org
203 debwww wolkenstein=(staticsync) NOPASSWD: /usr/local/bin/static-update-component www.debian.org
204 %blends dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component blends.debian.org
205 %Debian dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component wnpp-by-tags.debian.net
206 %Debian dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component mozilla.debian.net
207 %ports dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component www.ports.debian.org
208 %debian-release respighi=(staticsync) NOPASSWD: /usr/local/bin/static-update-component release.debian.org
209 %debian-release coccia=(staticsync) NOPASSWD: /usr/local/bin/static-update-component release.debian.org-pu
210 %debvoip dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component rtc.debian.org
211 %security dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component security-team.debian.org
212 %publicity dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component timeline.debian.net
213 pabs dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component timeline.debian.net
214 %lintian lindsay=(staticsync) NOPASSWD: /usr/local/bin/static-update-component lintian.debian.org
215 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component 10years.debconf.org
216 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf0.debconf.org
217 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf1.debconf.org
218 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf2.debconf.org
219 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf3.debconf.org
220 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf4.debconf.org
221 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf5.debconf.org
222 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf6.debconf.org
223 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf7.debconf.org
224 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf16.debconf.org
225 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf17.debconf.org
226 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component debconf18.debconf.org
227 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component es.debconf.org
228 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component fr.debconf.org
229 %debconfstatic dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component miniconf10.debconf.org
230 mini-dak porta=(staticsync) NOPASSWD: /usr/local/bin/static-update-component incoming.ports.debian.org
231 %wbadm wuiet=(staticsync) NOPASSWD: /usr/local/bin/static-update-component apt.buildd.debian.org
232 %manpages manziarly=(staticsync) NOPASSWD: /usr/local/bin/static-update-component manpages.debian.org
233 %dpl dillon=(staticsync) NOPASSWD: /usr/local/bin/static-update-component dpl.debian.org
235 # The piuparts slave needs to handle chroots
236 piupartss PIUPARTS_SLAVE_HOSTS=(ALL) NOPASSWD: ALL
237 # trigger of mirror run for packages
238 dnsadm denis=(root) NOPASSWD: /usr/sbin/service bind9 reload
239 letsencrypt denis=(dnsadm) NOPASSWD: /srv/dns.debian.org/bin/update
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
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
249 %debian-release FTPHOSTS=(dak) /usr/local/bin/dak transitions --import *
250 %ftpteam FTPHOSTS=(dak) /usr/local/bin/dak transitions --import *
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
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
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
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
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
283 %Debian,%guest,%d-i PORTERBOXES=(root) NOPASSWD: /usr/local/bin/dd-schroot-cmd
287 mini-dak porta=(archvsync) NOPASSWD: /home/archvsync/signal_ports
289 # temporary, for debugging
290 thijs klecker=(root) /usr/sbin/tcpdump