किसी अन्य सर्वर के माध्यम से ssh के माध्यम से टनल यम ट्रैफ़िक


10

मैं एक कॉर्पोरेट प्रॉक्सी के पीछे फेडोरा डेस्कटॉप चला रहा हूं जो yumट्रैफ़िक (विशेष रूप से *.gzऔर *.bz2) को रोक रहा है । मेरे पास ssh के माध्यम से एक अलग रेडहैट मशीन तक पहुंच है जो कुछ भी डाउनलोड कर सकती है जिसे वह पसंद करता है।

जब मैं करता हूं yum updateऔर अन्य yum कमांड करता है: क्या मेरे लिए डाउनलोड करने के लिए RedHat मशीन पर उस ट्रैफ़िक को रूट करना संभव है? मेरे पास RedHat मशीन पर रूट एक्सेस नहीं है, लेकिन मैं फ़ाइलों को डाउनलोड करने के लिए लॉगिन और उपयोग कर सकता हूं। यदि हां, तो कैसे?

जवाबों:


21

मेरा समाधान @ slm के समान था, लेकिन मैंने इसके बजाय SOCKS का उपयोग किया क्योंकि यह सरल है और सर्वर या क्लाइंट पर प्रॉक्सी स्थापना की आवश्यकता नहीं है।

कंप्यूटर पर सभी आदेशों को प्रतिबंधित एक्सेसेशन से चलाएँ।

में yum.confसेट प्रॉक्सी के रूप में इस प्रकार है

proxy=socks5h://localhost:1080

एक टर्मिनल प्रकार से

ssh -D 1080 YOUR_USER@YOUR_SERVER_WITH_FULL_WEB_ACCESS

एंटर दबाएं और अपना पासवर्ड टाइप करें।

अब, एक अलग टर्मिनल में (ssh एक नहीं) प्रकार

yum update

1
मैंने yum.conf में मोज़े 5h प्रॉक्सी सेटिंग का उपयोग करने की कोशिश की है, लेकिन yum को शिकायत है कि इसका http, https या ftp नहीं है। (सेंटोस 6 का उपयोग करके)
gnac

मेरा समाधान फेडोरा 20 और 21 के साथ काम करता है। सेंट और फेडोरा एक समान वितरण है इसलिए यह थोड़ा अजीब है कि यह काम नहीं करता है।
jax

नमस्ते, आपके द्वारा उल्लिखित ssh कमांड को कंप्यूटर पर प्रतिबंधित एक्सेस अधिकार के साथ चलाया जाना चाहिए? यदि हाँ, मुझे आश्चर्य है कि फ़ायरवॉल कैसे ब्लॉक नहीं करेगा और "ssh: जैसे यजमान से कनेक्ट करें। आपका \ _SERVER_WITH_FULL_WEB_ACCESS प्रतिबंधित मशीन से पहुंच योग्य है?
हेई

@ हाँ, "Your_SERVER_WITH_FULL_WEB_ACCESS" को आपकी मशीन से पहुँच योग्य होना चाहिए। मेरे मामले में - मेरा इंटरनेट स्थानीय रूप से प्रतिबंधित था।
jax

4

आपको SSH कनेक्शन पर YUM के ट्रैफ़िक को प्रॉक्सी करने में सक्षम होना चाहिए जैसे:

  1. /etc/yum.confसंरक्षित सर्वर पर जोड़ें :

    proxy=http://127.0.0.1:8080
    
  2. सामान्य इनबाउंड / आउटबाउंड ssh पहुँच वाले सर्वर से:

    $ ssh -R 8080:ssh.server:8080 user@protected.server
    
  3. सर्वर पर जहां आप YUM कमांड चलाना चाहते हैं:

    $ yum update
    

संदर्भ


मुझे बस कुछ स्पष्टीकरण चाहिए। (मैं अपने फेडोरा डेस्कटॉप desktopऔर रेडहैट सर्वर को पूर्ण डाउनलोड एक्सेस के रूप में संदर्भित करूंगा server)। इसलिए मुझे लगता है कि मुझे proxy=http://127.0.0.1:8080अपने पर करने की आवश्यकता होगी desktopक्योंकि यह यम अपडेट की आवश्यकता वाला कंप्यूटर है और ssh -R 8080:ssh.server:8080 user@protected.serverमेरे पास desktopभी है। serverकॉन्फ़िगरेशन इसमें कहाँ आता है या कोई नहीं है?
jax

2
आप एक HTTP प्रॉक्सी चलाने का चरण याद कर रहे हैं जो 8080 पोर्ट पर सुनता है ssh.server
गिल्स एसओ- बुराई को रोकें '

@ क्या मुझे मेरे desktopया उस प्रॉक्सी की आवश्यकता है server? अगर यह सर्वर नहीं है तो मैं इसे स्थापित नहीं कर सकता क्योंकि मेरे पास रूट एक्सेस नहीं है
jax

@jax आपको इंटरनेट कनेक्शन के साथ मशीन पर प्रॉक्सी चलाने की आवश्यकता है। आपको इसे रूट के रूप में चलाने की आवश्यकता नहीं है। टिनिप्रोक्सी स्थापित करना आसान है (कई विकल्प हैं)।
गिल्स एसओ- बुराई को रोकना '

@ गिल्स, मैंने कहीं और पाया है कि आप एक सीक्स प्रॉक्सी व्हि च बना सकते हैं जो जाहिरा तौर पर टीसीपी ट्रैफ़िक को स्वचालित रूप से रूट करती है। ssh -D 8888 user@serverडेस्कटॉप पर, फिर आपको इस सर्वर का उपयोग करने के लिए yum को बताना होगा proxy=socks5h://localhost:8888। तो क्या आप इसके साथ कोई समस्या देख सकते हैं? इसका मतलब होगा कि मुझे सर्वर मशीन पर कुछ भी स्थापित करने की आवश्यकता नहीं है जो मेरे मामले में आदर्श है क्योंकि यह एक साझा मशीन है। मैं इसका परीक्षण सोमवार तक नहीं कर पाऊंगा।
jax
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.