मैं X-फॉरवर्ड किए गए हेडर में पारित क्लाइंट IP के आधार पर Nginx के पीछे संसाधनों तक पहुंच को प्रतिबंधित करने का प्रयास कर रहा हूं। नग्नेक्स Google क्लाउड प्लेटफ़ॉर्म पर कुबेरनेट्स क्लस्टर पर एक कंटेनर में चल रहा है और असली ग्राहक के टुकड़े केवल एक्स-फॉरवर्ड किए गए हेडर में पारित किए गए हैं
अब तक मैं इसे निम्नलिखित कोड के साथ एक आईपी के लिए करने में कामयाब रहा:
set $allow false;
if ($http_x_forwarded_for ~* 123.233.233.123) {
set $allow true;
}
if ($http_x_forward_for ~* 10.20.30.40) {
set $allow false;
}
if ($allow = false) {
return 403;
}
लेकिन आईपी की पूरी रेंज के लिए मैं ऐसा कैसे कर सकता हूं? हाथ से सैकड़ों आईपी निर्दिष्ट करने का कोई मतलब नहीं है।
सभी मदद की सराहना की है
location / { real_ip_header X-Forwarded-For; set_real_ip_from 10.0.0.0/8; real_ip_recursive on; allow xxx.xxx.xxx.xxx;