Fabric ના દૂરસ્થ આદેશો SSH દ્વારા મુસાફરી કરે છે. તે SSH જોડાણને SOCKS સર્વર દ્વારા લઈ જવા માટે, Fabric ને એવું કનેક્ટર આપો જે SOCKS બોલે છે અને ગંતવ્યનો બાઇટ પ્રવાહ પાછો આપે છે.

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 જોડાણ માર્ગે મોકલે છે. દૂરસ્થ હોસ્ટ પર ચાલતો આદેશ પછી કોઈ રિપોઝિટરી કે પેકેજ ડાઉનલોડ કરે ત્યારે તે હોસ્ટ પરથી નવું બહારગામી જોડાણ બનાવે છે, તે પ્રોગ્રામની પોતાની પ્રોક્સી ગોઠવણી મુજબ.

સંબંધિત લેખો