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