Articles of sudo

我怎样才能得到sudo授权我在一个密码的多个pty?

我在Debian上运行sudo 1.7.4版本。 在这个版本中,不同于一些旧版本,每个pty必须分别授权一个密码和超时。 在较旧的版本中,在超时期间, 任何 pty都有一个密码。 我想劝说sudo恢复到以前的行为,以便我可以使用一堆xterm窗口,而不必不断重新键入我的密码。 有谁知道如何做到这一点?

如何让用户在sudoers中执行包含引号的命令?

我有这个命令 chroot /chroots/box /bin/bash -c 'cd /repos/system && git pull' 我试图在/ etc / sudoers中写入 user ALL = (root) NOPASSWD: chroot /chroots/box /bin/bash -c 'cd /repos/system && git pull' 但是这并没有奏效。 在我见过的日志里 sudo: user : command not allowed ; TTY=pts/7 ; PWD=/home/user ; USER=root ; COMMAND=chroot /chroots/box /bin/bash -c cd /repos/system && git pull 我也尝试在sudo调用中像“ \'那样转义引号,并且在日志文件中出现了相同的错误。 这个repo会影响chroot的根文件系统,所以我不能从外面调用git […]

奇怪的path,当通过ldap使用sudoers

我有一个可用的LDAP身份validation环境。 LDAP服务器在Ubuntu 12.04机器上,而客户机都是Centos 6.4机器。 最近我在这篇文章中configuration了LDAP的sudoers。http ://www.malaya-digital.org/configure-ldap-for-sudo-support-in-ubuntu-server-11-04-64-bit/ 一切正常,但使用sudo执行命令时,PATH很奇怪。 这是sudo的path # sudo printenv PATH "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" 似乎上面显示的PATH中列出的每个命令都可以执行,除了/ bin。 例如 # sudo which node /usr/local/bin/node # sudo which zip /usr/bin/zip # sudo which ip /sbin/ip # sudo which ls which: no ls in ("/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin") #WTF?? # sudo ls / sudo: ls: command not found 但是,使用完整path在/ bin中执行命令时,它将起作用。 # sudo /bin/ls […]

nagios nrpe无法读取输出

我试图使用check_nrpe检查远程服务器,但它不工作,我不知道我错过了什么… # /usr/lib/nagios/plugins/check_nrpe -H XXX -c check_load -a 6,5,4 8,7,6 NRPE: Unable to read output # 远程的服务器系统日志消息: nrpe[18058]: Connection from XX.XX.XX.XX port 16267 nrpe[18058]: Host address is in allowed_hosts nrpe[18058]: Handling the connection… nrpe[18058]: Host is asking for command 'check_load' to be run… nrpe[18058]: Running command: /usr/bin/sudo /usr/lib64/nagios/plugins/check_load -w 6,5,4 -c 8,7,6 nrpe[18058]: Command completed […]

允许用户只能sudo到特定的帐户

不要问为什么我这样做,但我必须。 假设我有一个用户名“bob”,他需要运行一个程序作为“monitor”。 我想让“鲍勃”sudo到监测帐户,并运行该过程。 显然,我可以给“bob”sudo访问来运行应用程序,但我被告知它必须作为“显示器”运行。 无论如何,这怎么能做到?

为什么visudo说有一个语法错误?

我正在使用CentOS uname -a Linux mydomain.com 3.2.29-48.63.amzn1.x86_64 #1 SMP Sat Sep 15 01:43:12 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux 我正在尝试使用visudo将此命令添加到我的/ etc / sudoers文件中。 Cmnd_Alias CHOWNCMD = /bin/chown jboss:jboss /usr/java/jboss/server/default/deploy/myclient*.ear 但是当我尝试保存时,却抱怨语法错误。 我可以在命令行上运行这个命令(“=”之后的所有内容),所以我很难搞清楚visudo在抱怨什么。 任何build议如何修改上面的行获取visudo行为? 戴夫

sudo罚款,sudo ls不工作(命令未find)

在运行EC2的Ubuntu 13.04上,通过sudo所有命令都可以正常工作,除了ls 。 以下是一些示例命令来说明问题: ubuntu at host in ~ $ sudo ls sudo: command: command not found ubuntu at host in ~ 1 $ sudo which ls /bin/ls ubuntu at host in ~ $ sudo /bin/ls bin dotfiles init npm tmp ubuntu at host in ~ $ sudo pwd /home/ubuntu ubuntu at host in ~ […]

如何指定root的环境variables?

我做轨道发展。 在这个应用程序中,我需要指定环境variablesLD_LIBRARY_PATH = /usr/local/oracle/lib ,但是当我使用sudo脚本/服务器运行应用程序时,它不会运行,因为该库path不在root的环境中。 我该怎么做才能使它工作? 我试图把根目录下的path./bashrc ,它不工作。

在哈德逊执行build立任务与根privilic

我有一个执行apt-get的构build脚本,因此需要root权限。 在哈德森运行这个脚本的最好方法是什么? 目前唯一的解决scheme,我发现的作品是添加一个条目的sudoers文件为用户哈德森像这样: hudson ALL=(ALL) NOPASSWD:ALL 但是,尽pipe我的构build脚本现在在Hudson中运行时没有错误,但我对这个解决scheme并不完全熟悉。 有没有更好的办法?

避免Jenkins错误的最佳实践:sudo:没有tty存在,也没有指定askpass程序

从Jenkins运行任何sudo命令时,出现以下错误: sudo:没有tty present,也没有askpass程序 我知道我可以通过在/etc/sudoers文件中添加一个NOPASSWD条目来解决这个问题,它允许用户jenkins运行命令而不需要密码。 我可以添加一个像这样的条目: %jenkins ALL=(ALL)NOPASSWD:/home/vts_share/test/sudotest.sh …但这会导致以下问题: 如何避免在sudoers文件中指定完整path? 我可以添加一个像这样的条目: %jenkins ALL=NOPASSWD: ALL …但是这允许用户jenkins避免所有命令的密码提示,这似乎有点不安全。 我只是好奇我的select在哪里,如果有什么最佳做法,我应该考虑。