我决定将我的家庭服务器变成一台 Ubuntu 桌面机。在网上搜索后,我安装了 Samba,并将我的另一台 Windows 电脑与我的 Ubuntu 桌面连接起来。
当我将文件从服务器共享到我的电脑时,出现了权限错误。经过一番查找,我发现chmod 777
我的媒体文件夹(电影和连续剧)上的权限已解锁。
从那时起,我进一步搜索了有关权限(特别是 777)的信息,我意识到这为每个人打开了读写和执行选项。
我的问题是“每个人”是否指定我的网络上的人员,即我和我的妻子,这对我来说没什么大惊小怪的,因为我知道她不会搞砸任何事情,或者“每个人”是否指的是每个人,因此我打开了潘多拉的盒子,我需要快速将其关闭。
如果是第二种情况,如何chmod 777
在不造成任何损害的情况下撤销该文件夹?
答案1
所有人是指能够访问您系统的所有人,从走到机器前到互联网外部访问您托管的网站的任何人,或您设置的到您系统的 ssh 隧道。或者滥用路由器中的后门(美国网件,以NMX300 1.5.0.11为例)。
撤销它的方法是使用较少的权限执行相同的命令。一般来说,目录的权限为“750”,文件的权限为“640”就足够了。您可以将“chmod”与“find”结合使用,这样您就可以根据它是文件还是目录来更改这些设置。
您从需要更改该目录下任何内容的目录发出这 2 个命令:
find . -type f -exec chmod 640 {} \;
find . -type d -exec chmod 750 {} \;
(-type f
用于文件,type d
用于目录)
答案2
“每个人”意味着以您机器上的任何用户身份运行的代码,包括人类用户和服务器守护程序。
大多数服务器守护进程都有自己的访问控制。因此,将某个程序设置为 777 通常不会将其向全世界开放,但它确实意味着您失去了纵深防御。如果您(例如)正在运行 Web 服务器,并且 Web 服务器存在安全漏洞,他们可以读取和写入您的文件。