LinuxParty
La administración de redes y servidores es una de las áreas clave en las que se prefiere Linux a cualquier otro sistema operativo. Por lo tanto, la mayoría de los administradores de centros de datos conocen bien la línea de comandos de Linux.
Puede haber escenarios en los que ciertos puertos en un servidor, que debían estar cerrados, están abiertos y provocan un tráfico inesperado en el servidor.
Hoy aprenderemos cómo encontrar y cerrar un puerto abierto en Linux.
Encontrar puertos abiertos en Linux
Para encontrar los puertos abiertos, haremos uso del comando ss , que está preinstalado en las distribuciones de Linux más comunes y ahora es el reemplazo del comando netstat, que anteriormente era muy popular .
Ejecutemos el comando ss con la siguiente sintaxis para obtener todos los sockets TCP que escuchan :
$ ss -tl
Aquí, las 't'
significa TCP y las 'l'
es de Listening sockets.
Buscar sockets TCP de escucha
De manera similar, para obtener todos los puertos UDP de escucha , ejecute:
$ ss -ul
Buscar sockets UDP de escucha
Observe la salida. En la columna ' Estado ' para UDP , todos los puertos tienen el estado UNCONN , es decir, desconectados. Dado que solo necesitamos los puertos que están escuchando activamente, canalizamos la salida y la filtramos con el comando grep .
$ ss -ul | grep LISTEN
También podemos combinar la salida TCP y UDP .
$ ss -tul | grep LISTEN
Encuentra puertos de escucha en Linux
Otra adición que se puede hacer aquí es: el argumento '-n'
. En el resultado anterior, el comando está resolviendo el nombre del servicio asociado con un puerto: ej. HTTP , IPP , etc.
Con el argumento '-n'
, solo muestra el número de puerto que está escuchando.
$ ss -tuln | grep LISTEN
Encuentra puertos abiertos en Linux
Cerrar puertos abiertos en Linux
La forma manual de cerrar un puerto abierto en Linux es bastante tediosa y programática. Por lo tanto, utilizaremos el enfoque más sencillo: cerrar los procesos que están escuchando en el puerto.
Necesitamos llamar a ss con otro argumento, '-p'
para listar el proceso que está usando cada puerto (ejecutar el comando como usuario sudo).
$ sudo ss -tulnp | grep LISTEN
Buscar proceso con número de puerto
Como se muestra arriba, la última columna enumera los ' usuarios ', es decir, los procesos que utilizan el número de puerto. Ahora puede cerrar el puerto finalizando el proceso usándolo. Por ejemplo, para cerrar el puerto 80 , tenemos que parar el proceso ' Apache2 '.
$ sudo service apache2 stop O $ sudo systemctl stop apache2
Cerrar puertos abiertos en Linux
Por lo tanto, hemos cerrado con éxito el puerto 80 y ya no hay ningún proceso escuchando en él.
Conclusión
En este artículo, aprendimos cómo encontrar y cerrar un puerto abierto en Linux. Muchos puertos como el 22 ( SSH ), el 21 ( Telnet ), etc. deben mantenerse cerrados la mayor parte del tiempo, ya que estos son los puertos desde los que pueden surgir ataques cibernéticos.
También se deben cerrar otros puertos cuando ya no se requiera el proceso de usarlos. ¡Gracias por leer y háganos saber sus pensamientos en los comentarios a continuación!

-
Programación
- Google dona Windowbuilder, CodePro Para Eclipse
- 12 plugins de Eclipse que todo desarrollador debe conocer!
- Eclipse Ajax Toolkit Framework y Ajax tools
- Visual Studio y Eclipse, comparados y contrastados.
- Crear servicios Web con PHP en Eclipse
- Programar y depurar en un IDE para PHP con Eclipse, plugins PDT, xdebug y Remote debug
- Saros, plugin de Eclipse para programación par a distancia o distribuida en pare
- Desarrollar una aplicación Facebook con Eclipse.
- Instalar Cobol en Eclipse para Linux (y también sirve para Windows)
- Cómo instalar Eclipse en Windows, Linux o Mac.
- ¿Puede TrapC solucionar problemas de seguridad de memoria en C y C++?
- Un EXE de 27 años se convirtió en Python en minutos. ¿Será la ingeniería inversa asistida por IA el próximo paso?
- Google informa que el tiempo de migración de código se reduce a la mitad con ayuda de IA
- ELIZA, el primer chatbot con inteligencia artificial del mundo, resucita después de 60 años
- Tutorial de C/C++, programar paso a paso, para Linux, Windows y Mac