我不想让人们看到我的 python 脚本,而我的搜索告诉我这实际上不可能,但是将 python 脚本设置为仅 root 的读取权限是否有效?这有什么缺点吗?
该程序将在启动时以 root 身份在后台运行,根据条件发送电子邮件。电子邮件部分需要将用户名和密码发送到 SMTP。我想保护这些凭据。
答案1
将密码隐藏在文本文件中只能提供有限的安全性,但是这仍然是一个小小的改进。
毕竟,Unix 密码也存储在 /etc/shadow 中,但经过加盐处理。
请记住,如果人们可以访问计算机并启动 Live CD,因为他们是 Live CD 环境中的 root,他们将能够读取计算机上的任何文件。
答案2
通过将所有者更改为 root 并删除对其他用户和组的所有访问权限,您可以有效地确保您的脚本不会被没有 root 访问权限的任何人读取。
您可以通过运行以下两个命令来完成此操作。
第一个将确保只有文件的所有者(root)有权读取和执行脚本chmod 500 script.py
(如果您也需要能够写入该文件,您可以使用,chmod 700 script.py
但我们通常希望尽可能遵循最小权限规则。)
第二个命令将使 root 成为脚本的所有者
sudo chown root:root script.py
此时,除了 root 之外,没有人能够读取、写入或执行您的脚本。请记住,当用户运行时,sudo
他们是以 root 用户身份进行操作的。