कैसे निर्दिष्ट करें कि यम को विशिष्ट डोमेन के लिए प्रॉक्सी का उपयोग नहीं करना चाहिए


12

क्या डोमेन को निर्दिष्ट करना संभव है जिसके लिए yum को प्रॉक्सी कॉन्फ़िगरेशन को बायपास करना चाहिए? मुझे डर है कि यह संभव नहीं है ...

मैंने पढ़ा है कि यह वातावरण चर का उपयोग करना संभव था HTTP_PROXYतो NO_PROXY, यह सबसे सुरुचिपूर्ण समाधान है?

[संपादित करें]

मैंने पर्यावरण चर के साथ समाधान की कोशिश की:

export HTTP_PROXY=http://user:pass@host:port
export http_proxy=http://user:pass@host:port
export no_proxy=.domain
export NO_PROXY=.domain

यम प्रॉक्सी का उपयोग करता है लेकिन रिपोज * .डोमेन को बाईपास नहीं किया जाता है।

[कारगर युक्तियाँ]

Http://cntlm.sourceforge.net/ का उपयोग करके मैं कॉन्फ़िगर कर सकता हूं कि किस डोमेन को अनदेखा किया जाना चाहिए। लेकिन यह केवल प्रॉक्सी के साथ होता है जिसे NTLM प्रमाणीकरण की आवश्यकता होती है ...

जवाबों:


26

जैसा कि आप यहाँ वर्णन करते हैं, मैं पर्यावरण चर का उपयोग करके इसे प्राप्त करने में सक्षम नहीं हूं। यम अपने आप में समीपता का समर्थन करता है, और आपको ऐसा कुछ करने में सक्षम होना चाहिए:

proxy=http://proxy:port

में yum.confऔर फिर जोड़ना

proxy=_none_

रेपो परिभाषा में आप वैश्विक प्रॉक्सी के माध्यम से उपयोग नहीं करना चाहते हैं। यह yum.conf मैन पेज में विस्तृत (यद्यपि पर्याप्त रूप से) है।


सफल, अंत में। धन्यवाद! मैं सभी मेजबानों के माध्यम से फिर से नहीं जाना चाहता जहाँ मैंने यह किया था। लेकिन क्या इन रेपो फाइलों में सीधे प्रॉक्सी को जोड़ना संभव होगा, जहां इसकी जरूरत है (जैसे कि बाहरी पैकेज सर्वर के साथ सभी रिपोज, रेपो फाइलों के विपरीत जो आंतरिक पैकेज प्रबंधकों का उपयोग करते हैं, जिन्हें प्रॉक्सी की जरूरत नहीं है)
erikbwork

1
proxy=_none_शानदार, धन्यवाद। यह एक भयानक सॉस का जहाज है। अगर मैं कर सकता तो मैं आपको दो बार वोट देता हूं :)
स्कॉटी एच

@erikbwork मैंने अभी proxy=http://proxy:portअपनी .repo फ़ाइल में जोड़ा है और यह काम किया है। क्या आप जो पूछ रहे हैं?
स्कॉटी एच

4

यदि मैं इस प्रश्न को सही ढंग से समझूं तो वांछित व्यवहार है

package.centos.com एक प्रॉक्सी के माध्यम से खींचा जाता है।

package.internal.lan प्रॉक्सी के माध्यम से जाने के बिना सीधे जाता है।

मैं अभी-अभी यहां पहुंचा हूं कि यह कैसे करना है, और उपरोक्त जानकारी का उपयोग मैं क्या चाहता था, हालांकि मुझे यकीन नहीं है कि उपरोक्त उत्तर पूरा हो गया है।

ऐसा करने के लिए मैंने निम्नलिखित प्रयोग किया।

export HTTP_PROXY=http://myproxy.internal.lan:port

export no_proxy=internal.lan

yum install package1 package2

पैकेज 1 को इंटरनेट से प्रॉक्सी के माध्यम से खींचा गया,

पैकेज 2 मेरे स्थानीय दर्पण से खींचा गया जो प्रॉक्सी के माध्यम से नहीं जा रहा है।


3

मेरे समाधान में Privoxy स्थापित करना शामिल है, एक हल्का http प्रॉक्सी।

yum इंस्टॉल करें

/ Etc / privoxy / config में दो आगे के खंड जोड़ें:

 forward / myproxy.internal.lan:3128
 forward .internal.lan .

और निजीकरण की डिफ़ॉल्ट क्रियाओं को भी अक्षम करें (सुनिश्चित करें कि कोई हेडर भ्रष्ट नहीं हुआ है): (@ आरएचईएल 5 प्राइवेटॉक्सी कॉन्फिगरेशन में 175)

#actionsfile standard  # Internal purpose, recommended
#actionsfile default   # Main actions file
#actionsfile user      # User customizations

उसके बाद http_proxy और ftp_proxy पर्यावरण चर को प्राइवेटोक्सी के पोर्ट पर सेट करना:

घोषणापत्र -x http_proxy = http://127.0.0.1:8118

घोषणापत्र -x ftp_proxy = http://127.0.0.1:8118

yum package1 package2 स्थापित करें

नोट: यदि आपके पास yum.conf में प्रॉक्सी लाइनें हैं, तो उसे हटा दें, यह पर्यावरण चर को ओवरराइड कर देगा।


मैं privoxy से श्वेत सूची मेजबान के तरीकों की तलाश कर रहा था और मैं अपने जवाब यहाँ मिल गया है :)
ahmadali shafiee

2

आप इसे केवल रेपो फ़ाइल में निर्दिष्ट कर सकते हैं। उदाहरण के लिए:

[hduser@n0 cloudera-manager-installer]$ cat /etc/yum.repos.d/cloudera-cdh4.repo  
[cloudera-cdh4]  
name=Cloudera's Distribution for Hadoop, Version 4  
baseurl=http://"yourhost"/cdh4/  
gpgcheck = 0
enabled=1
proxy=_none_

1

फेडोरा पर यम का प्रतिस्थापन dnf है।

Dnf के लिए _none_एक त्रुटि होगी

आपको इसके बजाय एक रिक्त स्ट्रिंग पर प्रॉक्सी सेट करने की आवश्यकता होगी

proxy=

संदर्भ: https://dnf.readthedocs.io/en/latest/conf_ref.html


यह CentOS 8 के लिए भी सही है!
मासी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.