SOCKS प्रोक्सी मार्फत Fabric 2+ SSH जडानहरू
SSH प्रमाणीकरण गन्तव्यसँगै जोडिएको राखी SOCKS-समर्थित कनेक्टरसँग Fabric को ProxyCommand गेटवे प्रयोग गर्नुहोस्।
Fabric का टाढाका आदेशहरू SSH मार्फत यात्रा गर्छन्। त्यो SSH जडान SOCKS सर्भरबाट लैजान, SOCKS बोल्ने र गन्तव्यको बाइट स्ट्रिम फर्काउने कनेक्टर Fabric लाई दिनुहोस्।
Fabric 2 मा प्रस्तुत Connection API ले आदेश स्ट्रिङलाई आफ्नो gateway का रूपमा स्वीकार गर्छ। Fabric ले त्यो स्ट्रिङ ProxyCommand का रूपमा प्रयोग गर्छ। यसका प्रोक्सी विकल्पहरूलाई समर्थन गर्ने पहिले नै भएको OpenBSD-मिल्दो nc छ भने, कन्फिगरेसन यस्तो हुन सक्छ:
from fabric import Connection
connection = Connection(
"app.example.net",
user="deploy",
gateway="nc -X 5 -x proxy.example.net:1080 %h %p",
)यो उदाहरणले सामान्य SSH पोर्ट, 22 प्रयोग गर्छ। कनेक्टरको -X 5 ले SOCKS5 छान्छ, जबकि -x ले प्रोक्सीको अन्तिम बिन्दु जनाउँछ। होस्ट र पोर्टका प्लेसहोल्डरहरूले SSH गन्तव्य दिन्छन्। सार्वजनिक SSH गन्तव्यका लागि, SOCKS5 प्रोक्सी सूचीबाट प्रमाणीकरण नचाहिने अन्तिम बिन्दुले त्यो गन्तव्य र पोर्ट अनुमति दिन्छ भने प्रोक्सी ठेगाना भर्न सक्छ। मेसिनमा स्थापित वास्तविक कनेक्टरका विकल्पहरूसँग आदेश कन्फिगर गर्नुहोस्; nc नामका सबै कार्यक्रमले एउटै इन्टरफेस दिँदैनन्।
कनेक्टर स्थानीय रूपमा चल्छ, जहाँ Fabric चल्छ। एप्लिकेसन सर्भरलाई त्यो सहायक केवल SSH गन्तव्य भएको कारणले चाहिँदैन। स्ट्रिम स्थापित भएपछि पनि Fabric ले SSH वार्ता गर्छ र deploy खातालाई app.example.net मा प्रमाणित गर्छ। SOCKS सर्भरले माग्ने कुनै पनि प्रमाणीकरण कनेक्टरको हो र त्यसले समर्थन गर्नुपर्छ।
Fabric ले SSH कन्फिगरेसनबाट पनि ProxyCommand पढ्न सक्छ। एउटै मार्ग धेरै SSH उपकरणहरूले प्रयोग गर्दा त्यो सुविधाजनक हुन सक्छ। जडानका लागि एउटै इच्छित गेटवे परिभाषा प्रयोग गर्नुहोस्, एउटै गन्तव्यका लागि आदेश-शैलीको गेटवे र छुट्टै जम्प-होस्ट गेटवे नमिलाउनुहोस्।
जब बिचौलिया SSH सर्भर हुन्छ
Fabric को Connection वस्तु gateway का रूपमा दिइँदा अर्थ फरक हुन्छ: Fabric त्यो SSH गेटवेमा जोडिन्छ र अन्तिम होस्टतर्फ च्यानल माग्छ। SSH जम्प होस्टका लागि त्यो रूप प्रयोग गर्नुहोस्। SOCKS श्रोता SSH सर्भर होइन, त्यसैले यसलाई माथिको आदेश-शैली कनेक्टर चाहिन्छ।
यो यातायात छनोटको पनि स्पष्ट सीमा छ। यसले Fabric को SSH जडान मार्गनिर्देशन गर्छ। टाढाको होस्टमा चल्ने आदेशले पछि कुनै रिपोजिटरी वा प्याकेज डाउनलोड गर्दा त्यो कार्यक्रमको आफ्नै प्रोक्सी कन्फिगरेसनअनुसार त्यो होस्टबाट नयाँ बाहिर जाने जडान बनाउँछ।