Score:0

โมดูลการเข้าถึง NGINX และ DNS ภายใน: วิธีอนุญาตเฉพาะไคลเอ็นต์ในเครื่องเท่านั้น

ธง cn

ฉันค้นหาผ่าน serverfault แต่ไม่พบคำตอบสำหรับเรื่องนี้ บางทีฉันอาจไม่รู้คีย์เวิร์ดที่ถูกต้องหรือเป็นการเข้าใจผิดเชิงแนวคิด ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม!

สถานการณ์:

  1. บริการในเครื่องของฉันทำงานอยู่เบื้องหลังพร็อกซีย้อนกลับ NGINX
  2. ฉันใช้ LAN DNS บนเราเตอร์ (Draytek) เพื่อแก้ไขคำขอในเครื่องเป็น *.example.com โดยตรงกับเซิร์ฟเวอร์ในเครื่องของฉัน (192.168.1.2)

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

ตอนนี้ฉันต้องการอนุญาตให้เฉพาะลูกค้าในพื้นที่เข้าถึงบริการบางอย่างได้โดยใช้ โมดูลการเข้าถึง NGINX กับ:

อนุญาต 192.168.1.0/24;
ปฏิเสธทั้งหมด

แต่ NGINX เห็นเฉพาะ IP สาธารณะของเราเตอร์แทนที่จะเป็น IP ของไคลเอนต์ (192.168.1.100) ดังนั้นทุกคำขอจึงถูกปฏิเสธ:

[...] การเข้าถึงถูกห้ามตามกฎ ลูกค้า: 123.123.123.123 เซิร์ฟเวอร์: service.example.de คำขอ: [...]"

คำถามของฉันคือ:

ฉันจะแยกความแตกต่างระหว่างไคลเอนต์โลคัลและรีโมตบน NGINX ในสถานการณ์นี้ได้อย่างไร

เชื่อมโยงไปยังไดอะแกรมเครือข่าย


vidarlo avatar
ar flag
อย่าใช้ NAT DNS ไม่ *ไม่* เขียน IP ใดๆ ใหม่
Score:0
ธง ru

ขั้นแรกให้ตั้งสมมติฐาน/เงื่อนไข ซึ่งก็คือตรวจสอบว่าเราเตอร์ของคุณเพิ่มไฟล์ X-ส่งต่อ-สำหรับ ส่วนหัวหรือสิ่งที่คล้ายกัน (ติดตาม IP ไคลเอ็นต์จริง)

คุณควรแก้ไข IP ของไคลเอ็นต์ก่อนผ่าน ngx_http_realip_module

การกำหนดค่าตัวอย่างที่มีให้:

set_real_ip_ จาก 192.168.1.0/24;
set_real_ip_ จาก 192.168.2.1;
set_real_ip_from 2001:0db8::/32;
real_ip_header X-ส่งต่อ-สำหรับ;
real_ip_recursive บน;

ด้วยเหตุนี้ IP ที่ใช้ในการตรวจสอบการเข้าถึงควรเป็น IP ที่ถูกต้อง (ไคลเอนต์จริง)

ข้อแม้ประการหนึ่งคือด้วยการกำหนดค่าดังกล่าว การพยายามเพิ่มเราเตอร์ไปยังส่วนหัว X-Forwarded-For จะไม่สามารถทำได้ โดยอัตโนมัติ ด้วย proxy_add_x_forwarded_for เนื่องจาก IP ที่เพิ่มผ่านจะถูกแก้ไขโดยคำสั่งก่อนหน้า มีการกล่าวถึงกรณีเฉพาะนั้นแล้ว บนสแต็กโอเวอร์โฟลว์

โพสต์คำตอบ

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