我有一个名为Solr的数据库应用程序(或搜索引擎)。
我通过端口8983连接到它。
我是用PHP代码完成的,所以我通过php添加和删除记录。
在我的服务器上,我有防火墙。
我已将此防火墙设置为仅允许从我自己的服务器的IP地址与此端口(8983)之间的连接。换句话说,只允许服务器IP访问此端口。
这样安全吗?或者我在这里错了?其他人能够“模拟”我的IP地址并充当服务器吗?
这是因为否则其他人可能会根据自己的IP地址添加/删除记录......
由于
答案 0 :(得分:3)
除了您自己的服务器的IP地址之外,还可以阻止服务器上端口8983的所有传出流量到。除了将任何数据包丢弃到该端口而不是从服务器丢弃之外,这将加倍确保,即使有人能够以某种方式修改监听服务器上端口8983的守护进程,允许它将流量镜像到另一个主机,它也会在它离开你的电脑之前被丢弃。
答案 1 :(得分:2)
是的,只要没有人能够控制您的本地服务器,您就是安全的。
您还可以使Solr绑定到“localhost”或“127.0.0.1”适配器而不是“0.0.0.0”,这会产生类似的效果。如果配置搞砸的话,将防火墙分层在上面绝对不会受到伤害。
答案 2 :(得分:0)
如果您担心篡改同一网络,则不安全。在许多情况下,真正的威胁来自网络内部,而不是来自非洲大陆的一些脚本小家伙。
我同意theatrus只使用localhost。
如果您部署在多个主机上,则有多种方法可以创建安全隧道,例如
ssh -l 8983:localhost:8983 solr.server
这将创建一个安全的隧道。 (虽然带宽很高时需要非常简单的CPU)。还有其他解决方案。
另一个优点是,对于开发人员,您可以在本地使用示例solr服务器,并在IDE中使用您的代码,它将使用与生产中相同的配置。部署时需要更改的越少越好。
答案 3 :(得分:0)
这是安全的。由于three way handshake,TCP连接中使用的IP地址。这是一个很好的防火墙规则集,但您应该始终使用nmap测试规则集。
您需要担心的是在执行PHP的服务器上运行open proxy server。