Hur öppnar jag Port för en specifik IP-adress i Firewalld
Hur kan jag tillåta trafik från en specifik IP-adress i mitt privata nätverk eller tillåta trafik från ett specifikt privat nätverk via firewalld, till en specifik port eller tjänst på en Red Hat Enterprise Linux (RHEL) eller CentOS-server?
i den här korta artikeln lär du dig hur du öppnar en port för en specifik IP-adress eller nätverksintervall i din RHEL-eller CentOS-server som kör en firewalld-brandvägg.
det lämpligaste sättet att lösa detta är att använda en firewalld-zon. Så du måste skapa en ny zon som håller de nya konfigurationerna (eller du kan använda någon av de säkra standardzonerna som finns tillgängliga).
öppna Port för specifik IP-adress i Firewalld
skapa först ett lämpligt zonnamn (i vårt fall har vi använt mariadb-access
för att tillåta åtkomst till MySQL-databasservern).
# firewall-cmd --new-zone=mariadb_access --permanent
ladda sedan om firewalld-inställningarna för att tillämpa den nya ändringen. Om du hoppar över det här steget kan du få ett felmeddelande när du försöker använda det nya zonnamnet. Den här gången ska den nya zonen visas i listan över zoner som markeras i följande skärmdump.
# firewall-cmd --reload# firewall-cmd --get-zones
lägg sedan till källans IP-adress (10.24.96.5/20) och porten (3306) som du vill öppna på den lokala servern som visas. Ladda sedan om firewalld-inställningarna för att tillämpa de nya ändringarna.
# firewall-cmd --zone=mariadb-access --add-source=10.24.96.5/20 --permanent# firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent# firewall-cmd --reload
Alternativt kan du tillåta trafik från hela nätverket (10.24.96.0/20) till en tjänst eller port.
# firewall-cmd --zone=mariadb-access --add-source=10.24.96.0/20 --permanent# firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent# firewall-cmd --reload
för att bekräfta att den nya zonen har de nödvändiga inställningarna som lagts till ovan, kontrollera dess detaljer med följande kommando.
# firewall-cmd --zone=mariadb-access --list-all
ta bort Port och zon från Firewalld
du kan ta bort källans IP-adress eller nätverk som visas.
# firewall-cmd --zone=mariadb-access --remove-source=10.24.96.5/20 --permanent# firewall-cmd --reload
för att ta bort porten från zonen, utfärda följande kommando och ladda om firewalld-inställningarna:
# firewall-cmd --zone=mariadb-access --remove-port=3306/tcp --permanent# firewall-cmd --reload
för att ta bort zonen, kör följande kommando och ladda om firewalld-inställningarna:
# firewall-cmd --permanent --delete-zone=mariadb_access# firewall-cmd --reload
sist men inte listan, Du kan också använda firewalld rika regler. Här är ett exempel:
# firewall-cmd --permanent –zone=mariadb-access --add-rich-rule='rule family="ipv4" source address="10.24.96.5/20" port protocol="tcp" port="3306" accept'