1

我写了一个简单的 tcp 服务器程序并让它监听 80 端口然后我注意到

netstat -tulpn|grep "tcp"

tcp服务器监听端口改为随机端口,但不是80

我尝试了其他端口,例如2000,tcp 服务器程序运行良好并且可以在该端口上侦听,但80不可能

我检查了是否有其他进程在监听 80 端口,原来有一个httpd,但我杀了它,我的 tcp 服务器仍然无法监听 80 端口

我试了好几台机器,现象都是一样的请问是什么原因造成的?以及如何让我的程序监听 80 端口?

4

2 回答 2

3

1024 以下的端口受到限制。如果您只是在玩,那么以 root 身份运行程序很容易,但如果您想编写一个出于安全原因不想以 root 身份运行但仍能够绑定到受限端口的应用程序,您可能想要查看Linux 功能系统

这是有关如何setcap在 Linux 上使用该实用程序的答案的链接。.

于 2013-04-24T15:32:09.080 回答
1

你需要root才能监听1024以下的端口。

于 2013-04-24T15:11:11.353 回答