我一直在家里从本地机器连接到公司networking内的SearchGuard保护的ElasticSearch实例。 我正在使用一个本地SSH正向我正在为phpMyAdmin实例工作。
我的〜/ .ssh / config包含这些:
Host workstation-forward-phpmyadmin LocalForward localhost:8080 $WORKSTATION:443 HostKeyAlias $GATEWAY Hostname $GATEWAY ExitOnForwardFailure yes User oschluet Host workstation-forward-elasticsearch LocalForward localhost:9200 $WORKSTATION:9200 HostKeyAlias $GATEWAY Hostname $GATEWAY ExitOnForwardFailure yes User oschluet
我把它们放在一个screen例如: ssh workstation-forward-elasticsearch或者ssh workstation-forward-phpmyadmin然后分离屏幕。
现在我可以通过访问https://localhost:8080通过浏览器访问phpMyAdmin,或者直接使用telnet与Web服务器通信。 不幸的是,ElasticSearch在这方面似乎存在一个问题。 从公司networking内的另一台机器上,我可以像这样访问ElasticSearch:
oschluet@ravenwood:~$ curl -k https://$WORKSTATION:9200 --user $user:$pass { "name" : "redacted", "cluster_name" : "redacted", "cluster_uuid" : "redacted", "version" : { "number" : "5.1.1", "build_hash" : "5395e21", "build_date" : "2016-12-06T12:36:15.409Z", "build_snapshot" : false, "lucene_version" : "6.3.0" }, "tagline" : "You Know, for Search" }
在本地使用相同的证书不会产生什么
[oschlueter@B5400 ~]$ curl -k https://localhost:9200 --user $user:$pass # nothing happens
不使用凭据:
oschluet@ravenwood:~$ curl -k https://$WORKSTATION:9200 Unauthorized [oschlueter@B5400 ~]$ curl -k https://localhost:9200 # again nothing
但是telnet打开一个连接:
[oschlueter@B5400 ~]$ telnet localhost 9200 Trying ::1... Connected to localhost. Escape character is '^]'.
我尝试让ElasticSearch侦听IP地址,主机名和0.0.0.0 ,这些都允许我从networking中的其他机器连接,但是无法build立来自本地机器的连接。 我是$ WORKSTATION和我的本地机器的pipe理员。 任何人都可以帮我find这个问题吗?