Le mostraremos cómo abrir puertos en Ubuntu y CentOS usando IPtables . Tener un firewall correctamente configurado es muy importante para la seguridad general de su servidor. En este tutorial, le mostraremos cómo configurar su firewall y abrir los puertos que necesita en su VPS Linux, usando iptables. Comencemos.
Si bien existen pocas herramientas poderosas para administrar el firewall en un servidor Linux, usaremos IPtables en este tutorial. En caso de que esté utilizando UFW en Ubuntu o Firewalld en CentOS, puede consultar nuestras guías correspondientes sobre cómo configurar un firewall con UFW en Ubuntu o cómo configurar un firewall con FirewallD en CentOS.
1. Conéctese a través de SSH y enumere las IPtables actuales
En primer lugar, conéctese a su Linux VPS a través de SSH y enumere las reglas actuales de IPtables usando el siguiente comando:
sudo iptables -L
Si configuró recientemente su servidor, no habrá reglas de IPtables y el resultado debería ser similar al siguiente:
Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
2. Vaciar reglas no deseadas
Si ya hay algunas reglas que no desea que estén allí, puede eliminar las reglas usando el siguiente comando:
sudo iptables -F
Tenga cuidado con este comando, especialmente si la política predeterminada en su INPUT
y OUTPUT
cadenas se establece en algo distinto de ACCEPT
porque eso podría dejarlo fuera de su servidor.
3. Añadir regla de cortafuegos
La primera regla de firewall que debe agregar es la siguiente:
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Básicamente, esto le dice a su firewall que acepte su conexión SSH actual. El siguiente paso es permitir el tráfico en su interfaz loopback y abrir algunos puertos básicos como 22
para SSH y 80
para HTTP.
sudo iptables -A INPUT -i lo -j ACCEPT sudo iptables -A OUTPUT -o lo -j ACCEPT sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
Ahora está listo para abrir los otros puertos a los que desea permitir el tráfico. Use el mismo comando que usó para abrir los puertos 22 y 80 en el ejemplo anterior.
4. Lista de reglas actuales
Enumere las reglas actuales usando:
sudo iptables -L
El resultado debe ser similar al siguiente:
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED ACCEPT all -- anywhere anywhere ACCEPT tcp -- anywhere anywhere tcp dpt:ssh ACCEPT tcp -- anywhere anywhere tcp dpt:http Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere
Para obtener resultados más detallados, puede utilizar:
sudo iptables -nvL
Y la salida debería ser similar a esta:
Chain INPUT (policy ACCEPT 4 packets, 255 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED 0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 4 packets, 283 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
5. Implementar regla DROP
Ahora puede implementar el DROP
regla que bloqueará todos los paquetes entrantes que no coincidan con uno de los ACCEPT
reglas que agregamos anteriormente.
sudo iptables -P INPUT DROP
6. Instalar iptables-persistent
Lo último que debe hacer es guardar las reglas y hacerlas permanentes. Si está utilizando Ubuntu VPS, puede instalar iptables-persistent
para ese fin.
sudo apt-get install iptables-persistent
En Ubuntu 14.04 use los siguientes comandos para guardar/recargar las reglas de iptables:
sudo /etc/init.d/iptables-persistent save sudo /etc/init.d/iptables-persistent reload
En Ubuntu 16.04 usa los siguientes comandos:
sudo netfilter-persistent save sudo netfilter-persistent reload
Si está utilizando CentOS VPS, puede usar el siguiente comando para guardar las reglas de IPtables:
service iptables save
Por supuesto, no tiene que abrir puertos en Ubuntu y CentOS usando IPtables, si usa uno de nuestros servicios de alojamiento VPS de Linux, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que abran puertos en Ubuntu y CentOS. Están disponibles las 24 horas del día, los 7 días de la semana y atenderán su solicitud de inmediato.
PD . Si le gustó esta publicación sobre Cómo abrir puertos en Ubuntu y CentOS usando IPtables, compártalo con sus amigos en las redes sociales utilizando los botones de la izquierda o simplemente deje una respuesta a continuación. Gracias.