该文件定义了网络的端口。定义的格式如下:
service-name port/protocol [aliases......] #comment
例子:
http 80/tcp www www-http # WorldWideWeb HTTP
http 80/udp www www-http # HyperText Transfer Protocol
通过这个文件的阅读可以作为当前系统端口使用的一个参考,帮助系统在不指明端口时会在这个文件里面找程序的端口并对应设置。
如在使用system-config-securitylevel-tui的工具设置防火墙(iptables)可以访问本地的www服务。这里不必把端口写明(我为了防止其他不必要的干扰,还是推荐使用端口号),只需简单的允许www的访问即可,iptables会查看/etc/servies文件并从中发现80端口,然后开放之。假如你的web端口改为了81,你只需要修改/etc/services文件,把刚才的两行中80换成81即可,当然你需要重起iptables,再看一下规则,变成81了吧(/etc/sysconfig/iptables)。
最后在说一句,/etc/services提供了一个功能,有些时候你会觉得方便,不过恶意修改这个文件的人也会给你找麻烦,比如,你好好设的防火墙规则突然变了,查看规则也看不出问题来,可能只有少数人会想到查看/etc/services是不是动过。所以我个人建议熟悉iptables的人还是在防火墙里用数字形式标明ip和port,尽管这可能会在系统修改ip和服务端口的时候不得不修改、测试和存储规则。