विशिष्ट प्रॉक्सी सर्वर का उपयोग करके कमांड को कैसे लागू किया जाए?


12

कुछ एप्लिकेशन प्रॉक्सी (HTTP प्रॉक्सी या मोजे प्रॉक्सी) का समर्थन करते हैं, और कुछ नहीं हैं।

ब्राउज़रों के लिए, मैं वरीयताओं / विकल्पों के संवाद में प्रॉक्सी सर्वर को निर्दिष्ट कर सकता हूं, और अन्य एप्लिकेशन कॉन्फ़िगरेशन फ़ाइलों में प्रॉक्सी सर्वर को कॉन्फ़िगर करने में सक्षम हो सकते हैं।

सामान्य प्रयोजन के लिए, क्या मैं एक विशिष्ट प्रॉक्सी का उपयोग करके एक आदेश दे सकता हूं? निम्नलिखित की तरह:

$ proxy-exec --type sock5 --server 1.2.3.4:8000 -- wget/ftp ...

मैं Ubuntu Maverick का उपयोग कर रहा हूँ।

पुनश्च

Win32 में, इसे सॉकेट dlls को हाईजैक करके लागू किया जा सकता है, हो सकता है, मैं लिनक्स प्रोग्रामिंग से परिचित नहीं हूं, लेकिन मुझे लगता है कि यह लिनक्स में संभव है। हालांकि।

जवाबों:


17

अधिकांश लिनक्स कि पहुँच आदेश में इंटरनेट देखो HTTP_PROXY, FTP_PROXYऔर SOCKS_SERVERप्रॉक्सी जानकारी के लिए वातावरण चर। इसलिए, अपने उदाहरण की तरह कुछ करने के लिए, बस दौड़ें:

export SOCKS_SERVER=1.2.3.4:8000
wget http://superuser.com/q/262956/66003

के लिए वाक्यविन्यास HTTP_PROXYऔर FTP_PROXYथोड़ा अलग है:

export HTTP_PROXY=http://1.2.3.4:3128/
export FTP_PROXY=ftp://1.2.3.4:25/

उबंटू की प्रॉक्सी सेटिंग्स के साथ शामिल डिफ़ॉल्ट गनोम डेस्कटॉप वातावरण में एक लागू सिस्टम-वाइड बटन है, जो स्वचालित रूप से आपके लिए उन पर्यावरण चर को सेट करेगा। अन्यथा, आप उन्हें हर लॉगिन पर प्रभावी बनाने के exportलिए अपनी ~/.bashrcफ़ाइल में लाइनें जोड़ सकते हैं ।

दुर्भाग्य से, wgetSOCKS का समर्थन नहीं करता है। आप curlउबंटू के साथ शामिल हैं , जो कई चीजों को प्राप्त करने के लिए उपयोग कर सकते हैं wget। दुर्भाग्य से, यह जाँच नहीं करता है SOCKS_SERVER, जबकि यह जाँच करता है HTTP_PROXY(जैसा करता है wget)। इस पृष्ठ को SOCKS5 सर्वर के साथ डाउनलोड करने के लिए कर्ल का उपयोग करने के लिए (उस सर्वर के साथ DNS रिज़ॉल्यूशन प्रदर्शन करते हुए) और इसे बचाने के लिए, इसे superuser.htmlचलाएँ:

curl --socks5-hostname 1.2.3.4:8000 http://superuser.com/q/262956/66003 > superuser.html

यदि आप curlहमेशा उस SOCKS प्रॉक्सी का उपयोग करना चाहते हैं , तो आप शेल उपनाम बना सकते हैं। बस निम्नलिखित पंक्ति को अपने में जोड़ें ~/.bashrc:

alias curl='curl --socks5-hostname 1.2.3.4:8000'

आपको अपने टर्मिनल को फिर से शुरू करने या उस लाइन को चलाने की आवश्यकता होगी जैसे कि परिवर्तनों को प्रभावी करने के लिए एक कमांड थी।


मैंने कोशिश की wgetहै SOCKS_SERVER, लेकिन यह काम नहीं करता है। wgetसे केवल प्रॉक्सी सेटिंग पढ़ें /etc/wgetrc। मैंने linksभी कोशिश की , यह निर्दिष्ट करना ठीक है links -socks-proxy 127.0.0.1:7878 <url>, लेकिन इसका उपयोग करना विफल है export SOCKS_SERVER=...; links <url>
क्ले Jéléi

@ @, 雷: दुर्भाग्य से कुछ कार्यक्रमों को पढ़ा नहीं जाता है SOCKS_SERVER, हालांकि कई लोकप्रिय लोग sshऐसा करते हैं। इसके अलावा, wgetSOCKS को बिल्कुल भी समर्थन नहीं लगता है। हालाँकि, आप उपयोग कर सकते हैं curl। मैं उस बारे में अपने उत्तर में जानकारी जोड़ूंगा।
पैच

यह youtube-dlभी नहीं SOCKS_SERVERपढ़ता है, यह http_proxyइसके बजाय पढ़ता है । और यह मोजे प्रॉक्सी का समर्थन नहीं करता है। उम्म ... कार्यक्रमों की सूची और उनके समर्थित प्रॉक्सी एनक्रिट वर्जन बहुत मददगार हो सकते हैं।
क्ले जेली

यदि आप BXR.SU खोजते हैं , तो ऐसा नहीं लगता कि कुछ भी SOCKS_SERVER का समर्थन करता है, निश्चित रूप से OpenSSH नहीं । यह निश्चित रूप socksifyसे सुरक्षा / डांटे पैकेज से उपयोगिता द्वारा समर्थित केवल एक विकल्प है ।
cnst

wget(1)संस्करण 1.4.0 (लगभग 1999) के बाद से SOCKS प्रॉक्सी का समर्थन कर सकते हैं, अगर इसके साथ--with-socks निर्मित संस्करणों में लगभग कभी ऐसा न हो।
bufh

10

समीपस्थों की कोशिश करो ।

इसके साथ स्थापित किया जा सकता है apt-get। फिर आपको दोनों में एक कॉन्फिग फ़ाइल बनानी होगी

1) ./proxychains.conf
2) $(HOME)/.proxychains/proxychains.conf
3) /etc/proxychains.conf **

और आप एक अन्य कमांड को आमंत्रित करने में सक्षम होंगे जैसे proxychains wget google.com- कनेक्शन प्रॉक्सी के माध्यम से जाएंगे। आप एक साथ या यादृच्छिक क्रम में उपयोग किए जाने वाले कई प्रॉक्सी निर्दिष्ट कर सकते हैं।

उदाहरण के लिए:

➜  ssh -ND 4000 sockshost &
[1] 3446
➜  wget whoer.net -q -O- | grep remote_addr
89.71.*.*
➜  cat proxychains.conf 
[ProxyList]
socks5 127.0.0.1 4000
➜  proxychains wget whoer.net -q -O- | grep remote_addr
|D-chain|-<>-127.0.0.1:4000-<><>-95.211.121.18:80-<><>-OK
78.98.*.*

मैंने कुछ HTML टैग और IP छीन लिए, लेकिन जैसा कि आप देख सकते हैं कि प्रॉक्सी का उपयोग किया गया था और आईपी पते में परिवर्तन हुआ था।


3
चूँकि मूल प्रॉक्साइहांस अस्वस्थ है, आप इसके बजाय प्रॉक्साइन्स-एनजी का उपयोग कर सकते हैं ।
डेनिल्सन सा मैया

1

विग मोजे का समर्थन नहीं करता है, कर्ल पैच के रूप में काम करता है :

curl --socks5-hostname 1.2.3.4:8000 /superuser//q/262956/66003

यदि आपको जरूरत है तो आप स्थापित कर सकते हैं tsocks

स्थापित करें sudo aptitude install tsocksऔर सेटअप करें:

$ sudo vim /etc/tsocks.conf
server = 1.2.3.4
server_type = 5
server_port = 8000

उपयोग:

tsocks wget /superuser//q/262956/66003

1
धड़ के अपडेट किए गए संस्करण प्रतीत होते हैं: superuser.com/a/1000811/128124
Ciro Santilli Sant be be be 法轮功
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.