如何强制 Play Framework 仅在本地主机上侦听
我希望该剧能够在 localhsot:9000 上收听,而不是在 0.0.0.0:9000 上收听
所以外部IP无法访问
我尝试使用
http.地址=127.0.0.1
在 application.conf 上,但它似乎没有做任何改变。
使用 netstat 我看到 play 使用 0.0.0.0:9000
谢谢
您需要使用“localhost”作为http.address 目标。
play start -Dhttp.address=localhost
出于某种原因,将 127.0.0.1 指定为
http.address
会导致它绑定到 0.0.0.0
,这对我来说似乎是一个错误。然而,使用 localhost
是有效的。
可悲的黑客攻击只是简单地封锁了与外界的端口。下面您允许本地访问,但禁止其他人。这将防止人们绕过您的代理(即,如果您在此处终止,则绕过 HTTPS)。
iptables -A INPUT -s 127.0.0.1/32 -p tcp -m tcp --dport 9000 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 9000 -j DROP
如果您取消了
iptables
设置,只需运行以下命令即可重置它们。 PS,如果您在远程虚拟机上,请不要使用端口 22。 ;)
iptables -F
这对我有用
sbt -Dhttp.address=localhost
run