¿Qué tan seguro es cambiar el range de puerto efímero de Linux?

Veo el siguiente range de puertos efímeros en mi cuadro de Linux.

sysctl net.ipv4.ip_local_port_range net.ipv4.ip_local_port_range = 32768 61000 

Quiero ampliar el range de puertos para comenzar alnetworkingedor de 16000. Una pregunta rápida aquí es: ¿qué tan seguro es cambiar el range en context con las otras aplicaciones? ¿Se verán afectadas otras aplicaciones por este cambio? Entiendo que una aplicación se ve afectada solo si usa los puertos en el range de puertos especificado. Pero, en general, ¿cómo se tratan estos types de problemas?

Cambiar el range de puerto efímero podría causar problemas si está usando Mesos .

Mesos anuncia los resources de un host a varios Mesos Frameworks que luego pueden elegir usar los resources publicitados. Los resources anunciados incluyen CPU, memory, puertos, etc. El set pnetworkingeterminado de puertos que Mesos anuncia es 31000-32000 . Esto evita un choque con el range de puerto efímero de Linux pnetworkingeterminado de 32768-61000 .

Notablemente, Mesos no sabe si un puerto es utilizado por algún otro process, simplemente rastrea la asignación de puertos a las entidades que orquesta ( Mesos Tasks & Mesos Executors ). Por lo tanto, si cambia el range del puerto efímero de modo que se superponga con el range del puerto de Mesos, es probable que algún process arbitrario use un puerto efímero que en realidad sea uno de esos "puertos de Mesos". Esto podría llevar a que Mesos ofrezca ese puerto a un Marco de Mesos , que se encontraría con fallas aparentemente aleatorias de sus ejecutores de Mesos y / o tareas de Mesos, ya que no podrán join a ese puerto.

Si necesita boost su range de puertos efímeros y también necesita ejecutar Mesos, puede modificar los puertos anunciados a través de un parámetro de configuration mesos-slave (que pronto se renombrará a mesos-agent ) de --resources .

Puede get una list de los services potencialmente afectados mirando lo que está dentro de ese range en su /etc/services local /etc/services , por ejemplo:

 awk '/^#/ { next } $2+0 >= 16000 && $2+0 < 32768 { print }' /etc/services 

O en el lugar autorizado:

 wget http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.csv awk -F, '$2+0 >= 16000 && $2+0 < 32768 { print }' service-names-port-numbers.csv