No se puede escuchar en un puerto específico en Ubuntu 16.04

No se puede escuchar en un puerto específico en Ubuntu 16.04

Necesito ejecutar el puerto "1017" en mi computadora portátil como "localhost" http://127.0.0.1:1017. Para hacer eso ejecuto algún archivo en el directorio/home. Pero después de ejecutar el archivo recibí el siguiente mensaje de error. ¿Cómo puedo ejecutar el puerto anterior como mi "localhost"?

listen tcp4 0.0.0.0:1017: bind: permission denied

Por favor ayúdame a resolver esto.

Respuesta1

Sólo puedes escuchar en puertos inferiores a 1024 usando sudo. Estos son puertos privilegiados:

Los números de puerto TCP/IP inferiores a 1024 son especiales porque a los usuarios normales no se les permite ejecutar servidores en ellos. Esta es una medida de seguridad, ya que si te conectas a un servicio en uno de estos puertos puedes estar bastante seguro de que tienes el dispositivo real y no uno falso que algún hacker haya creado para ti.

Fuente


Ejemplo:

$ nc -l 127.0.0.1 1017
nc: Permission denied

Sin embargo, esto funcionará:

$ sudo nc -l 127.0.0.1 1017

información relacionada