หากพอร์ตเปิดขึ้นสำหรับการใช้งานสาธารณะโดยใช้ไฟร์วอล - cmd ฉันต้องการ จำกัด พอร์ตนี้เป็น IP เฉพาะซึ่งฉันพบคำตอบสำหรับไซต์นี้
ฉันใช้สิ่งต่อไปนี้เพื่อเปิด:
$ firewall-cmd --permanent --zone=public --add-port=10050/tcp
$ firewall-cmd --reload
ตอนนี้ใช้ข้อมูลจากข้อมูลที่ฉันพบว่าฉันต้องการ จำกัด การเข้าถึงพอร์ตนี้ไปยังที่อยู่ IP ที่เฉพาะเจาะจง ฉันต้องลบพอร์ตนี้ออกจากการเข้าถึงสาธารณะก่อนหรือไม่
หรือฉันเพียงแค่เพิ่มกฎใหม่ดังต่อไปนี้และนั่นจะดูแลปัญหาให้ฉันได้ไหม
$ firewall-cmd --new-zone=special
$ firewall-cmd --permanent --zone=special --add-rich-rule='
rule family="ipv4"
source address=”123.1.1.1"
port protocol="tcp" port="10050" accept'
ฉันได้ลองทำสิ่งต่อไปนี้แล้ว:
$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --reload
แต่เมื่อฉันเรียกใช้ต่อไปนี้:
$ firewall-cmd --list-ports
10050/tcp
จะยังคงปรากฏ
โปรดเข้าใจฉันไม่คุ้นเคยกับการกำหนดค่าด้านที่รุนแรงเกินไป
Soultion:อย่าลืม--run-to-Permanent
$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --runtime-to-permanent
$ firewall-cmd --reload
อาฉันลืม--permanent
—
mcv
คุณควรโพสต์สิ่งนี้เป็นคำตอบ (และยอมรับ) เป็นที่ยอมรับได้อย่างสมบูรณ์แบบในการยอมรับคำตอบของคุณเองคำถามนี้ถูกทำเครื่องหมายว่าแก้ไขแล้ว
—
Gerald Schneider
เป็นการดีกว่าที่จะไม่ใช้
—
Michael Hampton
--permanent
ในกรณีที่คุณทำผิดกฎไฟร์วอลล์ หากคุณใช้--permanent
และล็อคตัวเองคุณจะพบว่ามันค่อนข้างยากที่จะกลับเข้ามาเนื่องจากคุณไม่มีวิธีการกู้คืน แต่อย่าใช้--permanent
และเมื่อคุณมีความสุขกับกฎใช้firewall-cmd --runtime-to-permanent
เพื่อกระทำกฎ หากคุณถูกล็อคการรีโหลดไฟร์วอลล์หรือการรีบูตจะกลับมาอีกครั้ง
ดังนั้นสิ่งนี้
—
mcv
firewall-cmd --runtime-to-permanent
จะถูกนำไปใช้หลังจากfirewall-cmd --reload
หรือแทนที่มันทั้งหมดหรือไม่ ฉันจะลองสิ่งนี้อย่างแน่นอน