24 votos

Iptables: Cómo permitir que una sola ip a través del puerto específico?

¿Cómo puedo en mi ubuntu server, en Iptables sólo permiten una dirección IP en un puerto específico?

Gracias

47voto

Tim Howland Puntos 5705

Uno forro:

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

0voto

obfuscurity Puntos 771

He aquí 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

-1voto

BillThor Puntos 15761

Yo uso shorewall para configurar la IP de la tabla. Usar una regla como para aceptar de un host a puerto 123.

ACEPTAR neto:192.0.2.1 $FW tcp 1234

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: