Подключиться к sphinx на удаленном сервере
Недавно я переместил sphinx на тот же сервер, что и наша база данных, поэтому наша архитектура:
- Файловый сервер, на котором размещено наше веб-приложение
- Сервер БД с экземпляром Sphinx (searchd)
Когда я пытаюсь подключиться к сфинксу в ip.to.db.server
Я получаю следующую ошибку:
Sphinx response connection to ip.to.db.server:9312 failed (errno=113, msg=No route to host)
Что мне нужно сделать, чтобы сделать порт 9312 доступным для моего веб-приложения?
Текущий TCP
порты LISTEN
ING:
tcp 0 0 0.0.0.0:9306 0.0.0.0:* LISTEN 23496/searchd
tcp 0 0 0.0.0.0:9312 0.0.0.0:* LISTEN 23496/searchd
Выход из iptables -L
:
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
RH-Firewall-1-INPUT all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
RH-Firewall-1-INPUT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh /* SSH */
ACCEPT tcp -- anywhere anywhere tcp dpt:lmsocialserver /* monit */
ACCEPT tcp -- anywhere anywhere tcp dpt:https /* HTTPS */
ACCEPT tcp -- anywhere anywhere tcp dpt:webcache /* HTTPProxy */
ACCEPT tcp -- anywhere anywhere tcp dpt:http /* HTTP */
ACCEPT tcp -- anywhere anywhere tcp dpt:mysql /* MySQL */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- anywhere anywhere /* localhost */
ACCEPT icmp -- anywhere anywhere icmp any /* ping */
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
Я провел много поисков, но безуспешно. Буду признателен за любую оказанную помощь.
Е
1 ответ
Проблема была IPTABLES
блокировал мое удаленное соединение, поэтому я добавил две строки для безопасности:
vi /etc/sysconfig/iptables
добавьте следующие строки:
-A RH-Firewall-1-INPUT -i eth1 -p tcp -m tcp --dport 9312 -m comment --comment "Sphinx" -j ACCEPT
-A RH-Firewall-1-INPUT -s your.remote.ip.address/32 -i eth0 -p tcp -m tcp --dport 9312 -j ACCEPT
Настроить порт 9312
к какому порту / портам у вас есть прослушивание sphinx.
Потом я побежал service iptables restart
и сфинкс пошел!
Спасибо @mdpc и @sciurus за указание в правильном направлении.
NOTE:
Rackspace использует RH-Firewall-1-INPUT
, но вам может понадобиться просто INPUT
или что-то другое