我试图用sudo强制执行特定命令的密码,而不pipe密码是否在第二次input之前。 有没有办法呢? 谷歌上的每一个search结果只是解释如何删除密码提示与NOPASSWD这是好的,但我仍然希望SPECIFIC命令获得密码提示每次他们得到执行,即使密码刚刚进入一秒钟之前。 我的做法是这样的: Defaults !authenticate Cmnd_Alias WITHPW = rm -R, shutdown, Defaults:WITHPW authenticate 有人可以解释,如果这是正确的方式,或我能做些什么? 谢谢, 一个/
我希望能够连接到服务器,启动一个sudo shell,然后使用代理转发连接到另一台服务器(以便使用SCP将文件复制到受保护区域)。 但: ubuntu@tunnelator:/var/www$ ssh -p 10022 stevebennett@localhost Last login: Fri Apr 5 10:54:03 2013 from localhost ~ exit Connection to localhost closed. ubuntu@tunnelator:/var/www$ sudo ssh -p 10022 stevebennett@localhost Password: 据推测,启动sudo shell会阻止代理转发。 不同之处在于: debug1: Offering RSA public key: id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 277 debug1: Authentication succeeded (publickey). 与: debug1: Next authentication […]
我试图在我的/etc/sudoers文件(在Ubuntu 12.04 LTS服务器上)中为sudotest.sh (或任何需要sudo的脚本/二进制文件)添加NOPASSWD条目,但为了使其工作,我必须指定满path。 以下条目工作得很好: %jenkins ALL=(ALL)NOPASSWD:/home/vts_share/test/sudotest.sh 问题是脚本可能会移动到不同的目录。 这似乎是一个很好的机会在path中使用*通配符(即/*/sudotest.sh ),以便我的脚本可以在任何目录中,但手册指出在path中使用通配符时不匹配/字符。 我已经确认它不起作用。 我知道我可以用ALL代替我的脚本,但这意味着没有任何密码提示对任何看起来不安全的命令。 我如何解决这个问题?
我想从winscp编辑/etc文件。 我有这台计算机上的pipe理员权限,如何编辑文件并将其从Winscp保存到需要sudo文件夹中,然后再进行修改。 我想这样做是因为我讨厌在Windows机器上编辑terminal中的文件,而Winscp提供了一个很好的编辑器, 谢谢,麻烦您了。
我有一个客户端和Ubuntu服务器之间的RSA密钥authentication设置( 按照此过程 ): -ssh和rsync的RSA密钥authentication工作正常(不需要密码)。 – sudo rsync和sudo ssh的RSA密钥authentication失败(提示input密码)。 – 我需要使用sudo rsync来在本地写入远程文件。 我正在运行命令如下: user1@server:/$ sudo su user2 user2@server:/$ rsync 192.168.1.2:… # ok user2@server:/$ sudo rsync 192.168.1.2:… # remote host password prompt FYI user1和user2都是sudoers的一部分 任何想法可能来自哪里? 谢谢。 更新:澄清,密码提示不是来自sudo,而是来自服务器
所以我想限制Apache只更改某个文件夹和所有子目录的权限,所以这是我在sudoers文件中 apache ALL= (ALL) NOPASSWD: /bin/chmod -R [g+ws] /var/www/sites/[az]+ 但是这似乎并不奏效。 我确定我可以通过删除子文件夹的限制来实现它,但这似乎很危险,因为这会给潜在的黑客无限制访问。 那么有没有办法限制Apache只更改“网站”文件夹内的文件和文件夹,或者我坚持给无限访问chmod / chown? 使用这种方法有没有什么大的安全漏洞?
我已经search了高和低的答案。 我有密钥设置,所以没有密码是需要的SSH到远程主机。 我有sudo设置与该用户,以便我可以运行所需的命令作为root用户没有密码。 我只用ssh来执行几天的远程命令(这是一个多么辉煌的发现!)。 一点背景:在远程主机上运行的脚本是一个典型的程序启动/停止脚本。 在实际程序的某处,打开一个日志文件进行写入。 在远程主机上,如果以root用户身份运行脚本,一切正常。 如果我作为用户运行它,我得到一个错误: log4cplus:ERROR Unable to open file: appname.log 。 有道理,因为日志属于root。 现在,情况:我的本地主机上有一个脚本,它将SSH入远程主机,并使用sudo将运行该脚本。 脚本能够运行。 但是,启动后,我得到了与上面有关日志文件相同的错误。 我已经尝试了以下,这些都成功地运行脚本,但得到错误。 我知道有些是没有必要的,但是我想涵盖所有我能find的基础(我也尝试过-t,但是没有区别,我不认为会有,但是…): /usr/bin/ssh username@remotehost sh -c sudo "/etc/rc3.d/S99script start" /usr/bin/ssh username@remotehost sh -c sudo "/etc/rc3.d/S99script start" /usr/bin/ssh username@remotehost 'sh -c sudo "/etc/rc3.d/S99script start"' /usr/bin/ssh username@remotehost sudo /etc/rc3.d/S99script start /usr/bin/ssh username@remotehost "sudo /etc/rc3.d/S99script start" /usr/bin/ssh username@remotehost sudo […]
我想改变我的SHA512阴影文件以使用bcrypt,如在这个问题/答案中所示: 启用基于blowfish的哈希支持crypt 问题是我碰到鸡和鸡蛋的问题,因为现有的阴影文件是SHA512encryption,这意味着sudo不能工作了,只要我编辑 /etc/pamd/common-password
有没有一种理想的方式来限制访问服务器pipe理员,他们可以做什么,不能用sudo做什么? 我希望从基本的命令行动到更高级的能力,比如服务控制。 我也不希望他们有能力触摸根或编辑日志。 我正在运行带有CPanel的CentOS 6。
我在~/.bash_profile设置了几个别名,在/root/.bash_profile设置了相同的/root/.bash_profile所以我可以使用v file而不是vim file等。 这些工作正常,当我实际login为这些用户,但是当我做一些像sudo v file ,sudo不能找出别名,并失败。 有没有办法让sudo了解别名?