Articles of sudo

用户GPG密钥不能被SUDO使用

我创build了一个运行重复的脚本来备份我在VPS上的文件,并使用我作为用户生成的GPG密钥。 当我尝试运行这个脚本作为SUDO我得到: GPGError: GPG Failed, see log below: ===== Begin GnuPG log ===== gpg: C7B2Y6DO: skipped: public key not found gpg: [stdin]: encryption failed: public key not found ===== End GnuPG log ===== 现在我明白了这是为什么(因为它不是SUDO的密钥,它是用户密钥),但是在我去之前为SUDO重新生成一个密钥有可能让sudo使用用户密钥? 不是很重要,但脚本是build立在这三个网站的组合: http : //www.cenolan.com/2008/12/how-to-incremental-daily-backups-amazon-s3-duplicity/ http://www.randys.org/2007/11/16/how-to-automated-backups-to-amazon-s-s3-with-duplicity/ https://help.ubuntu.com/community/DuplicityBackupHowto

创build一个Linux用户,可以做“重启”命令只有没有sudo

你知道是否有可能在linux上创build一个只能执行“重启”命令而不使用sudo的用户? 原因是,我需要自动重新启动我的生产服务器(S),而不必login到每一个,然后必须做“sudo重启”,并input密码(这可能是耗时的)

防止sudo,apt-get等将粘贴的input内容吞到STDIN?

我经常写一些wiki说明在Ubuntu上安装各种服务器软件包(11.10 Oneiric)。 他们总是涉及的东西如: sudo apt-get install -y postfix sudo cp ~/siteconfig/etc/postfix/main.cf /etc/postfix 但是当你剪切并粘贴到terminal时,sudo,apt-get或者某个子shell会随机吞下随后的input行,只有apt-get install发生。 有没有办法让这个更贴切友好? 我想我可以用每个部分来包装 cat > script <<EOF apt-get install -y postfix cp ~/siteconfig/etc/postfix/main.cf /etc/postfix EOF sudo sh ./script 但有没有更好的办法?

SSH:su根或sudo?

有什么更好的select:使用su切换到root或enabeling sudo? 如果没有使用sudo,入侵者就需要知道被允许ssh的用户的密码(或者密钥),然后还需要知道root密码。 用sudo,非特权用户的密码就足够了。 我build立了一个新的web服务器(Debian 8.2),并且想知道通过SSH安全连接到它的最佳实践是什么,并且仍然很容易使用它。 到目前为止,我已经在SSH上禁用了PermitRootLogin并切换了端口。 另外iptables是在阻止我不需要的一切。 现在我必须login一个非特权用户,然后切换 su root 但是,以root身份工作并不是我所听到的最好的事情……所以我想到了授予我无特权的用户sudo权利。 然后再入侵者只需要知道一个密码,因为sudo是要求当前用户密码而不是根密码。 因此,我计划通过在SSH中禁用PermitRootLogin来使攻击者更难以继续工作。 所以:su根或sudo?

在Linux机器上以root身份禁用ssh以及编写脚本的挑战

安全意识的人们常常build议在Linux机器上以root身份禁用ssh。 我的问题是这样的: 比方说,通常你会写很多ssh脚本到大量的Linux机器上,执行各种根级的任务。 如果以root用户身份禁用ssh,那么如何进行需要root权限的日常维护? 当然,sudo是一个选项,但是每次运行命令时都必须input密码。 如果你的脚本执行各种任务呢? 如果您必须对大量主机运行该脚本,该怎么办? 当然,你可以设置NOPASSWD参数,但这不是一个安全风险? 只是在这里沉思。 想获得社区的反馈。 我正在寻找一种相对安全的方式来ssh到Linux机器,并执行根级任务。

苏拒绝了权限

我已经安装了su,允许安全分析人员login到VPS进行一些需要root权限的更改 – 我创build了一个用户,他们可以在他们的帐户下login,但只要键入su , su -或su- root然后input我得到的用户密码 : su: incorrect password 以root用户身份login,用户已经被添加到sudoers,su的权限是: -rwsr-xr-x 1 root root 35K May 23 11:00 /bin/su 还有什么可能导致问题? VPS正在运行Centos 6.4

chmod -R 777 /在Ubuntu上 – 很多问题

客户意外地给他们的ubuntu 10.04盒子上的整个文件系统完全的权限。 chmod -R 777 httpdocs/cd / 正如你可以看到他们试图cd到根,而是给chmod一个有趣的参数来玩。 该问题的第一个迹象是无法使用“苏”,给出一个authentication错误。 sudo也抱怨缺lesssetuid位。 这是通过从机器本身以root身份login并运行chmod + s / usr / bin / sudo来解决的。 我现在可以sudo su ,做我需要的东西。 su仍然给authentication失败。 我遵循这里的build议: http : //swiss.ubuntuforums.org/showthread.php?t=1180661&page=2 chmod 0755 / chmod 0755 /* chmod 1777 /tmp chmod 0750 /root chmod 0700 /lost+found 然后我试图重置根密码。 我仍然不能成为根,或者是su root 。 系统似乎运行良好。 是否有任何build议让su再次工作? 我在哪里可以find更多的问题?

我如何通过sudo和不同的用户使用etckeeper,并在提交消息中拥有正确的用户?

我正在与几个pipe理员用户在一个服务器上工作。 他们每个人都可以使用sudo进行configuration更改。 我们正在使用etckeeper来控制我们的/etc目录的版本控制。 但是,当我或另一个pipe理员调用sudo etckeeper commit COMMITMESSAGE ,git使用root用户的名字和电子邮件来提交消息。 在这个例子中,在这个例子中设置git config user.name不起作用,因为每次调用etckeeper commit ,都会使用相同的数据。 我想要的是,实际的用户名和电子邮件出现在etckeeper git仓库中,所以从提交日志我可以追踪谁做了哪些更改。 任何帮助是极大的赞赏!

sudoerscheme,允许有用的访问另一个web开发人员,但保留一个虚拟服务器的未来控制?

背景:虚拟专用服务器 我有一个虚拟的私人服务器,我正在寻找主办多个网站,并提供访问另一个Web开发人员。 我不在乎把太多的限制放在他身上,尽pipe我不介意将他从我将开发的服务器上的其他站点开发的站点隔离开来。 问题:保持控制 主要是我想要确保我将来保持对服务器的控制权。 我想保留创build/升级/降级和其他pipe理function,不处理networking软件的能力。 如果我让他成为pipe理员,他可以sudo su – 并成为根,并从我身上取消根本控制,例如。 我需要他不能够: 拿走其他pipe理员权限 更改根密码 控制其他安全/pipe理function 我希望他仍然能够: 安装软件(通过apt-get) 重启apache 访问mysql configurationmysql / apache 重启 编辑/etc/ web开发configurationtypes文件 其他标准设置将被愉快地考虑 我从来没有真正build立一个sudoers文件,所以简单的例子设置将是非常有用的,即使他们只是有点类似于我希望在上面的设置。 编辑:我还没有最终确定的权限,所以标准,有用的sudo设置肯定是一个选项,上面的列表更多,我希望我能做的,我不知道, 可以完成的设置。 我相信,人们在某种程度上已经解决了这类问题,但是我想用一些经过testing的东西,而不是我自己生产的东西。

限制切换到root账户的并发用户数量?

这是Ubuntu 14.04和Centos 7。 我需要限制以root身份运行的用户数量。 即在CLI上以root身份login。 基本上,我一次只需要一个用户就可以以root身份运行命令。 这里的目的是审计。 我研究了/etc/security/limits.conf中的设置限制,但是pam_limits.so模块似乎只会影响login。 或者loginshell。 不确定。 但是,无论具体情况如何,它确实可以防止用户多次通过SSH连接到一个盒子,但不会阻止多个用户通过“sudo su”成为root用户。 因此,设置limits.conf仍然可以允许多个用户同时以root身份login。 这里是limits.conf行我试图限制这个: root hard maxlogins 1 接下来,我尝试限制@admins组中的用户。 我认为,这些用户是唯一允许sudo su的用户(根据我们拥有的自定义sudo规则)。 @admins hard maxlogins 1 这似乎做我想要的,但似乎笨重/错误。 称之为一种直觉 – 我并不完全明白这个问题。 最后,“为什么?” 为什么我有这个要求? 我们正试图实施控制措施,以满足PCI-DSS 3.1要求8.5“不要使用组,共享或通用的ID,密码或其他身份validation方法” – 强调“共享”。 在Windows环境中,您只需向用户授予执行任何操作的权限,而且没有人共享主pipe理员帐户。 Linux环境的devise使得对于某些情况,你真的想以root身份login。 在Linux环境中必须有PCI兼容的方式来解决这个问题。