LINUX的端口和服务linux 服务端口




LINUX的端口和服务linux 服务端口

2022-07-20 20:33:46 网络知识 官方管理员

一、端口和服务的关系

端口号与相应服务的对应关系存放在/etc/services文件中,这个文件中可以找到大部分端口。使用netstat命令

显示的服务名称也是从这个文件中找的。有人说将这个文件中的相应端口号注释掉,就可以禁用该端口。

我试了却不起作用,这种方法应该是没有用的,是误传!将相应端口号注释掉,唯一的作用就是使用netsat

命令时,将不显示服务名(比如ftp)而是显示端口号(比如21)。原理也很简单:netstat无法在/etc/services

文件中找到端口号对应的服务名,自然就无法显示了。所以/etc/services文件只是起到端口号与相应服务的

映射关系,与端口的启动和关闭没有关系!

二、查看本机开放的端口

1、netstat查看端口和连接

netstat列出目前已经连接的服务名

netstat-a列出目前已经连接的和正在监听的服务名

netstat-an列出目前已经连接的和正在监听的端口号(与上面的命令功能一样,只是不解释端口号对应的服务名)

netstat-ap在上面命令的基础上列出连接的PID(进程号),用这个PID,可以使用KILL来杀死连接

例如:某个连接的PID=111,想踢出去就使用KILL-9111。ok!

netstat-rn输出路由表

2、nmap

nmap127.0.0.1查看本机开放的端口,会扫描所有端口

nmap-p102465535?127.0.0.1扫描指定端口范围

nmap-PT192.168.1.1-111?扫描一组范围的电脑

三、关闭和开启端口(服务)

关闭端口的方法:

1、因为每个端口都有对应的服务,因此要关闭端口只要关闭相应的服务就可以了。

2、用IPTABLE对端口进行限制,这样也能使端口不被访问,但端口本身并没有关闭。

在这儿只介绍关闭服务的方法,IPTABLE的应用以后再讨论。

linux中开机自动启动的服务一般都存放在两个地方:

/etc/init.d/文件夹下的服务:

这个文件夹下的服务都可以通过运行相应的SCRIPT来启动或关闭。

例如:启动sendmail服务./sendmailstart(打开了TCP25端口)

关闭sendmail服务./sendmailstop(关闭TCP25端口)

查看sendmail服务当前状态./sendmail?status(查看服务是否运行)

/etc/xinetd.d/文件夹下的服务:

这个文件夹下的服务需要通过更改服务的配置文件,并重新启动xinetd才可以。

例如:要启动其中的auth服务,打开/etc/xinetd.d/auth配置文件,更改disable=no,保存退出。运行/etc/rc.d/init.d/xinetdrestart

要停止其中的auth服务,打开/etc/xinetd.d/auth配置文件,更改disable=yes,保存退出。运行/etc/rc.d/init.d/xinetdrestart

四、控制开机自动启动的服务

上面说的控制服务开关方法是在启动linux之后进行操作的,如果我想在linux启动时控制哪些服务启动、哪些服务关闭怎么做

控制服务自动启动的方法有3个:

1、更改/etc/rc.d下的对应文件夹:

如果你登陆的默认界面是字符界面,那么修改rc.3文件夹,如果登陆界面默认是图形界面,那么修改rc.5。

在文件夹中,每个服务的名字前都带有K或S,S就代表这个服务开机自动运行了,把它删了或前缀改为K下次就不会启动了。

2、使用ntsysv命令:

输入ntsysv命令,将会出现一个服务列表,需要启动的打*,简单。

3、使用chkconfig命令:

让某个服务不自动启动:例如httpd:chkconfig--level35httpd?off;35指的是运行级别

让某个服务自动启动:例如httpd:chkconfig--level35httpd?on;

查看所有服务的启动状态:chkconfig--list

查看某个服务的启动状态:chkconfig--list|grephttpd

端口和服务的操作就到这儿吧。


发表评论:

最近发表
网站分类
标签列表