如何恢复正确的颠覆目录权限?

How to restore correct subversion directory permissions?

有一天我想我应该让我的服务器更安全一点。 我想我有太多的目录是对其他人开放的,如果有人找到进入系统的途径,可能会有潜在的风险。

然后我删除了其他人对某些目录的读、写和执行权限:

chmod -R o-rwx /home/*/
chmod -R o-rwx /etc/apache2
chmod -R o-rwx /var/www
chmod -R o-rwx /opt
chmod -R o-rwx /mnt
chmod -R o-rwx /media

现在,大约两天后,我想访问位于 /home/svn 的 subversion-server,但出现错误 500。

我想我弄乱了 subversion 目录的权限。但我不明白为什么它需要 'others'-权限。我认为它以 root 身份运行并且可以 read/write/execute 它需要的任何东西。

编辑:我查看了 svn-error.log 并看到了这个:

[Wed Nov 29 14:34:29 2017] [error] [client 2003:cd:dbc6:5c00:ec08:696:5b01:bf20] (13)Permission denied: Could not open password file: /etc/apache2/dav_svn.passwd, referer: http://<host>:<port>/svn/myrepo

设置哪些权限是正确的,为什么?

我在这里找到了答案:https://ubuntuforums.org/showthread.php?t=1288812 我能够通过三个命令恢复文件夹和文件的正确权限:

find /etc/apache2/ -type f -exec sudo chmod 644 {} \;
find /etc/apache2/ -type d -exec sudo chmod 755 {} \;
sudo chown -R root:root /etc/apache2