FC14 可用的 TCP 端口?

FC14 可用的 TCP 端口?

我正在 Fedora Core 14 上安装一个应用程序,该应用程序使用大量套接字(八个)进行不同服务器之间的 TCP 通信,所有服务器都在同一本地主机上运行。我一直在尝试查找有关 Linux 上通常打开哪些端口的信息,但没有任何收获。

默认配置文件设置为使用 4449 和 12001-12007。这些端口是否对内部通信开放,还是我必须创建 selinux 例外?

答案1

如果应用程序附带了适当的 SELinux 策略,则该策略将允许创建套接字。

如果应用程序没有策略,它将以unconfined_t(如果由您直接启动) 或initrc_t(如果通过 sysvinit 启动) 的形式运行。如果您在这两种环境中运行,SELinux 不会给您带来麻烦。

如果现有的 SELinux 策略无法满足您的需要,则只需添加该策略即可。这种情况通常只发生在您运行的应用程序受限,但有缺陷或不完整,或者您正在使用该应用程序做一些奇怪的事情。

答案2

netstat -an将显示哪些端口是打开的并且正在使用中(“-n”部分表示显示数字结果而不是符号端口名称)。

您可能还需要调整防火墙设置,iptables如果您愿意的话,可以使用图形防火墙配置实用程序或命令行。

答案3

如果某个程序正在侦听某个端口,则该端口是打开的。在此之前,端口是关闭的(或者更好的情况是,没有打开套接字来侦听该端口)。此外,最低端口号(1-1023)通常为用于众所周知的网络服务(Web 服务器、ftp、ssh 等)的系统进程保留,您需要有权限才能打开侦听该范围的套接字。

答案4

lsof -i4lsof -i6将列出哪些文件分别使用哪些 IPv4 端口和哪些 IPv6 端口。

/etc/services文件包含以下程序的列表:一般来说已知在哪些端口上运行。但是,没有任何东西强制特定程序使用特定端口,因此不要将其/etc/services作为您找到设置的唯一方法。人们,无论是偶然还是故意,将程序移动到“非标准”端口......有时是出于恶意,有时不是。

我一直在尝试寻找有关 Linux 上通常开放哪些端口的一些信息,但没有任何收获。

很难评论在“典型”安装中打开了哪些端口,因为由于发行版之间的差异以及 Linux 可用于的无数情况,这里实际上没有黄金标准其他而不是只运行你绝对拥有的那么多的程序。

我建议你从 Fedora Core 14 的安全性开始文档帮助您自己做出决定。

默认配置文件设置为使用 4449 和 12001-12007。这些端口是否对内部通信开放,还是我必须创建 selinux 例外?

端口号1024 以下的端口通常保留用于核心网络服务,需要超级用户权限才能将程序绑定到该端口。1024 - 65535 之间的端口称为临时端口并被区别对待。它们通常用于 TCP 交互的客户端。我不确定这是否回答了你关于它们是否对内部通信开放的问题,但最好不要更改它们,除非你有充分的理由。Wes netstat -anHardaker 建议的命令将显示它们是否可用于除 127.0.0.1 之外的任何接口,因此不仅限于内部环回连接。

至于 SELinux...它是一个复杂的怪物。wzzrd 的答案是一个很好的起点,以及安全指南中的 SELinux 部分。

相关内容