具有 sudo 访问权限的用户的安全性

-1 security unix password sudo

在大多数用户都sudo可以访问其他用户 ID的 UNIX 环境中,如何保护我的密码列表(例如在不同的数据库中)?

我的脚本 ( main.sh) 中有以下内容$HOME

$ cat main.sh

mysql --skip-column-names -hmysql_host -umy_user -pmy_password -ADmysql_db << EOF >> /home/my_user/mysql.log
select current_date;
EOF
Run Code Online (Sandbox Code Playgroud)

当另一个用户 ( another_user) 尝试sudo su - my_user,他/她就能看到我的 MySQL 数据库密码。

即使我输入密码.bashrc并通过脚本中的某个变量访问它,他/她也将能够在.bashrc文件中看到我的密码。

如何保护我的 MySQL 密码免受该用户的侵害another_user

use*_*517 5

当您授予某人 sudo 访问权限时,您就是在暗中信任他们。如果您不信任他们,请不要授予他们不受限制的 sudo 访问权限,也不要使用允许他们运行的命令列表来限制他们的访问权限。

  • 如果他们拥有完全的 root 访问权限,无论是通过 sudo 还是其他方式,那么他们就可以看到所有内容。即使您设法保护了您的文件,它们仍然可以运行例如 tcpdump 并以这种方式获取密码。这里的道德是,如果你不信任他们,就不要给他们根。 (4认同)