Iptables: ¿Cómo permitir solo una ip a través de un puerto específico?

25

¿Cómo puedo en mi servidor ubuntu, en Iptables solo permitir una dirección IP en un puerto específico?

Gracias

Anónimo12345
fuente

Respuestas:

48

Un trazador de líneas:

iptables -I INPUT \! --src 1.2.3.4 -m tcp -p tcp --dport 777 -j DROP  # if it's not 1.2.3.4, drop it

Una solución más elegante:

iptables -N xxx # create a new chain
iptables -A xxx --src 1.2.3.4 -j ACCEPT  # allow 1.2.3.4
iptables -A xxx --src 1.2.3.5 -j ACCEPT  # allow 1.2.3.5
iptables -A xxx --src 1.2.3.6 -j ACCEPT  # allow 1.2.3.6
iptables -A xxx -j DROP  # drop everyone else
iptables -I INPUT -m tcp -p tcp --dport 777 -j xxx  # use chain xxx for packets coming to TCP port 777
Cristian Ciupitu
fuente
¿Sabes si también debo agregar esto a la SALIDA también?
Anónimo12345
@Camran: debes ser más específico. En este caso particular, si reemplaza INPUTcon OUTPUTbloqueará algunos paquetes enviados usando algunas direcciones del servidor (y no enrutado / reenviado). Dudo que esto tenga sentido, a menos que tal vez desee bloquear programas que se unen a algunas interfaces específicas.
Cristian Ciupitu
1
No olvide que también puede especificar sus fuentes en una cadena como:--src 1.2.3.4/30
deed02392
¿Cómo agregaría luego una nueva IP permitida a la cadena? ¿Tendría que eliminar el DROP primero, luego ingresar al nuevo usuario e insertar el DROP nuevamente o hay una mejor solución?
maddo7
2
@Matthias:iptables -I xxx --src 7.8.9.10 -j ACCEPT
Cristian Ciupitu
0

Aquí hay un ejemplo de uno de mis sistemas CentOS (las direcciones se han ofuscado):

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp -s 1.2.3.4 -d 5.6.7.8 --dport 22 -j ACCEPT
ofuscación
fuente
en centos, ¿dónde hacer que esta configuración sea permanente? (en ubuntu, podemos usar /etc/network/if-up.d/anyfile)
Kokizzu
en CentOS es: service iptables save.
Martin Zeitler
0

Yo uso shorewall para configurar la tabla IP. Use una regla como aceptar desde un host al puerto 123.

ACEPTAR neto: 192.0.2.1 $ FW tcp 1234

BillThor
fuente