Linux强制释放占用端口以及Linux防火墙端口开放方法详解

 更新时间:2018年10月17日 11:06:54   投稿:wdc  
在linux系统中安装一些软件时有时遇到端口被占用的情况,本文为大家介绍了遇到这种情况我们应该怎么处理

在安装nginx,mysql,tomcat等等服务的时候,我们会遇到需要使用的端口莫名其妙被占用,下面介绍如何解决这类问题。

说到端口,还不得不提到防火墙,本文还会简单介绍如何配置防火墙开发端口。

Linux查看端口情况的各种方法

所有端口的映射关系在 /etc/services 文件中有

Linux端口简单介绍,端口编号从0-65536,各编号端的用途如下:

0-1023:公认端口,与常见服务绑定(FTP,SSH)

1024-49151:注册端口,用于和一些服务绑定

49152-65535:动态或私有端口,可用于任意网络连接

端口分为TCP和UDP传输协议。

Linux查看端口状态命令

可以有下面的命令查看端口情况,点击命令可以调整到每个命令的使用详情:

nmap命令,端口扫描使用

netstat检测开发端口

lsof检查端口描述符

# 查看绑定本机的端口
nmap 127.0.0.1

# 检查3306端口
netstat -anlp | grep 3306

# 检测3306接口
lsof -i:3306

linux释放占用端口解决办法

解决步骤如下:

查找占用端口的进程

杀掉该进程

使用下面命令即可:

# 可以写成一条命令

netstat -anp|grep 8080|awk '{print $7}'|awk -F '/' '{print $1}'|xargs kill -s 9

各命令含义如下:

netstat -anp 显示所有网络使用情况,并显示使用程序

grep 8080 匹配8080端口的记录(可能会包含18080)

awk '{print $7}' 输出第7列进程,形式如下:18989/nginx

awk -F '/' '{print $1}' 截取进程PID:18989

xargs kill -s 9 使用前一个命令的输出作为参数,杀掉该进程

释放占用端口分步解决办法

查询端口是否被占用

比如需要查询8080端口是否占用,可以下面命令

netstat -an | grep 8080

查询占用端口的进程

可以使用lsof命令查看

lsof -i:8080

也可以使用netstat和grep查看

netstat -anp|grep 8080

该命令最后一行就是占用8080端口的进程PID和名称。

杀掉占用端口的进程

可以使用kill命令直接杀死上一步中查到的进程。

kill -9 19664

linux防火墙释放端口

Linux防火墙启动和关闭

下面介绍的防火墙是iptable,对于firewalld并不适用。

开启防火墙(重启后永久生效):chkconfig iptables on
关闭防火墙(重启后永久生效):chkconfig iptables off
开启防火墙(即时生效,重启后失效):service iptables start
关闭防火墙(即时生效,重启后失效):service iptables stop
重启防火墙:service iptables restart

Linux查看防火墙状态

可以使用下面命令查看:

/etc/init.d/iptables status

# 或者简写
iptables status
iptables -L

# 也可以直接查看配置文件
vim /etc/sysconfig/iptables 

Linux开放防火墙某个端口

比如打开8080端口,可用下面的命令:

iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
# 还需要重启服务
service iptables restart

# 也可以直接编辑配置文件
vim /etc/sysconfig/iptables
# 然后在文件结尾添加一行,下面开发8080-8181之间的所有端口
iptables -A INPUT -p tcp --dport 8080:8181 -j ACCEPT

其中

–A 参数就看成是添加一条规则
–p 指定是什么协议,我们常用的tcp协议,当然也有udp
–dport 就是目标端口,当数据从外部进入服务器为目标端口
–sport 数据从服务器出去,则为数据源端口使用
–j 指定是 ACCEPT -接收 或者 DROP 不接收

以上既是关于 Linux强制释放占用端口以及Linux防火墙端口开放方法,查看更多关于 Linux端口方面的文章可以点击下方相关文章

相关文章

  • ubuntu16.04 升级内核的方法步骤

    ubuntu16.04 升级内核的方法步骤

    这篇文章主要介绍了ubuntu16.04 升级内核的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Jexus 5.8.2正式发布! 为Asp.Net Core生产环境提供平台支持

    Jexus 5.8.2正式发布! 为Asp.Net Core生产环境提供平台支持

    Jexus 5.8.2正式发布!Jexus支持ASP.NET、PHP为特色的集高安全性和高性能为一体的WEB服务器和反向代理服务器,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Apache同时支持PHP和Python的配置方法

    Apache同时支持PHP和Python的配置方法

    服务器是windows系统,安装的是Apache,这里就为给大家介绍如何让Apache像支持Php那样支持Python,有需要的小伙伴参考下。
    2015-04-04
  • 安装Ubuntu 16.04后要做的事(总结)

    安装Ubuntu 16.04后要做的事(总结)

    Ubuntu 16.04发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化。本篇文章主要介绍了安装Ubuntu 16.04后要做的事,有兴趣的可以了解一下。
    2016-12-12
  • Linux下实现UTF-8和GB2312互相转换的方法

    Linux下实现UTF-8和GB2312互相转换的方法

    下面小编就为大家带来一篇Linux下实现UTF-8和GB2312互相转换的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,祝大家游戏愉快哦
    2016-12-12
  • Ubuntu下如何创建XFS文件系统的LVM详解

    Ubuntu下如何创建XFS文件系统的LVM详解

    这篇文章主要给大家介绍了关于在Ubuntu下如何创建XFS文件系统的LVM的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10
  • Linux下使用inode删除指定文件方法示例

    Linux下使用inode删除指定文件方法示例

    文件的inode定义了文件的大小、所有人等文件的特征。每个文件和目录都有自己唯一的inode数字。所以下面这篇文章主要给大家介绍了关于Linux下使用inode删除指定文件的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-10-10
  • 使用Apache Spark处理Excel文件的方法

    使用Apache Spark处理Excel文件的方法

    Excel作为功能强大的数据处理软件,广泛应用于各行各业,从企业管理到数据分析,可谓无处不在,本文介绍使用Apache Spark处理Excel文件的简易指南,感兴趣的朋友一起看看吧
    2024-01-01
  • Linux企业运维人员常用的150个命令分享

    Linux企业运维人员常用的150个命令分享

    这篇文章主要介绍了Linux企业运维人员常用的150个命令(欢迎补充),具体多少个来着,我也没数。分享给大家,供需要的朋友参考。
    2017-10-10
  • CentOS下RabbitMq高可用集群环境搭建教程

    CentOS下RabbitMq高可用集群环境搭建教程

    这篇文章主要为大家详细介绍了CentOS下RabbitMq高可用集群环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08

最新评论