linux防火墙与开放端口

启停防火墙

开启防火墙

开启防火墙 
systemctl start firewalld

重启防火墙

重启防火墙
firewall-cmd -reload
重启防火墙
systemctl enable firewalld
永久关闭后重启
chkconfig iptables on

防火墙状态

查看防火墙状态
systemctl status firewalld
查看防火墙状态
firewall-cmd --state

关闭防火墙

暂时关闭防火墙
systemctl stop firewalld
如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估
systemctl stop firewalld.service
永久关闭防火墙
systemctl disable firewalld

开放端口

开放指定端口

开放指定端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent   # 开放5672端口
命令含义:
--zone #作用域
–zone=public:表示作用域为公共的;
--add-port=1935/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效

设置开放的端口号
firewall-cmd --add-service=http -permanent
开放端口需要让配置生效
firewall-cmd --reload   # 配置立即生效

关闭指定端口

firewall-cmd --remove-port=8080/tcp --permanent
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
关闭端口需要让配置生效
firewall-cmd --reload   # 配置立即生效

查看开放端口号

查看端口号
netstat -ntlp   //查看当前所有tcp端口·
netstat -ntulp |grep 1935   //查看所有1935端口使用情况·

查询指定端口是否开启成功
firewall-cmd --query-port=8080/tcp

查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports

查询已开放端口
netstat -anp
查看8080是否开放
firewall-cmd --query-port=8080/tcp

查看防火墙开放端口
firewall-cmd --list-all

netstat参数说明

netstat [选项]

参数:
-a或–all:显示所有连线中的Socket;
-A<网络类型>或–<网络类型>:列出该网络类型连线中的相关地址;
-c或–continuous:持续列出网络状态;
-C或–cache:显示路由器配置的快取信息;
-e或–extend:显示网络其他相关信息;
-F或–fib:显示FIB;
-g或–groups:显示多重广播功能群组组员名单;
-h或–help:在线帮助;
-i或–interfaces:显示网络界面信息表单;
-l或–listening:显示监控中的服务器的Socket;
-M或–masquerade:显示伪装的网络连线;
-n或–numeric:直接使用ip地址,而不通过域名服务器;
-N或–netlink或–symbolic:显示网络硬件外围设备的符号连接名称;
-o或–timers:显示计时器;
-p或–programs:显示正在使用Socket的程序识别码和程序名称;
-r或–route:显示Routing Table;
-s或–statistice:显示网络工作信息统计表;
-t或–tcp:显示TCP传输协议的连线状况;
-u或–udp:显示UDP传输协议的连线状况;
-v或–verbose:显示指令执行过程;
-V或–version:显示版本信息;
-w或–raw:显示RAW传输协议的连线状况;
-x或–unix:此参数的效果和指定"-A unix"参数相同;
–ip或–inet:此参数的效果和指定"-A inet"参数相同。

例:
netstat -a # 列出所有端口
netstat -at # 列出所有TCP端口
netstat -au # 列出所有UDP端口
netstat -ax # 列出所有unix端口
netstat -atnlp # 直接使用ip地址列出所有处理监听状态的TCP端口,且加上程序名

菜鸟地址:https://www.runoob.com/linux/linux-comm-netstat.html

监听端口

查看端口被哪个进程占用

查看当前占用端口命令
netstat -tanlp

netstat -tunlp | grep 端口号,用于查看指定端口号的进程情况
几个参数含义
-t (tcp) 仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名

查看监听的端口
netstat -lnpt

检查端口被哪个进程占用
netstat -lnpt |grep 5672

查看进程的详细信息
ps 6832

注:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools

删除进程

删除进程
pkill -9 进程ID
例如:pkill -9 29944
-9表示强制删除

杀死进程(注意不是杀死端口,而是pid的端口)
kill 1785进程 (自己的pid端口)

查看进程

查看进程
top

输入【pgrep 进程名称】即可获取到pid列表。
例如:pgrep java

使用【ps】命令查看进程pid。
例如:ps -ef|grep java
-e:显示所有进程。
-f :做一个更为完整的输出。
|   管道
grep xxxx 筛选出xxxx的进程。

附录一:查看ip

linux系统
ifconfig -a
ip addr
windows系统
ipconfig
 

 

posted @ 2022-07-29 09:44  liwinallucky  阅读(2398)  评论(0)    收藏  举报