Score:0

ฉันจะกำหนดค่า Nginx XFF ได้อย่างถูกต้องได้อย่างไร

ธง hk

ฉันพยายามทำตามคำแนะนำที่นี่:

https://nginx.org/en/docs/http/ngx_http_realip_module.html

และอ้างอิงที่นี่:

https://www.loadbalancer.org/blog/nginx-and-x-forwarded-for-header/

และที่นี่:

https://stackoverflow.com/questions/43689588/how-to-set-up-realip-module-in-nginx

แต่ดูเหมือนว่าฉันไม่สามารถทำให้ถูกต้องได้ นี่คือบล็อก Nginx ที่เกี่ยวข้อง ใครช่วยบอกฉันทีว่าฉันผิดตรงไหน?

        ที่ตั้ง ^~ / {
            try_files $uri @แบ็คเอนด์;
        }

        ตำแหน่ง @แบ็กเอนด์ {
            set_real_ip_from <ที่อยู่ IP>;
            set_real_ip_from <ที่อยู่ IP>;
            real_ip_header X-ส่งต่อ-สำหรับ;
            
            add_header X-Frame-Options "SAMEORIGIN" เสมอ
            add_header X-XSS-Protection "1; mode=block" เสมอ;
            add_header X-Content-Type-Options "nosniff" เสมอ;
            add_header Referrer-Policy "no-referrer-when-downgrade" เสมอ;
            add_header Content-Security-Policy "default-src * data: 'unsafe-eval' 'unsafe-inline'" เสมอ;
        }

ในชุดคำสั่งแรก ผู้เขียนระบุว่า NGINX จะต้องคอมไพล์ด้วย --with-http_realip_module แต่ส่วนอื่นใส่โมดูลลงในไฟล์ปรับแต่งและรีสตาร์ท Nginx อันหลังใช้ไม่ได้สำหรับฉัน แต่นั่นอาจเป็นเพราะฉันไม่ได้กำหนดค่าไฟล์ conf อย่างถูกต้อง ข้อใดถูกต้องและหากจำเป็นต้องคอมไพล์ Nginx กับโมดูล ทุกคนสามารถชี้ให้ฉันเห็นคำแนะนำเกี่ยวกับวิธีการทำเช่นนั้นสำหรับ Ubuntu 20.04 ได้หรือไม่ ฉันได้ค้นหาและไม่พบข้อมูลเพิ่มเติม

ผลลัพธ์ของ nginx -V คือ

รุ่น nginx: nginx/1.18.0 (Ubuntu)
สร้างด้วย OpenSSL 1.1.1f 31 มี.ค. 2020
เปิดใช้งานการสนับสนุน TLS SNI
กำหนดค่าอาร์กิวเมนต์: --with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-KTLRnK/nginx-1.18.0=-fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-B symbolic-functions -Wl,-z,relro -Wl ,-z, ตอนนี้ -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path= /usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http- proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --กับ-debug --กับ-compat --กับ-pcre-jit --กับ-http_ssl_module --กับ-http_stub_status_module --กับ-http_realip_module --กับ-http_auth_request_module --กับ-http_v2_module --กับ-http_dav_module --กับ -http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module
us flag
โปรดเพิ่มผลลัพธ์ของ `nginx -V` ในคำถาม คุณแน่ใจหรือไม่ว่าเซิร์ฟเวอร์อัปสตรีมของคุณส่งที่อยู่ IP ในส่วนหัว 'X-Forwarded-For'
user3877654 avatar
hk flag
สวัสดี @TeroKilkanen ฉันได้เพิ่มผลลัพธ์ของ nginx -V ด้านบนแล้ว ฉันไม่แน่ใจว่าฉันเข้าใจคำถาม ฉันต้องการส่งต่อการรับส่งข้อมูลทั้งหมดไปยังที่อยู่ IP และพอร์ตคงที่ ที่อยู่ใช้งานได้เมื่อฉันขดโดยตรง
us flag
nginx ของคุณมีโมดูล `realip` รวมอยู่ด้วย สิ่งที่ฉันถาม คุณแน่ใจหรือว่าเซิร์ฟเวอร์ที่เชื่อมต่อกับเซิร์ฟเวอร์ของคุณกำลังส่งส่วนหัว 'X-Forwarded-For' ที่คุณต้องการใช้เป็นที่อยู่ IP ของผู้เยี่ยมชม แทนที่จะเป็นที่อยู่ IP ของเซิร์ฟเวอร์ที่เชื่อมต่อ นี่คือจุดประสงค์ของโมดูล realip
user3877654 avatar
hk flag
อา. บางทีฉันอาจอ่านเอกสารผิด สิ่งที่ฉันต้องการทำคือเชื่อมต่อ nginx บนเซิร์ฟเวอร์ของฉันกับ Kubernetes NodePort ไฟล์การกำหนดค่าของฉันทำงานเมื่อฉันใช้ uri แต่ล้มเหลวเมื่อฉันอ้างอิง ipaddress และพอร์ต มีวิธีการทำเช่นนี้หรือไม่?
us flag
โปรดแสดงผลลัพธ์ของ `nginx -T` สำหรับการกำหนดค่าแบบเต็ม
user3877654 avatar
hk flag
D'oh พยายามตอบคำขอของคุณ ฉันพบปัญหา ฉันใช้ ipadress แต่ nginx ต้องการ http:// ผ่านการทดสอบเรียบร้อยแล้ว

โพสต์คำตอบ

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