Possibility to adjust the only-root-can-bind-to-port-under-1024 limit

From: Mikael Ståldal
Date: Tue Nov 20 2007 - 05:38:47 EST


In Linux you have to be root in order to listen to TCP or UDP ports below 1024 (the well-known ports). As far as I know, this limit is hardcoded in the kernel.

In some cases, this limit do more harm than good, so it would be nice to be able to adjust it.

FreeBSD have a pair of sysctl parameters allowing you to adjust (or effectively remove) this limit, net.inet.ip.portrange.reservedlow and net.inet.ip.portrange.reservedhigh. It would be nice if something similar to net.inet.ip.portrange.reservedhigh was implemented in Linux (with default value 1023).

I have no patch for this, since I have never done any kernel hacking before. But it seems like it should be easy to implement by replacing the PROT_SOCK constant with net.inet.ip.portrange.reservedhigh + 1.

(See my blog post for a more elaborate discussion about this:
http://www.staldal.nu/tech/2007/10/31/why-can-only-root-listen-to-ports-below-1024/)

/Mikael

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/