首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux中的最大端口号是多少?

Linux中的最大端口号是多少?
EN

Server Fault用户
提问于 2010-01-17 23:53:19
回答 4查看 159.4K关注 0票数 97

我想将一些Linux服务设置为非标准端口--最高有效端口号是多少?

EN

回答 4

Server Fault用户

回答已采纳

发布于 2010-01-17 23:58:08

(2^16) -1,或0-65,535 (-1是因为端口0是保留和不可用的)。(编辑是因为o_O Tync提醒我我们不能使用端口0,Steve提醒我您要求的是最高的端口,而不是端口的数量)

但你可能走错路了。有些人主张和反对非标准港口。我说,除了最随意的扫描器之外,它们是无关紧要的,使用最新的软件和适当的防火墙技术,以及强大的密码,可以防止最随意的扫描器。换句话说,安全最佳实践。

票数 97
EN

Server Fault用户

发布于 2010-01-17 23:56:42

1-65535可用,1-1023范围内的端口是特权端口:应用程序需要作为root运行才能侦听这些端口。

票数 51
EN

Server Fault用户

发布于 2017-09-13 15:55:02

尽管1-65535是合法的TCP端口,而且1-1023确实是用于众所周知的端口服务的。如果您自己的服务是在建立了临时端口之后启动的,您可能会遇到随机问题。对于那些可能不知道的人来说,临时端口是那些在本地连接远程端点的端口(或类似的东西)。因此,如果您编写一个监听端口20001的TCP服务。你今天可能很好..。还有明天。但是有一天,您的服务可能会启动并尝试绑定到20001,但它将失败,因为它被视为一个临时端口。有个解决办法。您必须让管理员或您自己更改服务器上的系统临时端口范围策略。在linux系统上,它分两个步骤完成:

  • 动态
  • 永久

这两个步骤都必须执行,除非您计划重新启动(在这种情况下,不需要动态步骤)。若要将范围设置为40000至65535,请执行以下操作:

动态

echo 40000 65535 > /proc/sys/net/ipv4/ip_local_port_range

sysctl -w net.ipv4.ip_local_port_range="40000 65535"

永久

在/etc/sysctl.conf中添加以下内容:

net.ipv4.ip_local_port_range = 40000 65535

读取当前设置或确认更改:

/sbin/sysctl net.ipv4.ip_local_port_range

输出将如下所示:

net.ipv4.ip_local_port_range = 9000 65500

确保您了解您的服务器的目的。过多地缩小范围可能会导致其他问题。

快乐编码!(或者不管你做什么)

票数 14
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/103626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档