Tengo dos servidores El programa en el primero necesita comunicarse con el segundo en el puerto 2194.
Sé que no funciona, porque cuando lo hago:
root@server1 [~]# telnet myserver2.com 2194
Trying 123.123.123.98...
telnet: connect to address 123.123.123.98: Connection timed out
telnet: Unable to connect to remote host: Connection timed out
server1# iptables -L -n
Chain INPUT (policy DROP)
...
...
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
...
Chain LOCALINPUT (1 references)
target prot opt source destination
...
Chain LOCALOUTPUT (1 references)
target prot opt source destination
...
Chain LOGDROPIN (1 references)
target prot opt source destination
DROP all -- 0.0.0.0/0 0.0.0.0/0
Chain LOGDROPOUT (1 references)
target prot opt source destination
DROP all -- 0.0.0.0/0 0.0.0.0/0
linux
iptables
redhat
connection
siliconpi
fuente
fuente
Respuestas:
Para permitir conexiones salientes del servidor1 al servidor2 en el puerto TCP 2194, use esto en el servidor1:
Para permitir conexiones entrantes del servidor1 al servidor2 en el puerto TCP 2194, use esto en el servidor2:
fuente
Solo algunos consejos
¿El servicio que está ejecutando escucha solo en localhost? correr
Si ves una línea como
0.0.0.0:2194
entonces estás bien. Si ves127.0.0.1:2194
a continuación, que está escuchando sólo en conexiones locales (o:::2194
y::1:2194
, respectivamente, para las direcciones IPv6, que se muestran comotcp6
líneas).¿Cuáles son las reglas actuales de iptables?
¿La política es DROP / RECHAZO (si no es así, debería ser para todas las cadenas)? ¿Existe una regla específica para el puerto que necesita?
Si se trata de un problema de firewall, entonces se modifica la regla infractora o se agrega una regla como
debería hacer el truco (no probado)
=== EDITAR ===
Para probar el problema de red, una buena herramienta es
tcpdump
. Ejecútelo en ambos servidores mientras intenta conectarse y vea a dónde van los paquetes. Por ejemplo, en el servidor 1, ejecute:y en el servidor 2 ejecute:
Luego intenta conectarte. Debería ver todos los paquetes TCP volcados en la pantalla, desde el origen y el destino. Con esta información, debería poder determinar dónde está el problema.
fuente