4

Я делаю file_get_contents но при получении Connection refused

Я использовал следующее, чтобы разрешить исходящие соединения от server2 к server1, и наоборот. Но я все еще failed to open stream: Connection refused

iptables -A OUTPUT -p tcp -d 123.123.123.123 --dport 8983 -j ACCEPT
iptables -A INPUT  -p tcp -s 321.321.321.321 --dport 8983 -j ACCEPT

Может быть, есть какое-то правило, где я не могу использовать file_get_contents между двумя разными серверами / IP?

Я думаю, сейчас я буду использовать curl , но интересно знать, что здесь не работает ...

1 ответ1

2

Вы подключаетесь к порту 8983 по назначению, поэтому вы должны разрешить выходной трафик на этот порт на server 2 , которым вы являетесь:

iptables -A OUTPUT -p tcp -d 123.123.123.123 --dport 8983 -j ACCEPT

Вы также должны принять входящий трафик на server 2 для связанных и установленных соединений в целом:

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Также не забудьте добавить соответствующие правила на server 1:

iptables -A INPUT -p tcp -m tcp --dport 8983 -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Если вы по-прежнему не можете подключиться после установки этих правил, возможно, вы заблокированы промежуточным межсетевым экраном между server 1 и server 2 .

Если это не так, возможно, server 1 находится за NAT, и вам нужно настроить маршрутизатор NAT для перенаправления входящих соединений на 8983 на тот же порт на server 1 за этим маршрутизатором.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .