尝试从我的AWS EC2实例到我的本地计算机,从我的neo4j 3.2.3图形数据库设置ssh隧道。尝试设置它像我用于挖掘jupyter笔记本,但看起来neo4j阻止身份验证或其他东西。
到目前为止,我已根据在线调查尝试更改我的(远程)EC2实例上的neo4j.conf文件:
# Whether requests to Neo4j are authenticated.
# To disable authentication, uncomment this line
dbms.security.auth_enabled=false
# With default configuration Neo4j only accepts local connections.
# To accept non-local connections, uncomment this line:
dbms.connectors.default_listen_address=0.0.0.0
# HTTPS Connector. There can be zero or one HTTPS connectors.
dbms.connector.https.enabled=true
dbms.connector.https.listen_address=0.0.0.0:7473
#dbms.connector.https.address=0.0.0.0:7473
在我的本地机器上,我设置了一个ssh隧道,就像我为一个jupyter笔记本隧道(我已经成功为这个相同的EC2实例设置):
ssh -NfL localhost:7474:localhost:7474 project
< -7474是我的远程机器的本地端口上运行的端口neo4j
当我尝试在localhost:7474
打开本地计算机上的浏览器时,我收到了Neo4j浏览器的欢迎屏幕,但它没有让我登录数据库。相反,我得到一个" WebSocket连接失败"。
自动填充主持人:使用我不熟悉的bolt://localhost:7687
。输入用户名和密码(已正确输入)。
任何人都知道如何成功地将neo4j(版本3.2.3)数据库ssh到本地机器?
答案 0 :(得分:0)
在你的配置中,它使用的是端口7473,但在您的隧道中,您使用的是7474.这可能不是这么简单,是吗? :)
答案 1 :(得分:0)
Neo4J基本上运行着许多不同的端口:7474是您用于HTTP的Web端口,但它也可以在不同的端口上运行“ bolt”:通常是7687。这也是一个TCP端口,因此您需要ssh隧道也是如此。
ssh -NfL localhost:7474:localhost:7474 -L localhost:7687:localhost:7687 project
应该为您修复它。您可能需要在neo4j config中配置螺栓的端口