锁定 Apache 服务器 - 防止“/”页面对所有人可见

锁定 Apache 服务器 - 防止“/”页面对所有人可见

我首先将 Apache 作为 ZoneMinder 设置的一部分进行安装。然后我使用 ownCloud 设置将其添加到服务器。所有这些只能通过 LAN 或 WAN-through-ssh 进行访问,并且该部分运行良好。

我现在希望让我的 ownCloud 服务在 WAN 上可见,以便家人可以利用它;这需要通过常规 http 进行。我在某种程度上已经成功了,但对我的服务器的一些请求得到了目录列表的回复,我一点也不喜欢。例如,http://mysite.cloudns.pro:1234/返回以下内容:

Index of /

[ICO]   Name    Last modified   Size    Description
[DIR]   html/   2015-06-24 11:20    -    
[DIR]   owncloud/   2015-06-04 09:43    -    
Apache/2.4.7 (Ubuntu) Server at mysite.cloudns.pro Port 1234

/zm我已经通过添加以下内容成功从 WAN 锁定/etc/zm/apache.conf

Order deny,allow
Deny from all
Allow from 192.168 localhost

我如何对默认 Apache 页面(index.html)和根/页面执行相同操作?

答案1

在以下机构的帮助下https://stackoverflow.com/questions/2530372/how-do-i-disable-directory-browsing

可以执行以下操作,以便仅将 ownCloud 服务提供给 WAN。它们可能是多余的,但结合起来只能使系统更安全。

1)假设不需要,Apache 的默认主页可以移至存储位置(并移出活动站点):

$ sudo mv /var/www/html/index.html ~/index.html.orig

2)为了防止从 WAN 访问 ZoneMinder,更改/etc/zm/apache.conf为包含以下内容将使服务器做出响应,Forbidden除非从 LAN 内部请求该页面:

Order deny,allow
Deny from all
Allow from 192.168 localhost

3a) 为了防止/显示目录列表而是显示,请在 '/' 条目中Frobidden添加关键字:Indexes/etc/apache2/apache2.conf

<Directory />
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

Indexes3b) 并从所有其他列表中删除该关键词<Directory>

最后,重新启动apache2:

$ sudo service apache2 restart

相关内容