Articles of sudo

使用Ubuntu Server 14.04作为web开发者

我的networking中安装了Ubuntu Server 14.04,专门用于开发网站(PHP,Laravel)。 网站位于/var/www/domain.ext下的自己的目录中,开发期间可以在我的客户的开发过程中访问(例如http://domain.mydoman.com )。 我使用Windows机器开发网站,并通过在服务器上使用Samba(在我的专用networking中共享/ var / www)保存网站文件。 / var / www目录recursion设置为nobody:nogroup。 我pipe理在terminal以普通用户身份login的服务器网站(使用Composer,Bower,Artisan等) 我遇到的简单问题是: 当使用Artisan,Composer,Bower时,我必须使用sudo(Bower sudo / allow-root)来获得写权限。 这会导致权利和所有权方面的问题。 我再次成为普通用户时,无法find全局安装的软件包(和添加path)(它们是由root创build和拥有的)。 在使用这些软件包之后,我必须将所有这些软件包的所有权转交给nobody:nogroup。 我知道,这一切都与权利和所有权有关,并且使用任何人都不是:nogroup不是正确的方法。 Apache2应该是www-data:www-data。 在所有教程中,我发现他们谈论的是专用的networking服务器。 我很害怕篡改服务器,因为尽pipe存在这些问题,目前正在使用和开发中。 在这种情况下,使用Samba的专用Ubuntu Server 14.04的正确设置是什么?

如何从一个网站运行root命令?

我正在从事一个项目,我打算做一个具有服务器pipe理function的网站。 到目前为止,我能够运行所有客户命令,如ping,nmap等。 但是,我想要运行root命令,就像添加用户一样。

在GPFS文件系统中阻止root用户更改文件夹权限

我在创build的GPFS / SpectrumScale文件系统中创build了一个NFS导出。 我已经启用了基于AD的身份validation我们的域名。 一切正常。 NFS导出是使用NFS4创build的。 NFS导出安装在一些linux虚拟机上。 问题是,当用户运行sudo时,无论ACL允许什么,他们都可以访问所有文件夹并更改文件/文件夹的权限。 有没有办法防止root覆盖ACL? 在GPFS中,我使用ROOT_SQUASH设置了NFS导出,认为这样做,但是当我使用没有域pipe理员权限的testing帐户进行sudo时,我仍然可以更改权限。

sudo / bin / bash和sudo su访问root的区别

我知道在terminal上至less有两种方法可以升级到root权限,而且真的好奇,对于可以访问或者不能访问的内容是否存在差异/差异。 另外,是否有任何安全的好处或缺点?

Centos 6 – 允许sudo composer自动更新为用户没有密码

我试图让我的轮组用户运行sudo composer self-update而不提示input我的部署脚本的密码。 我已经将下面的底线添加到我的/etc/sudoers文件中: ## Allows people in group wheel to run all commands %wheel ALL=(ALL) ALL %wheel ALL=(ALL) NOPASSWD: /usr/local/bin/composer 但它仍然在提示input密码。 删除下一行删除了我作为用户sudo任何命令的能力。 我做错了什么? 我需要重新启动吗?

执行脚本的敏感sudo密码是必需的

我有一个敏感的处理程序,在一个终结点Linux机器上被触发(Centos 6.6。这里是我正在使用的脚本: #!/bin/bash –login sudo -n -u deploy bash –login -c "cd /var/www/vhosts/sc/current; pwd; BUNDLE_GEMFILE=/var/www/vhosts/sc/current/Gemfile RAILS_ENV=production bundle exec pumactl -F /var/www/vhosts/sc/shared/config/puma.rb stop " sudo -n -u deploy bash –login -c "cd /var/www/vhosts/sc/current; pwd; BUNDLE_GEMFILE=/var/www/vhosts/sc/current/Gemfile RAILS_ENV=production bundle exec pumactl -F /var/www/vhosts/sc/shared/config/puma.rb start " 作为另一个用户在本地运行这个脚本工作正常,我可以让美洲狮重新启动。 即使我给了一个shell并在端点上执行脚本。 当它从sensu服务器触发时,我得到的输出: {"timestamp":"2016-04-18T16:45:17.581962-0500","level":"info","message":"handler output","handler":{"type":"pipe","command":"/bin/sh /etc/sensu/handlers/puma_restart.sh","name":"puma_restart"},"output":["sudo: a password is required\n","sudo: a password is […]

有没有办法configurationsudo不需要查找组名/或加快sssd组名parsing?

我有大量使用sssd连接到Windows活动目录域进行用户/组查找的Linux主机。 除了一个问题,大部分工作正常。 须藤 从我在testing中发现的任何时候你运行一个sudo命令sudo试图parsing用户所在的所有组的名称。由于sssd只默认cachinggid,并且必须慢速查找名称(假设最近在主机上没有导致sssdcaching组名),这可能会导致sudo命令在很多组中的帐户中暂停45秒,然后才会提示用户input密码以继续sudo命令。 从我的testing中,这个组名parsing发生,无论是否有适用于使用他们的组的用户的sudo规则。 我已经testing了在sudo.conf中改变group_source值,但是这似乎没有太大的影响。 从大多数组中删除我们的所有用户并不是一个真正的select(基础设施安全决定,我无法控制),所以我留下来试图find一种方法来阻止sudo暂停一段时间,而所有的组ID被抬起头来。 到目前为止唯一的解决scheme是每隔15分钟运行一次cronjob来做一些像getent group一样的事情,让sssd不断地将组名caching在内存中,但这似乎是一个黑客修复。 所以我希望在这种情况下网上有人可能有更好的解决scheme来加速sudo?

令人困惑的与sudo相关的电子邮件

我的系统偶尔会向我发送这封电子邮件。 (我的网域已被[DOMAIN]取代,我的使用者名称已被[USERNAME]所取代)。 Subject: *** SECURITY information for [DOMAIN] *** [DOMAIN] : Jun 12 03:48:28 : [USERNAME] : unable to remove /var/lib/sudo/[USERNAME], will reset to the Unix epoch ; TTY=pts/12 ; PWD=/home/[USERNAME] ; USER=root ; COMMAND=kill 它在一分钟内向我发送这封电子邮件约10次,然后停止。 一般在使用sudo之后,我还没有准确计算出什么时候。 这感觉就像我可能以某种方式configurationsudo错误,或者某些目录或文件的权限设置不正确,但我不明白错误消息。 任何人都可以向我解释这个? 编辑:/ var / lib / sudo拥有所有者root和权限700.我属于拥有/ var / lib / sudo的组。 在那个目录下(我不能看到没有运行sudo),目录/ var / lib / […]

控制对VMware vCloud和OpenStack Nova的访问使用LDAP计算虚拟机

我们正在考虑使用基于LDAP的身份和访问pipe理设置与VMware vCloud和OpenStack Nova计算虚拟机。 VMware vCloud和OpenStack Nova计算虚拟机是自助服务的,因为最终用户(非pipe理员)可以根据需要创build虚拟机。 目前,我们将ldap_access_filter设置为((memberOf = cn = System Adminstrators,ou = Groups,dc = example,dc = com)),以允许访问LINUX / UNIX机器的人员。 由于最终用户不属于该组,所以他/她无法login。 我们想自动将创build虚拟机的最终用户添加到ldap_access_filter。 另外,由于我们在LDAP中pipe理Sudo规则,所以我们希望自动为该VM创build一个Sudo规则,并使用户为该规则创build一个Sudo规则。 任何想法如何最好地devise这个? 也许我们正在过度思考这个问题,并且有一个更简单的解决scheme。 最终目标是除了系统pipe理员LDAP组以外,创build虚拟机的最终用户还应具有对该虚拟机的完全访问权限。

为什么我无法在CentOs中执行其他用户的命令?

在远程服务器上,曾经有人可能使用sudo -u命令作为另一个用户执行某个命令,但是最近我无法完成这个任务。 当我这样做时,我收到以下错误: sudo -u lool ./autogen.sh /var/tmp/scltjLjKc: line 8: -u: command not found 所以我不得不使用sudo来root然后su执行命令之前的用户。 这可能是什么原因?