linux防火墙配置与测试

在linux系统中,有时需要统计来自某个地址的连接数,我们就可以用下面的组合命令来查看和统计某个服务器上的所有连接按照ip分类统计结果。
netstat -tun|awk '{print $5}'|cut -d : -f1|sort|uniq -c|sort -n

 netstat -nt | tail -n +3 | awk -F "[ :]+" -v OFS="" '{printf("%45s => %s:%-5s\n",$6,$4,$5)}' | sort | uniq -c | sort -rn

From:deepseek

在 Oracle Linux 6.9 中,默认使用 iptables 作为防火墙工具。以下是配置防火墙规则的步骤,以满足你的需求:

需求描述

  1. 允许 192.168.18.* 网段的所有 IP 访问本机(所有端口)。

  2. 只允许 192.168.12.189 访问本机的 1521 端口。

  3. 其他流量默认拒绝

 

步骤 1:备份当前 iptables 规则

在修改防火墙规则之前,建议先备份当前的规则:

iptables-save > /etc/iptables.backup

步骤 2:清除现有规则

 清除所有现有的防火墙规则,确保从干净的状态开始配置:
 
iptables -F
iptables -X
iptables -Z

步骤 3:设置默认策略

 

将默认策略设置为拒绝所有流量:

 
 
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT


步骤 4:允许本地回环接口

允许本地回环接口(lo)的流量:

 
 iptables -A INPUT -i lo -j ACCEPT

步骤 5:允许 192.168.18. 网段访问本机*

 

允许 192.168.18.* 网段的所有 IP 访问本机的所有端口:

 
 iptables -A INPUT -s 192.168.18.0/24 -j ACCEPT

步骤 6:允许 192.168.12.189 访问 1521 端口

 

允许 192.168.12.189 访问本机的 1521 端口:

 
 iptables -A INPUT -s 192.168.12.189 -p tcp --dport 1521 -j ACCEPT

步骤 7:允许已建立的连接

 

允许已建立的连接和相关的流量:

 
 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
 

步骤 8:保存规则

 

将配置的规则保存到文件中,以便重启后仍然生效:

 
 service iptables save

步骤 9:重启 iptables 服务

 

重启 iptables 服务以应用新的规则:

 
 service iptables restart

步骤 10:验证规则

 

查看当前的 iptables 规则,确保配置正确:

 
 iptables -L -n -v

最终规则示例

 

以下是完整的 iptables 规则示例:

 
 

# 清除现有规则
iptables -F
iptables -X
iptables -Z

# 设置默认策略
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# 允许本地回环接口
iptables -A INPUT -i lo -j ACCEPT

# 允许 192.168.18.* 网段访问本机
iptables -A INPUT -s 192.168.18.0/24 -j ACCEPT

# 允许 192.168.12.189 访问 1521 端口
iptables -A INPUT -s 192.168.12.189 -p tcp --dport 1521 -j ACCEPT

# 允许已建立的连接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# 保存规则
service iptables save

# 重启 iptables 服务
service iptables restart

 

删除防火墙策略
iptables -L INPUT -n --line-numbers
iptables -D INPUT 8(num)

 

 
或者保存规则配置文件,导入系统 

iptables-restore < /etc/iptables.backup2
service iptables save
service iptables restart
iptables -L -n -v

 

 

1 防火墙配置文件

cat /etc/firewalld/zones/public.xml

<?xml version="1.0" encoding="utf-8"?>

<zone>

  <short>Public</short>

  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>

  <service name="ssh"/>

  <service name="dhcpv6-client"/>

  <service name="cockpit"/>

  <port protocol="tcp" port="8080"/>

  <rule family="ipv4">

    <source address="192.168.10.62"/>

    <port protocol="tcp" port="22"/>

    <accept/>

  </rule>

</zone>

2 防火墙重新加载配置

[root@localhost ~]# firewall-cmd  --reload

Success

3 重启防火墙

[root@localhost ~]#  systemctl  restart  firewalld

4 列出系统中所有防火墙规则的详细信息

[root@localhost ~]# firewall-cmd  --list-all

 

From:https://www.cnblogs.com/aqicheng/p/14173253.html

Centos7 firewalld详解,添加删除策略

 

 

 

 

https://www.cnblogs.com/chuanzhang053/p/17619639.html

如何在linux环境模拟开启一个监听的端口

1使用下面的命令安装nc命令

yum install -y nc

2执行下面的命令,出现nc程序的版本号,说明nc命令安装成功

 

 

3监听到某个端口

执行下面的命令,模拟一个程序监听在某个端口

nc -l -k 9085

参数说明:

-l 表示监听

-k 表示端口持续打开,可接收多次的连接请求

 

 

4 在开启另外一个终端,查看监听的端口的情况

netstat -ntlp | grep 9085

 

 

nc监听的端口,在每个网卡上,包括ipv4和ipv6上的

5 验证端口的可连接性

在其他的主机上,测试该端口是否可以联通

telnet 172.20.59.76 9085

 

 
 
 
 
 
 
 
 
 
 
posted @ 2024-11-27 19:59  jhtchina  阅读(49)  评论(0)    收藏  举报