CentOS7查看端口情况详解

一、CentOS7查看端口占用情况

CentOS7系统中,我们可以使用以下命令查看端口占用情况:

netstat -anp | grep LISTEN | grep -E "(tcp|udp)"

该命令的含义为:利用netstat命令显示所有网络连接情况,grep过滤出监听(LISTEN)状态的端口,并显示其进程ID(PID)和进程名。

例如:

$ netstat -anp | grep LISTEN | grep -E "(tcp|udp)"
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      914/sshd        
tcp6       0      0 :::22                   :::*                    LISTEN      914/sshd        
tcp6       0      0 :::80                   :::*                    LISTEN      1094/httpd      
tcp6       0      0 :::443                  :::*                    LISTEN      1094/httpd      
udp        0      0 0.0.0.0:68              0.0.0.0:*                           771/dhclient

上述输出结果的意思是:22端口(SSH)占用了进程ID为914sshd进程;80443端口占用了进程ID为1094httpd进程。

二、CentOS7查看端口状态

通过netstat命令,我们可以查看端口的监听状态,主要有以下几种:

  • LISTEN:正在等待传入连接请求;
  • ESTABLISHED:正常数据传输状态;
  • TIME_WAIT:连接成功关闭,等待套接字关闭的时间。

我们可以使用以下命令查看指定端口的状态:

netstat -anp | grep 端口号

例如,查看端口80的状态:

$ netstat -anp | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      1094/httpd

上述输出结果中,LISTEN状态表示端口正在等待传入连接请求。

三、CentOS7查看端口号命令

我们可以使用以下命令查看已打开的端口号:

sudo firewall-cmd --list-ports     

例如:

$ sudo firewall-cmd --list-ports     
80/tcp

上述输出结果表示80端口已经打开。

四、CentOS7查看端口

除了使用netstat命令和firewall-cmd命令来查看端口,还可以使用nmap命令进行扫描。

使用以下命令进行扫描,查看目标服务器的端口情况:

nmap -sT -O localhost

上述命令中,-sT参数表示使用TCP进行扫描,-O参数表示识别目标操作系统。

例如,查看本地服务器的端口情况:

$ nmap -sT -O localhost
Starting Nmap 6.40 ( http://nmap.org ) at 2021-05-13 18:39 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000076s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
80/tcp   open  http
111/tcp  open  rpcbind
631/tcp  open  ipp
3306/tcp open  mysql
6081/tcp open  nqs
8000/tcp open  http-alt

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

上述输出结果中,open状态表示相应的端口已经打开。

五、CentOS7怎么开启所有端口

默认情况下,CentOS7只开放了一些常见的端口,如果需要开放所有端口,则需要进行如下操作:

  1. 修改/etc/sysctl.conf文件,添加以下内容:
  2. net.ipv4.ip_local_port_range = 1024 65535
    net.ipv4.tcp_fin_timeout=30
    net.ipv4.tcp_keepalive_time=1200
    net.ipv4.tcp_syncookies=1
  3. 执行以下命令使更改生效:
  4. sysctl -p
    
  5. 添加相应的防火墙规则,开放所有端口:
  6. sudo firewall-cmd --zone=public --add-port=0-65535/tcp --permanent
    sudo firewall-cmd --reload
    

六、CentOS7打开防火墙

为了提高服务器的安全性,CentOS7系统默认启用了防火墙,如果需要打开防火墙,则可以使用以下命令:

sudo systemctl start firewalld

如果需要防火墙永久生效,则可以使用以下命令进行配置:

sudo systemctl enable firewalld

在防火墙开启的情况下,我们需要添加相应的端口规则才能访问对应的服务。

七、CentOS7查看端口进程

我们可以使用lsof命令查看指定端口的进程信息。

使用以下命令查看80端口的进程信息:

lsof -i :80

例如:

$ lsof -i :80
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   1094   root    4u  IPv6  13791      0t0  TCP *:http (LISTEN)
httpd   1096 apache    4u  IPv6  13791      0t0  TCP *:http (LISTEN)
httpd   1097 apache    4u  IPv6  13791      0t0  TCP *:http (LISTEN)
httpd   1098 apache    4u  IPv6  13791      0t0  TCP *:http (LISTEN)
httpd   1099 apache    4u  IPv6  13791      0t0  TCP *:http (LISTEN)
httpd   1100 apache    4u  IPv6  13791      0t0  TCP *:http (LISTEN)

上述输出结果中,第二列为进程ID(PID),第三列为用户,第七列为端口信息。

八、CentOS7查看端口流量

我们可以使用iftop命令查看指定端口的流量情况。

使用以下命令查看80端口的流量情况:

sudo iftop -f "port 80"

例如:

$ sudo iftop -f "port 80"
interface: ens33
IP address: 192.168.38.128/24
MAC address: 00:0c:29:43:93:25 (VMware, Inc.)
Started at 2021-May-13 18:36:13 CST (0.0 s)
[...]
---------------------------------------------------------------------------------------------
 192.168.38.128        => 173.194.38.137         8.74Mb  10.3Mb  11.0Mb
                           <=                           0b      0b      0b
---------------------------------------------------------------------------------------------
   1 host(s) displayed.

上述输出结果中,第一列为源IP地址,第三列为目的IP地址,第四列为上传流量,第五列为下载流量。

九、CentOS7查看端口占用

我们还可以使用fuser命令查看指定端口的进程占用情况。

使用以下命令查看80端口的进程占用情况:

sudo fuser 80/tcp

例如:

$ sudo fuser 80/tcp
80/tcp: 1094

上述输出结果中,1094为进程ID。

原创文章,作者:LNCNT,如若转载,请注明出处:https://www.506064.com/n/372063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
LNCNT的头像LNCNT
上一篇 2025-04-23 18:08
下一篇 2025-04-24 06:40

相关推荐

  • 两个域名指向同一IP不同端口打开不同网页的实现方法

    本文将从以下几个方面详细阐述两个域名指向同一个IP不同端口打开不同网页的实现方法。 一、域名解析 要实现两个域名指向同一个IP不同端口,首先需要进行域名解析。在域名解析的时候,将这…

    编程 2025-04-28
  • Python监听端口用法介绍

    本文将从Python监听端口的概念入手,详细介绍如何使用Python实现监听端口,并且讲解相关的基础知识。 一、端口及其概念 1、什么是端口? 端口是一种网络协议,它是通过计算机与…

    编程 2025-04-27
  • Mininet开启导致Ryu端口冲突问题:解答

    Mininet是一种网络仿真工具,可以在一个单一主机上开启多个虚拟主机,并模拟各个主机之间的网络连接。而Ryu则是一款高性能轻量级的SDN控制器,其是基于Python实现的,具有灵…

    编程 2025-04-27
  • Linux sync详解

    一、sync概述 sync是Linux中一个非常重要的命令,它可以将文件系统缓存中的内容,强制写入磁盘中。在执行sync之前,所有的文件系统更新将不会立即写入磁盘,而是先缓存在内存…

    编程 2025-04-25
  • 神经网络代码详解

    神经网络作为一种人工智能技术,被广泛应用于语音识别、图像识别、自然语言处理等领域。而神经网络的模型编写,离不开代码。本文将从多个方面详细阐述神经网络模型编写的代码技术。 一、神经网…

    编程 2025-04-25
  • git config user.name的详解

    一、为什么要使用git config user.name? git是一个非常流行的分布式版本控制系统,很多程序员都会用到它。在使用git commit提交代码时,需要记录commi…

    编程 2025-04-25
  • 详解eclipse设置

    一、安装与基础设置 1、下载eclipse并进行安装。 2、打开eclipse,选择对应的工作空间路径。 File -> Switch Workspace -> [选择…

    编程 2025-04-25
  • C语言贪吃蛇详解

    一、数据结构和算法 C语言贪吃蛇主要运用了以下数据结构和算法: 1. 链表 typedef struct body { int x; int y; struct body *nex…

    编程 2025-04-25
  • Python输入输出详解

    一、文件读写 Python中文件的读写操作是必不可少的基本技能之一。读写文件分别使用open()函数中的’r’和’w’参数,读取文件…

    编程 2025-04-25
  • nginx与apache应用开发详解

    一、概述 nginx和apache都是常见的web服务器。nginx是一个高性能的反向代理web服务器,将负载均衡和缓存集成在了一起,可以动静分离。apache是一个可扩展的web…

    编程 2025-04-25

发表回复

登录后才能评论