legongju.com
我们一直在努力
2025-01-11 21:06 | 星期六

linux防火墙怎么配置白名单

在Linux中,可以使用iptables或firewalld来配置防火墙

  1. 使用iptables配置白名单:

首先,确保你的系统已经安装了iptables。然后,按照以下步骤操作:

a. 创建一个新的iptables规则文件,例如/etc/iptables/rules.v4。在这个文件中,添加以下内容:

*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp --dport 22 -s YOUR_WHITELISTED_IP -j ACCEPT
-A INPUT -p tcp --dport 80 -s YOUR_WHITELISTED_IP -j ACCEPT
-A INPUT -p tcp --dport 443 -s YOUR_WHITELISTED_IP -j ACCEPT
COMMIT

YOUR_WHITELISTED_IP替换为你想要允许访问的IP地址。

b. 保存文件并重启iptables服务:

sudo systemctl restart iptables
  1. 使用firewalld配置白名单:

首先,确保你的系统已经安装了firewalld。然后,按照以下步骤操作:

a. 创建一个新的firewalld区域,例如whitelist

sudo firewall-cmd --permanent --new-zone=whitelist

b. 将你想要允许访问的IP地址添加到新创建的区域:

sudo firewall-cmd --permanent --zone=whitelist --add-source=YOUR_WHITELISTED_IP

YOUR_WHITELISTED_IP替换为你想要允许访问的IP地址。

c. 将所需的服务添加到新创建的区域:

sudo firewall-cmd --permanent --zone=whitelist --add-service=ssh
sudo firewall-cmd --permanent --zone=whitelist --add-service=http
sudo firewall-cmd --permanent --zone=whitelist --add-service=https

d. 将新创建的区域应用于公共接口(例如,eth0):

sudo firewall-cmd --permanent --zone=whitelist --change-interface=eth0

eth0替换为你的公共网络接口名称。

e. 重新加载firewalld配置:

sudo firewall-cmd --reload

现在,只有指定的IP地址才能访问SSH、HTTP和HTTPS服务。其他IP地址将被阻止。

未经允许不得转载 » 本文链接:https://www.legongju.com/article/102570.html

相关推荐

  • 如何使用echo命令进行批量操作

    如何使用echo命令进行批量操作

    在Linux和Unix系统中,echo命令通常用于在终端上显示文本 创建一个名为filelist.txt的文件,其中包含要进行批量操作的文件列表,每个文件名占一行。例如: file1...

  • echo命令在不同Linux发行版中的差异

    echo命令在不同Linux发行版中的差异

    echo 命令是一个非常基本且广泛使用的 Linux 命令,用于在终端上输出文本 Bash vs Dash vs other shells:不同的 Linux 发行版可能使用不同的默认 shell,如 Bas...

  • linux怎么查看系统状态

    linux怎么查看系统状态

    在Linux中,有多种方法可以查看系统状态 top:这是一个实时的系统监控工具,可以显示系统进程、CPU使用率、内存使用情况等信息。输入top命令后,你将看到一个交互...

  • linux怎么查看系统属性

    linux怎么查看系统属性

    在Linux中,可以使用多种命令和工具来查看系统属性 查看操作系统信息: cat /etc/os-release 或者
    lsb_release -a 查看内核版本: uname -r 查看系统架构:...

  • linux怎么获取当前登录用户

    linux怎么获取当前登录用户

    在Linux中,可以使用whoami命令来获取当前登录用户
    whoami 这将输出当前登录的用户名。如果你想要查看所有已登录用户及其相关信息,可以使用w或who命令:

  • linux怎么显示系统信息

    linux怎么显示系统信息

    在Linux中,有多种方法可以用来显示系统信息 uname:显示操作系统内核相关信息。
    uname -a 这将显示内核版本、硬件架构等详细信息。 lsb_release:显示发行...

  • windows下怎么运行ubuntu

    windows下怎么运行ubuntu

    在Windows系统下运行Ubuntu有多种方法,以下是几种常见的方法:
    使用Windows Subsystem for Linux (WSL) 启用WSL功能: 打开“控制面板”并选择“程序”。<...

  • ubuntu是实时操作系统吗

    ubuntu是实时操作系统吗

    Ubuntu不是实时操作系统。Ubuntu是基于Linux内核的免费开源操作系统,主要面向桌面、服务器和云环境,它并不具备实时操作系统的特性。实时操作系统(RTOS)是指能...