我必须做些什么来确保外部世界无法访问在计算机上运行的Web服务器(Apache)?

StackOverflow https://stackoverflow.com/questions/116905

  •  02-07-2019
  •  | 
  •  

我想将我的笔记本电脑用作网络开发(PHP,Python等)的机器,但除非我能确保它不能被外界访问,否则我会犹豫不决。

我猜测除了防火墙之外还需要一些东西,例如Apache配置文件的配置,但是我不确定我还需要100%确定它是否已被锁定。

有帮助吗?

解决方案

您需要将服务器守护程序配置为仅使用Listen指令绑定到localhost,如下所示:

Listen 127.0.0.1

另一种方法是为主服务器配置访问控制,如此

<Directory "/var/www/localhost/htdocs">
AllowOverride None
Deny from all
Allow from 127.0.0.1/255.0.0.0
</Directory>

请记住将服务器的根目录放在目录指令中。

其他提示

在配置文件中,将LISTEN指令更改为仅侦听回送地址:

收听127.0.0.1

安装防火墙并关闭所有外部端口,但要关闭您要使用的端口。如果你使用的是Linux,那么iptables就有很好的前端,比如firestarter,如果你使用的是OS X,那么就有一个集成的防火墙,Windows也有。 :)

但是,是的,防火墙是可行的方法。 (或者你可以告诉Apache只听 127.0.0.1:80

防火墙应该足够了。只需确保在非标准端口(通常为8080)中运行apache,并确保防火墙阻止外部访问该端口。

防火墙应该足够了。但您也可以使用 Listen 指令。

防火墙会做得很好。但是如果你不满足于只有防火墙,你可以配置apache只是监听你的环回设备,或者告诉它只接受你局域网上一组地址的连接。第一种方法更容易,但这样只能从正在运行的机器上访问网页。

在您和互联网之间放置路由器,不要将任何端口转发到您的笔记本电脑。这样,任何试图访问笔记本电脑的人都会碰到路由器而无法继续使用。

您可以将端口转发到主机(或者只是将主机放在DMZ中),如果您需要它可用于传入连接。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top