Score:1

บล็อกพอร์ตทั้งหมดยกเว้น 80 และ 443 ด้วย cloudflare

ธง jp

ฉันพยายามบล็อกพอร์ตทั้งหมดยกเว้น 22, 80 และ 443 ฉันเพิ่มกฎต่อไปนี้ใน iptables.

*กรอง
: ยอมรับอินพุต [36878:18003219]
:ส่งต่อ ยอมรับ [0:0]
: ยอมรับเอาต์พุต [33947:26518456]
-A INPUT -m state --state ESTABLISHED, RELATED -j ยอมรับ
-A อินพุต -s MY_IP -p tcp -m tcp --dport 22 -j ยอมรับ
-อินพุต -p tcp -m tcp --dport 80 -j ยอมรับ 
-อินพุต -p tcp -m tcp --dport 443 -j ยอมรับ 
-A INPUT -p icmp -m icmp --icmp-type 8 -j ยอมรับ 
-A อินพุต -j DROP
ให้สัญญา

พอร์ต 22 ใช้งานได้ แต่ Cloudflare ไม่สามารถเชื่อมต่อกับเว็บเซิร์ฟเวอร์ได้ -A อินพุต -j DROP ทำให้เกิดปัญหา ในความเป็นจริง การเชื่อมต่อ 443 ไม่ตรงกับกฎจนกว่าจะสิ้นสุดรายการ

Michael Hampton avatar
cz flag
CloudFlare ให้ข้อผิดพลาดเฉพาะข้อใด
jp flag
@MichaelHampton 504 เกตเวย์หมดเวลา
Michael Hampton avatar
cz flag
ฉันเห็นว่าคุณยังไม่ได้เปิดใช้งาน ICMP ในไฟร์วอลล์ของคุณ คุณควรทำอย่างนั้นจริงๆ
jp flag
@MichaelHampton ข้อผิดพลาด CloudFlare ทั่วไปที่เราเชื่อมต่อกับเซิร์ฟเวอร์ Cloudflare แต่ Cloudflare ไม่สามารถเชื่อมต่อกับโฮสต์ได้
jp flag
@MichaelHampton ฉันคิดว่าฉันทำไปแล้ว ฉันควรทำอย่างไร?
Michael Hampton avatar
cz flag
คุณเปิดใช้งานเฉพาะการส่ง Ping คุณควรเปิดใช้งาน ICMP ทั้งหมด ไม่ใช่เฉพาะประเภทใดประเภทหนึ่ง
jp flag
@MichaelHampton คุณหมายถึง `iptables -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT`? มันไม่มีผล!
Michael Hampton avatar
cz flag
ตกลง ตอนนี้เรากำลังดำเนินการ ปัญหาสำคัญอื่น ๆ ที่ฉันเห็นในไฟร์วอลล์คือคุณไม่อนุญาตให้รับส่งข้อมูลในโฮสต์ท้องถิ่น สิ่งนี้จะทำลายบริการที่หลากหลาย (เช่น apache หรือ nginx ที่พูดคุยกับเว็บแอปพลิเคชันเซิร์ฟเวอร์) นอกจากนี้ยังส่งผลให้เกิดข้อผิดพลาด 504 Gateway Timeout
jp flag
@MichaelHampton คุณหมายถึง `iptables -A INPUT -i lo -j ACCEPT` ถ้าใช่ ฉันรู้สึกโง่ ฉันลองแล้วและได้ผล แต่ฉันลบออกเพราะฉันคิดว่ามันเปลี่ยนเอฟเฟกต์ของ `-A INPUT -j DROP` เนื่องจาก `ยอมรับทั้งหมด - ทุกที่ ทุกแห่ง DROP ทั้งหมด -- ทุกที่ ทุกแห่ง ` ตอนนี้ฉันคิดว่ากฎ 'DROP' อยู่หลังกฎ 'ACCEPT' และควรบล็อกอย่างอื่นทั้งหมด
jp flag
@MichaelHampton ฉันไม่พบหน้าที่เน้นถึงความจำเป็นของการยอมรับปริมาณการใช้ localhost หากคุณโพสต์คำแนะนำของคุณเป็นคำตอบ อาจช่วยคนอื่นได้เช่นกัน
Score:1
ธง cz

หลังจากช่วงแสดงความคิดเห็นที่ยาวนาน นี่คือสิ่งที่เราได้รวบรวมไว้:

เมื่อคุณเปิดใช้งานไฟร์วอลล์แบบกำหนดเอง CloudFlare รายงานการหมดเวลาของเกตเวย์ 504 แต่ที่โดดเด่นคือบอกว่านั่นเป็นข้อผิดพลาดที่ได้รับจากเซิร์ฟเวอร์ของคุณ ไม่ใช่ว่ามันหมดเวลาพยายามเข้าถึงเซิร์ฟเวอร์ของคุณ ความแตกต่างนั้นเล็กน้อยแต่สำคัญ: หมายความว่า CloudFlare กำลังพูดคุยกับเซิร์ฟเวอร์ของคุณได้ดี แต่เซิร์ฟเวอร์ของคุณไม่ได้พูดคุยกับตัวเอง

คุณมีเว็บเซิร์ฟเวอร์ที่มอบฉันทะไปยังเว็บแอปพลิเคชันภายในที่ทำงานบน localhost แต่ไฟร์วอลล์ที่กำหนดเองของคุณไม่อนุญาตให้มีการเชื่อมต่อ localhost สิ่งนี้จำเป็นสำหรับเว็บเซิร์ฟเวอร์ในการพูดคุยกับเว็บแอป เช่นเดียวกับบริการภายในอื่น ๆ อีกมากมายเพื่อพูดคุยกัน ซึ่งผู้สร้างไฟร์วอลล์มืออาชีพทุกรายที่คุณเคยใช้จะอนุญาตการรับส่งข้อมูลในโฮสต์ท้องถิ่นโดยไม่มีคำถาม

(ปล.: คุณควรปล่อยให้ ICMP เปิดใช้งานเพื่อป้องกันการแตกประเภทอื่นๆ เช่น Path MTU Discovery)

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา