欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux利用firewalld和iptables實(shí)現(xiàn)IP端口限制與開放

 更新時(shí)間:2025年02月14日 10:01:48   作者:Mr-Wanter  
在服務(wù)器管理中,防火墻是保護(hù)系統(tǒng)安全的重要工具,通常,我們可能會(huì)關(guān)閉firewalld,但在某些情況下,我們需要利用firewalld或iptables來(lái)限制IP請(qǐng)求,本文將詳細(xì)介紹如何使用firewalld和iptables來(lái)實(shí)現(xiàn)IP端口限制與開放,需要的朋友可以參考下

前言

在服務(wù)器管理中,防火墻是保護(hù)系統(tǒng)安全的重要工具。通常,我們可能會(huì)關(guān)閉firewalld,但在某些情況下,我們需要利用firewalld或iptables來(lái)限制IP請(qǐng)求。本文將詳細(xì)介紹如何使用firewalld和iptables來(lái)實(shí)現(xiàn)IP端口限制與開放。

一、FirewalldIP端口限制

1.1 確認(rèn)啟動(dòng)狀態(tài)

首先,我們需要確認(rèn)firewalld的啟動(dòng)狀態(tài)

sudo systemctl status firewalld

1.2 啟動(dòng)Firewalld

如果firewalld未啟動(dòng),執(zhí)行以下命令啟動(dòng):

sudo systemctl start firewalld

1.3 查看當(dāng)前連接到Nacos的IP

以Nacos為例,查看當(dāng)前連接到Nacos的IP:

netstat -antp | grep ':8848' | awk '{print $5}' | cut -d':' -f1 | sort | uniq

此處查詢的ip僅供參考,可作為梳理后的補(bǔ)充

1.4 添加訪問(wèn)規(guī)則

添加訪問(wèn)規(guī)則,允許特定IP訪問(wèn)Nacos服務(wù):

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="172.1.1.3" port port=8848 protocol=tcp accept'

其中,address是需要連接到Nacos的服務(wù)器的IP(內(nèi)網(wǎng)/彈性都要加),port指定Nacos端口。多個(gè)IP可多次執(zhí)行上面代碼。

1.5 重新加載配置

添加規(guī)則后,重新加載配置:

sudo firewall-cmd --reload

1.6 查看當(dāng)前活動(dòng)的規(guī)則列表

查看當(dāng)前活動(dòng)的規(guī)則列表:

sudo firewall-cmd --list-all

輸出示例:

public (active)
target: default
icmp-block-inversion: no
interfaces: ens3
sources:
services: cockpit dhcpv6-client mdns ssh
ports: 8848/tcp 6379/tcp 8012/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
rule family=“ipv4” source address=“172.1.1.1” port port=“8848” protocol=“tcp” accept
rule family=“ipv4” source address=“172.1.1.2” port port=“8848” protocol=“tcp” accept
rule family=“ipv4” source address=“172.1.1.3” port port=“8848” protocol=“tcp” accept
rule family=“ipv4” source address=“172.1.1.4” port port=“8848” protocol=“tcp” accept

1.7 移除某個(gè)規(guī)則

  • 查看當(dāng)前的rich rules
sudo firewall-cmd --list-rich-rules
  • 移除 rich rule
sudo firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="172.1.1.4" port port="8848" protocol="tcp" accept'
  • 重新加載防火墻
sudo firewall-cmd --reload
  • 驗(yàn)證規(guī)則是否已移除
sudo firewall-cmd --list-rich-rules

二、Firewalld 開放端口

上一節(jié)是針對(duì)ip開放端口,那么如何直接開放端口,所有ip都可訪問(wèn)?

2.1 開放 6379端口

sudo firewall-cmd --permanent --add-port=6379/tcp

2.2 重新加載防火墻

添加完規(guī)則后,需要重新加載防火墻以使更改生效:

sudo firewall-cmd --reload

2.3 驗(yàn)證規(guī)則

您可以通過(guò)以下命令來(lái)驗(yàn)證當(dāng)前的防火墻規(guī)則,確保 Redis 的端口已經(jīng)被成功開放:

sudo firewall-cmd --list-all

三、Iptables限制ip端口(未驗(yàn)證)

3.1 添加規(guī)則允許特定IP訪問(wèn)Nacos服務(wù):

sudo iptables -A INPUT -p tcp -s 172.16.17.33 --dport 8848 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 8848 -s 172.16.61.83 -j ACCEPT

3.2 保存 iptables 規(guī)則

Ubuntu/Debian:

sudo iptables-save > /etc/iptables.up.rules

CentOS/RHEL:

sudo service iptables save

3.3 解決瀏覽器無(wú)法訪問(wèn)Nacos頁(yè)面的問(wèn)題

添加完規(guī)則之后,可能瀏覽器依然無(wú)法訪問(wèn)Nacos頁(yè)面,并且對(duì)應(yīng)服務(wù)器可能ping通,但curl無(wú)法訪問(wèn)??赡苁且?yàn)橛幸粭l規(guī)則導(dǎo)致的,去掉后可以正常訪問(wèn)。

5 REJECT all – 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited

總結(jié)

在服務(wù)器管理中,梳理清楚當(dāng)前服務(wù)器有哪些需要對(duì)外訪問(wèn)的服務(wù)非常重要。類似1.3中查看連接IP并不全面,因此需要結(jié)合實(shí)際情況進(jìn)行規(guī)則配置。通過(guò)firewalld和iptables,我們可以靈活地控制IP端口的訪問(wèn)權(quán)限,從而提升服務(wù)器的安全性。

以上就是使用firewalld和iptables實(shí)現(xiàn)IP端口限制與開放的詳細(xì)內(nèi)容,更多關(guān)于firewalld iptables IP端口限制與開放的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論