无法跨 Rackspace 云服务器访问端口 7474

Can't access port 7474 across Rackspace cloud servers

我已经在 Rackspace 云服务器的端口 7474 上安装了 neo4j。我想从另一个 Rackspace 云服务器 (appserver) 访问此服务器,但连接被拒绝。

我尝试使用 ufw 为应用服务器启用对 neo4j 服务器上端口 7474 的访问:

sudo ufw allow from 22.234.298.297 to any port 7474

我在 运行 'ufw staus' 时可以看到这条规则,但当我尝试连接到应用服务器时,它似乎没有任何区别。我可以在这两个服务器之间进行 ssh。

如何在 Rackspace 上的云服务器之间打开端口 7474?

(对于这个非常基本的问题,我深表歉意,但机架空间支持没有帮助,我找不到关于机架空间的特定信息)

很高兴,我们可以解决问题(请参阅问题的评论)。

碰巧 Neo4j 默认只接受来自 localhost 的连接。当试图通过 REST API 从同一网络中的应用程序服务器访问 Neo4j 时,必须配置 Neo4j 服务器才能打开。

neo4j-server.properties 配置文件有一个带有 org.neo4j.server.webserver.address 的配置键。您在这里有几个选择。

  1. 授权同一本地网络中的应用服务器使用 Neo4j REST API
  2. 授予每个人访问权限并让防火墙处理它

对于第一种情况,使用Neo4j所在机器的本地ip地址运行。假设您的机器通过私有 class C 网络连接。使用 Neo4j 的机器有一个 ip 192.168.1.4 - 这是您要输入的 ip 作为 org.neo4j.server.webserver.address 中的值,因此您的应用程序服务器 运行 在同一个IP 可能为 192.168.1.5 的网络可以发出由 Neo4j Web 服务器响应的网络请求。

对于第二种情况,您输入 0.0.0.0 作为 org.neo4j.server.webserver.address 的值,表示您要接受该机器上所有可用 IP 地址的连接。在这种情况下,您希望设置防火墙来处理哪些人可以与服务器对话以及哪些人不能——即使启用了身份验证。

额外 在需要高可用性的生产环境中,可以使用 Neo4j 的企业版,在主从设置中使用高可用性集群。我用过一个主人和两个奴隶。我将 Neo4j 服务器配置为只能从代理服务器访问它们,该代理服务器将写入密码查询路由到主服务器,并将读取查询路由到从服务器。代理本身有一个硬件防火墙,以确保只有网络中的特定应用服务器才能访问 Neo4j 数据库。