Ubuntu ufw: ตั้งกฎบนพื้นฐานของแต่ละอินเตอร์เฟส


30

ฉันต้องการสร้างกฎที่อนุญาตให้ทุกคนใน eth1 เข้าถึงพอร์ต 80 ได้ UFW สามารถทำสิ่งนี้ได้หรือฉันควรกลับไปใช้ Shorewall หรือไม่?

เพื่อชี้แจง: นี่เป็นคำถามความสามารถคุณสามารถจัดการอินเตอร์เฟสเป็นเป้าหมายได้หรือไม่?


ฉันกำลังมองหาเพื่อระบุอินเตอร์เฟซไม่ใช่ IP หรือเครือข่าย
Antonius Bloch

นี่คือเวิร์กสเตชันการจัดการ / เซิร์ฟเวอร์พายผลไม้ / หุ่นเชิด มีอินเทอร์เฟซ 4 ตัวเชื่อมต่อกับเครือข่ายที่แตกต่างกัน 4 เครือข่ายสาธารณะ 2 เครือข่ายและเครือข่ายการเช่าหลายแห่งและเครือข่ายการจัดการส่วนตัว 1 แห่ง ฉันต้องการตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ tftp, dhcp และบริการการจัดสรรอื่น ๆ นั้นมีเฉพาะในเครือข่ายการจัดการเท่านั้นและไม่ได้อยู่ในเครือข่ายอื่น
Antonius Bloch

คำตอบ:


51

ในที่สุดฉันก็อ่าน man page:

By default, ufw will apply rules to all available interfaces. To
limit  this,  specify DIRECTION on INTERFACE, where DIRECTION is
one of in or out (interface aliases  are  not  supported).   For
example,  to  allow  all  new incoming http connections on eth0,
use:

ufw allow in on eth0 to any port 80 proto tcp

ในการอธิบายรายละเอียดเล็กน้อยคำตอบคือใช่ ufw สามารถใช้ส่วนต่อประสานเป็นเป้าหมายได้ กฎเฉพาะของฉันดูเหมือนว่า:

ufw allow in on eth1 to [eth1 ip addr] port 80 proto tcp

3

ใช่ถ้า eth1 เป็นเพียงอินเทอร์เฟซปกติที่มีที่อยู่ IP ของตัวเอง (และที่อยู่ IP นั้นเป็นสิ่งที่คุณพยายามให้สิทธิ์การเข้าถึง):

ufw allow from any to [eth1 ip addr] port 80

แต่ถ้ามีอะไรที่ซับซ้อนกว่านั้นเราต้องการข้อมูลเพิ่มเติมเกี่ยวกับวิธีการตั้งค่าระบบนี้


ดูความคิดเห็นของฉันด้านบนเนื่องจากเป็นไปได้ว่าผู้เช่าสามารถเปลี่ยนการตั้งค่าเครือข่ายและเข้าถึงที่อยู่ IP ซึ่งอาจไม่ได้ผล
Antonius Bloch

หากพวกเขาสามารถเปลี่ยนการตั้งค่าเครือข่ายพวกเขาก็มีรูทและสามารถเปลี่ยนกฎไฟร์วอลล์ได้เช่นกันไม่ว่าจะใช้ไฟร์วอลล์ซอฟต์แวร์ตัวไหนก็ตาม
เชนหัวเสีย
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.