标签: root

“sudo -i”和“sudo bash -l”有什么区别

最近有一个关于多个系统管理员以 root 身份工作的问题sudo bash -l并被引用。

我搜索了这对谷歌和SE,但我不明白之间的差别sudo bash -lsudo -i

从 bash 和 sudo 的手册页看来,不同之处可能在于sudo bash -l运行 root 用户的 ~/.bash_profile、~/.bash_login 和 ~/.profile 以及 ~/.bash_logout,但从我自己的测试来看,它看起来像它运行普通用户的 .bashrc 而不是根用户。我可能误解了 ~ 表达式在手册页中引用了哪个用户。对差异和使用场景的澄清将不胜感激。

linux bash root sudo

13
推荐指数
2
解决办法
3553
查看次数

管理数千台服务器的root密码的最佳解决方案是什么

我是系统管理员。在生产环境中,我需要管理数千台服务器。我和我的同事使用中央管理服务器并通过其他服务器分发其公钥。所以我们可以使用这个管理服务器ssh到其他服务器。

有时我们需要使用root密码,例如服务器宕机时,我们需要使用iLO来确定原因。

目前,我们使用共享的 root 密码。这是不安全的。我还查看了一些单服务器解决方案,例如OPIE(一次性密码在一切中),但由于我们有这么多服务器,这不是一个好主意。

编辑:

我想从密码管理解决方案中得到的是:

  1. 它应该是安全的,所以一次性密码是一个很好的解决方案。
  2. 密码很容易输入,有时我们需要将显示器连接到服务器,或者我上面提到的 iLO。
  3. 即使服务器离线(没有任何网络连接),该解决方案也应该可以工作

因此,将 root 密码设置为长而随机的字符串并不是一个好主意,尽管它是从一些已知命令(如openssl passwd)生成的。很难记住,有时很难生成(没有我的笔记本电脑)

linux password root

12
推荐指数
2
解决办法
5633
查看次数

在 3000 多个 Solaris、AIX 和 Linux 服务器上更改 root 密码的最佳方法是什么?

长话短说:大型老公司,大量 UNIX/Linux 服务器。

我继承了几年前留下的一堆脚本的责任。其中之一是一个脚本,该脚本每 X 个月运行一次,以全局更新我们所有服务器上的 root 密码。

该脚本是一堆 Shell 脚本和 Expect,它在我们所有服务器和中央命令和控制服务器之间建立的 SSH 信任上工作。

问题是,剧本一团糟。Expect 命令试图说明存在于任何 UNIX/Linux 机器上的每个可能版本的“passwd”——它们差异很大。

随着我们扩展和升级很多基础设施,脚本变得非常难以管理。

我的问题是:有没有更好的方法来做到这一点?假设已经建立了 SSH 信任,同时更改 3000 多台服务器上的 root 密码的最佳方法是什么?

linux unix ssh password root

12
推荐指数
1
解决办法
3万
查看次数

ubuntu:让用户以 root 权限运行脚本

我有 ubuntu 8.04,我想编写一个 bash 脚本,root每个用户都可以运行该脚本。

我自己可以做 sudo。

我怎么做?

澄清:我不想用 sudo 来做,因为那样用户将不得不输入他们的密码。我只是想让他们以 root 身份运行脚本,也许是 setuid,不知道。

ubuntu permissions root sudo

10
推荐指数
2
解决办法
4万
查看次数

为什么不允许 root 通过 ssh 登录?

为什么要禁用 ssh 的 root 访问权限?我总是听说这是出于安全原因。但我不明白。然后以非 root 用户身份登录有什么不同sudo su -?处理需要特权权限的任务的首选方法是什么?

谢谢

托马斯

security ssh root

10
推荐指数
2
解决办法
774
查看次数

有没有办法将根域指向 CNAME?

问题是:我们通过外部提供商托管我们的网站,该提供商不给我们 IP 地址,而是给我们一个域,我们将 www CNAME 记录指向该域。我假设他们正在使用某种类型的虚拟主机来读取请求域的标题并显示该网站。

无论如何,我们的许多用户抱怨网站已关闭,实际上并不是因为他们在浏览器中输入 example.com 而不是 www.example.com。

有没有办法在我们的 DNS 中完成这项工作?

domain-name-system domain root cname-record

10
推荐指数
2
解决办法
4万
查看次数

应该在服务器管理中使用 sudo 还是只使用 su root ?

哪种方法更好?

对于桌面使用,似乎 sudo 更好,因为:

  • 作为普通用户,我可以拥有更一致的历史记录
  • 不需要记住两个密码,当我不经常做管理工作时尤其如此。
  • 安装时无需创建额外的 root 帐户。

但是在服务器管理方面呢?

在服务器中,您通常已经创建了一个 root 帐户,并且您可能经常进行管理工作。所以 sudo 的优势似乎不再成立。

更重要的是,在大多数发行版中,在命令行上配置 su 很容易,只需将用户添加到轮组中即可。(你甚至可以-G wheeluseradding时通过。)因此配置 su 可以很容易地自动化到 shell 脚本中。

但是对于sudo?您需要先添加用户,然后以visudo交互方式运行。这很糟糕,因为您无法将其自动化为 shell 脚本。

(嗯,你可以。例如,

echo '%wheel    ALL=(ALL)   ALL' >> /tmp/sudoers.tmp
cp /etc/sudoers /etc/sudoers.old
visudo -c -f /tmp/sudoers.tmp &&  mv /tmp/sudoers.tmp /etc/sudoers
Run Code Online (Sandbox Code Playgroud)

但至少没有那么容易。)

那么你有什么看法呢?对于服务器环境,您更喜欢 sudo 还是 su root?

unix su root sudo

9
推荐指数
1
解决办法
3423
查看次数

为什么root用户默认名为root?

这似乎是一个愚蠢的问题,但我可以认为这是令人困惑的。例如:

“进入根目录”

可以解释为:

  1. /

  2. ~root(通常/root/

我认为类似的东西是super为了更好的默认管理员用户名。这将避免目录结构的歧义。

再次:愚蠢的问题,但我真的很好奇。

linux user-management root

9
推荐指数
1
解决办法
2067
查看次数

根完整的Linux。没有空闲块

df -h报告“/”分区已 100% 已满。在du -hs *该分区的每个目录上运行时显示仍有很多空间。

tune2efs它报告只有一个块是免费的。Ranfsck也是如此,它还显示了所有正在使用的块。

“/”分区上的 ionode 使用率为 14%。

请注意,/var、/usr、/dev、/tmp、/home 挂载在不同的分区上,并且其中有可用空间。

你能否让我知道所有块被占用和磁盘报告已满的可能原因,即使有很多空间。

hard-drive root block

9
推荐指数
2
解决办法
2482
查看次数

不允许 root 授予 MySQL 数据库的权限

我有一个 MySQL 数据库,当以 root 身份登录时,我无法向新创建的数据库上的用户授予权限。

mysql> create database test1;
Query OK, 1 row affected (0.00 sec)

mysql> grant usage on *.* to 'test'@'%' identified by 'test';
ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES)
mysql> show grants for root;
+--------------------------------------------------------------------------------------------------------------+
| Grants for root@%                                                                                            |
+--------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY PASSWORD '*hash_is_here' |
+--------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select user();
+-----------------+
| user()          |
+-----------------+
| root@172.17.0.4 | …
Run Code Online (Sandbox Code Playgroud)

mysql root

9
推荐指数
1
解决办法
5万
查看次数