Linux---端口(nmap、netstat)、进程管理(ps、kill)

1. 端口

端口,是设备与外界通讯交流的出入口。端口可以分为:物理端口和虚拟端口两类。

物理端口:又可称之为接口,是可见的端口,如USB接口,RJ45网口,HDMI端口等。

虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的。

Linux---端口(nmap、netstat)、进程管理(ps、kill)_第1张图片

Linux---端口(nmap、netstat)、进程管理(ps、kill)_第2张图片

计算机程序之间的通讯,通过IP只能锁定计算机,但是无法锁定具体的程序。

通过端口可以锁定计算机上具体的程序,确保程序之间进行沟通。

IP地址相当于小区地址,在小区内可以有许多住户(程序),而门牌号(端口)就是各个住户(程

序)的联系地址。

Linux系统是一个超大号小区,可以支持65535个端口,这6万多个端口分为3类进行使用:

公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,

HTTPS服务的443端口,非特殊需要,不要占用这个范围的端口。

注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序\服务。

动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时

使用。

Linux---端口(nmap、netstat)、进程管理(ps、kill)_第3张图片

如图中,计算机A的微信连接计算机B的微信,A使用的50001即动态端口,临时找一个端口作为出

口,计算机B的微信使用端口5678,即注册端口,长期绑定此端口等待别人连接。

可以通过nmap命令去查看端口的占用情况:

使用nmap命令,安装nmapyum -y install nmap;

语法:nmap 被查看的IP地址

[root@localhost ~]# nmap 127.0.0.1

Starting Nmap 6.40 ( http://nmap.org) at 2023-06-10 15:36 CST Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000030s latency).
Not shown: 995 closed ports 
PORT STATE SERVICE 
22/tcp open ssh 
25/tcp open smtp 
111/tcp open rpcbind 
631/tcp open ipp 
6000/tcp open X11

Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds 

22端口,一般是SSH服务使用,即FinalShell远程连接Linux所使用的端口.

也可以通过netstat命令,查看指定端口的占用情况:

语法:netstat -anp | grep 端口号,安装netstatyum -y install net-tools

[root@localhost ~]# netstat -anp | grep 6000 
tcp     0   0 0.0.0.0:6000   0.0.0.0:*    LISTEN    7174/X 
tcp6   0   0 : : : 6000         : : : *          LISTEN    7174/X 

0.0.0.0:6000,表示端口绑定在0.0.0.0这个IP地址上,表示允许外部访问.

2. 进程管理

可以通过ps命令查看Linux系统中的进程信息:

语法: ps [选项]

选项包括:

Linux---端口(nmap、netstat)、进程管理(ps、kill)_第4张图片

                                     -f,以完全格式化的形式展示信息(展示全部信息) 

ps 命令的部分选项不能加入"-",比如命令"ps aux",其中"aux"是选项,但是前面不能带“-”。

一般来说,固定用法就是: ps -ef 列出全部进程的全部信息

[shaonian@localhost ~]$ ps -ef 

UID    PID     PPID     C     STIME    TTY          TIME     CMD
root        1            0     0     11:56       ?         00:00:01     /usr/lib/syste 
root        2            0     0     11:56       ?         00:00:00     [kthreadd] 
root        3            2     0     11:56       ?         00:00:03     [ksoftirqd/0] 
root        5            2     0     11:56       ?         00:00:00     [kworker/0:0H] 

Linux---端口(nmap、netstat)、进程管理(ps、kill)_第5张图片

也可以使用管道符配合grep来进行过滤,如:

ps -ef | grep tail,即可准确的找到tail命令的信息

过滤不仅仅过滤名称,进程号,用户ID等等,都可以被grep过滤,如:

ps -ef | grep 30001,过滤带有30001关键字的进程信息(一般指代过滤30001进程号)

Windows系统中,可以通过任务管理器选择进程后,点击结束进程从而关闭它。

同样,在Linux中,可以通过kill命令关闭进程。

语法:kill [选项/信号] 进程ID

信号包括:

Linux---端口(nmap、netstat)、进程管理(ps、kill)_第6张图片

选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自

身的处理机制。

[shaonian@localhost ~]# ps -ef | grep tail 
shaonian   2339   8021    0   19:00   pts/0    00:00:00   tail 
shaonian   2659   46758  0   19:00   pts/2    00:00:00   grep --color=auto tail [shaonian@localhost ~]# kill -9 2339

FinalShell中,执行命令:tail,可以看到,此命令一直阻塞在那里.

你可能感兴趣的:(初识linux,linux,服务器,运维)