Я застрял при подключении к моему защищенному 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
и отсоединяю экран.
Теперь я могу получить доступ к phpMyAdmin через свой браузер, зайдя https://localhost:8080
или используя telnet для прямого общения с веб-сервером. К сожалению, похоже, что в этом отношении есть проблема с ElasticSearch. С другой машины внутри сети компании я могу получить доступ к 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
все это позволило мне подключиться с другой машины внутри сети, однако с моей локальной машины не удалось установить соединение. Я администратор $WORKSTATION и моей локальной машины. Может ли кто-нибудь помочь мне найти проблему?