如何保护文件不被用户更改?

如何保护文件不被用户更改?

我正在使用 Ubuntu 12.04,我想使用 su 命令(我有管理员权限)保护其他用户的一些图片。如何使用终端保护文件,同时仍允许其他用户读取它?

答案1

Ubuntu 默认使用 EXT4 文件系统格式(我假设我们在这里不讨论其他任何东西)。

如果您不想在不删除用户读取该文件的能力的情况下获得该文件的所有权,您可以先允许他们读取该文件,但不允许他们写入该文件:

chmod a-w,ug+r foo_file

描述:更改文件权限,全部不能,用户+组可以

然后可以使文件不可变,以便即使具有 root 权限的用户也无法更改,方法是使用以下命令:

sudo chattr +i foo_file

为了能够删除甚至修改此文件,您需要使用以下命令:

sudo chattr -i foo_file

然后你就可以用它做一些事情了。

使用它的优点是大多数用户(和管理员)从未体验过 Linux 中的不可变文件。

当用户尝试删除(或更改)文件时将看到以下信息:

~> sudo chmod a-w,ug+r asd
~> ll asd
-r--r--r-- 1 bruno bruno 156 feb 21 20:46 asd
~> sudo chattr +i asd
~> chmod +w asd
chmod: changing permissions of ‘asd’: Operation not permitted
~> rm asd
rm: remove write-protected regular file ‘asd’? y
rm: cannot remove ‘asd’: Operation not permitted
~> sudo rm asd
rm: cannot remove ‘asd’: Operation not permitted

同时仍然能够读取它:

~> cat asd
asd
...
Videos

发布后,chattr +i文件将被“锁定”,除非具有 root 权限的用户使用 进行设置,否则无法进行任何更改chattr -i

答案2

只需在您的终端中使用如下方法即可( CTRL++ ALT)T

chmod 700 -R /path/to/directory

答案3

在终端上尝试以下命令,

chmod u-rw /path/to/directory

上述命令不会允许其他用户或组读取或写入存储图片的目录。

chmod u+rw /path/to/directory

要恢复更改,请运行上述命令。

答案4

我建议使用Truecrypt创建一个加密的“可移动磁盘”以存储 1 个文件。例如,如果您创建 1GB Truecrypt 分区,则可以用密码保护此文件。(专家选项:您可以为该文件设置 2 个密码:使用第一个密码,您可以看到文件的正常部分,使用第二个密码,您可以看到隐藏部分)您可以将此文件挂载到Linux、Mac视窗(安装到驱动器e:)您将看到该 1GB 文件就像一个 pendrive/flash 驱动器一样,您可以在需要的时候卸载。

如果您创建了 1GB 的文件(或任何大小,或一个完整的磁盘或 U 盘),您可以为该文件添加任何扩展名以进行隐藏。(切勿将该文件作为 secret.truecrypt.file.with.pwd 放在您的主目录中,哈哈)

如果您在系统文件夹中使用任何系统文件名,普通用户可能永远不会注意到它不是系统文件,而是私人加密文件。

例如隐藏此文件:

/usr/lib/libc8.2.so
/usr/lib/libxml24.so.9.1.3

其他临时文件名:

Win386.swp
nsz17BE.tmp
mmc00C1B00C.xml
jusched.log
IMT211.xml
i4j8470767517827925011.tmp
FTP7F0.tmp
e4j3B.tmp
  • 选择一种方案并将数字更改为文件名。

  • 并设置权限...完成后删除历史控制台命令

  • 有了这个解决方案,普通用户永远不会找到您的秘密文件。

  • 在 Pendrive 中创建一个 TEMP 文件夹并使用临时文件名,如文件示例。并使用不同的名称进行一些备份...

你可以安装如果需要,可以使用 truecrypt,例如:

sudo add-apt-repository ppa:michael-astrapi/ppa
sudo apt-get update
sudo apt-get install truecrypt

更多信息Truecrypt 主页

相关内容