Jotkut käyttöliittymistämme sisältävät muutoksia käyttäjätiedoissa, ja nämä rajapinnat sallivat vain pääsyosapuolen säätää meitä, joten meillä on nginxissä IP-valkoinen lista.
Se on varustettu pääsyosapuolen poistumis-IP:llä.
Tässä ovat nginx-pääsymme lokit.
nginx ottaa $remote_addr:n todelliseksi IP-osoitteeksi, mutta todellisuudessa $http_X_Forwarded_For on käyttäjän oikea IP, $remote_addr on vain f5:n (käyttäjä -->f5 --> nginx) yksityinen verkkoosoite, minkä seurauksena nginx saa väärän nimen ja käyttäjä säätää käyttöliittymää aina 403.
Ratkaisu:
http-moduulissa plus
set_real_ip_from 10.10.10.122; Kerro nginxille, että saa RealIP:n arvon sieltä
real_ip_header X-Real-IP; Muuttujan nimi, joka tallentaa RealIP-arvon
Voida!
Tässä aloitamme nginx-raportin lisättyämme:
nginx: [emerg] unknown directive "set_real_ip_from" in /home/lnidmp/nginx/conf/nginx.conf:26
Lisätään siis realip-moduuli ja käännetään nginx uudelleen
1、cd /usr/local/nginx-1.6.3 2、./configure --prefix=/usr/cmcc/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module 3、make && tee asennus
Vinkkejä:
1. set_real_ip_from viittaa todelliseen käyttäjän IP-osoitteeseen, josta luotettu esivälityspalvelin
2. real_ip_header viittaa edellisen välityspalvelimen käyttäjän IP-osoitteeseen, josta HTTP-osa vastaanotetusta viestistä on saatu
3. real_ip_recursive Poissulketaanko rekursiivisesti, kunnes käyttäjän IP-osoite saadaan (oletus on pois päältä)
Ensiksi real_ip_header määrittää http-otsikon nimen, joka on oletuksena X-Real-IP.
(1) Jos IP-osoite on olemassa, se tarkistaa, onko lähettäjän IP set_real_ip_from:n määrittelemässä luotetussa IP-listassa. Jos siihen luottaa, se ajattelee, että tämän X-Real-IP:n IP-arvo on käyttäjän todellinen IP-arvo, jonka entinen agentti kertoo, joten se liittää tämän arvon omalle $remote_addr-muuttujalleen; Jos siihen ei luoteta, sitä ei käsitellä, ja $remote_addr on edelleen lähettäjän IP-osoite.
(2) Jos X-Real-Ip:llä on useita IP-arvoja, edellinen välityspalvelin asetetaan näin: proxy_set_header X-Real-Ip $proxy_add_x_forwarded_for;
Saat IP-ketjun, joten real_ip_recursive:n arvo on tällä hetkellä ratkaisevan tärkeä. nginx vertaa set_real_ip_from luottamuslistan IP-osoitteita oikealta vasemmalle IP-listalla. Jos real_ip_recursive on väärin, niin kun oikeanpuoleisin IP todetaan luotettavaksi IP:ksi, ajatellaan, että seuraava IP (oikealla oleva toinen IP) on käyttäjän todellinen IP. Jos real_ip_recursive on päällä, sitä verrataan oikealta vasemmalle, kunnes löydetään epäluotettava IP. Sitten kopioi IP-arvo myös $remote_addr-tiedostoon.
Varat:
https://help.aliyun.com/document_detail/54007.html
https://help.aliyun.com/knowledge_detail/55198.html
https://www.linux178.com/web/nginx-get-realip.html
|