FC14可用的TCP端口?

我在Fedora Core 14上安装了一个应用程序,它使用了很多套接字(其中8个)用于不同服务器之间的TCP通信,所有服务器都运行在同一个本地主机上。 我一直在试图find什么端口一般在Linux上打开一些信息,但没有任何运气。

默认configuration文件设置为使用4449和12001-12007。 这些端口是开放的内部通信,还是我必须创buildselinuxexception?

如果应用程序具有适当的SELinux策略,则策略中允许创build套接字。

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

只需要添加到现有的SELinux策略中,如果策略不足以满足您的要求,那么一般情况下只有在您运行的应用程序限制,但是有问题或不完整时才会发生,或者您正在使用应用程序进行exception的事情。

netstat -an会告诉你哪个端口是打开的并且正在使用中('-n'部分表示显示数字结果而不是符号端口名称)。

您可能还需要调整防火墙设置,不pipe是使用graphics防火墙configuration实用程序还是iptables命令行(如果您愿意的话)。

如果程序正在侦听该端口,则该端口将打开。 在此之前,端口是closures的(或更好的是,没有打开侦听该端口的套接字)。 另外,最低的端口号(1-1023)通常保留给用于众所周知的networking服务(web服务器,ftp,ssh等)的系统进程,你需要权限来打开一个侦听的socket范围。

lsof -i4lsof -i6将列出哪些文件正在使用哪个IPv4端口和哪个IPv6端口。

/etc/services文件包含通常在哪些端口上运行哪些程序的列表。 但是,没有任何东西强迫特定的程序使用某个特定的端口,所以不要把/etc/services作为唯一的方法来设置。 人们无论是意外还是故意将程序移动到“非标准”端口…有时是出于恶意原因,有时不是。

我一直在试图find什么端口一般在Linux上打开一些信息,但没有任何运气。

很难评论什么端口在“典型”安装上是开放的,因为由于Linux的分布和各种各样的情况之间的差异,在这里真的没有什么黄金标准,除了只运行像你一样多的程序。

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

默认configuration文件设置为使用4449和12001-12007。 这些端口是开放的内部通信,还是我必须创buildselinuxexception?

通常为1024以下的端口号保留核心networking服务,并要求超级用户权限绑定程序。 1024 – 65535之间的端口被称为临时端口,并被视为不同。 它们通常用于TCP交互的客户端。 我不确定这是否会解决你是否对内部沟通开放的问题,但是除非你有充分的理由,否则build议不要改变他们。 Wes Hardakerbuild议的netstat -an命令将显示它们是否可用于127.0.0.1以外的任何接口,因此不仅限于内部回送连接。

至于SELinux …这是一个复杂的野兽。 wzzrd的答案是一个很好的开始,以及安全指南中的SELinux部分。