En protocolos de transporte como TCP, UDP y SCTP, los puertos 1-1023 son puertos con privilegios de manera predeterminada. Para vincular a un puerto con privilegios, un proceso se debe ejecutar con permisos root. Los puertos superiores a 1023 son puertos sin privilegios de manera predeterminada. Puede utilizar el comando ipadm para ampliar el rango de puertos con privilegios, o puede marcar puertos específicos en el rango sin privilegios como puertos con privilegios.
Para gestionar el rango de puertos con privilegios, puede personalizar las siguientes propiedades de protocolo de transporte:
Especifica un valor que indica el comienzo del rango de números de puerto sin privilegios, que son los puertos a los que los usuarios comunes pueden vincularse. Puede definir puertos individuales dentro del rango sin privilegios como puertos con privilegios. Utilice el comando ipadm show-prop para mostrar los valores de la propiedad.
Especifica qué puertos fuera del rango con privilegios también son con privilegios. Utilice el comando ipadm set-prop para especificar los puertos que desee restringir. Se pueden asignar varios valores a esta propiedad.
Por ejemplo, suponga que desea establecer los puertos TCP 3001 y 3050 como puertos con privilegios con acceso restringido sólo al rol root. La propiedad smallest_nonpriv_port indica que 1024 es el número de puerto más bajo para un puerto sin privilegios. Por lo tanto, puede cambiar los puertos 3001 y 3050 designados a puertos con privilegios de la siguiente manera:
# ipadm show-prop -p smallest_nonpriv_port tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp smallest_nonpriv_port rw 1024 -- 1024 1024-32768 # ipadm show-prop -p extra_priv_ports tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp extra_priv_ports rw 2049,4045 -- 2049,4045 1-65535 # ipadm set-prop -p extra_priv_ports+=3001 tcp # ipadm set-prop -p extra_priv_ports+=3050 tcp # ipadm show-prop -p extra_priv_ports tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp extra_priv_ports rw 2049,4045 3001,3050 2049,4045 1-65535 3001,3050
Debe eliminar un puerto con privilegios, por ejemplo, 4045, de la siguiente manera:
# ipadm set-prop -p extra_priv_ports-=4045 tcp # ipadm show-prop -p extra_priv_ports tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp extra_priv_ports rw 2049,3001 3001,3050 2049,4045 1-65535 3050