Miunganisho ya SSH ya Fabric 2+ kupitia proksi ya SOCKS
Tumia lango la ProxyCommand la Fabric na kiunganishi kinachoauni SOCKS, huku uthibitishaji wa SSH ukibaki kwenye lengwa.
Amri za mbali za Fabric husafiri kwa SSH. Ili kupeleka muunganisho huo wa SSH kupitia seva ya SOCKS, mpe Fabric kiunganishi kinachozungumza SOCKS na kurudisha mtiririko wa baiti wa lengwa.
API ya Connection iliyoanzishwa katika Fabric 2 inakubali mfuatano wa amri kama gateway wake. Fabric hutumia mfuatano huo kama ProxyCommand. Ikiwa kuna nc inayooana na OpenBSD inayoauni chaguo zake za proksi, usanidi unaweza kuwa:
from fabric import Connection
connection = Connection(
"app.example.net",
user="deploy",
gateway="nc -X 5 -x proxy.example.net:1080 %h %p",
)Mfano huu unatumia bandari ya kawaida ya SSH, 22. -X 5 ya kiunganishi huchagua SOCKS5, huku -x ikionyesha ncha ya mwisho ya proksi. Vishika nafasi vya mwenyeji na bandari hutoa lengwa la SSH. Kwa lengwa la SSH la umma, ncha ya mwisho isiyo na uthibitishaji kutoka orodha ya proksi za SOCKS5 inaweza kujaza anwani ya proksi ikiwa inaruhusu lengwa hilo na bandari hiyo. Sanidi amri kwa chaguo za kiunganishi halisi kilichosakinishwa kwenye mashine; programu zinazoitwa nc hazitoi zote kiolesura kimoja.
Kiunganishi hufanya kazi kienyeji, pale Fabric inafanya kazi. Seva ya programu haihitaji msaidizi huyo kwa sababu tu ni lengwa la SSH. Mtiririko ukiwa umewekwa, Fabric bado hufanya majadiliano ya SSH na kuthibitisha akaunti ya deploy kwenye app.example.net. Uthibitishaji wowote unaohitajwa na seva ya SOCKS ni wa kiunganishi na lazima uungwe mkono nacho.
Fabric pia inaweza kusoma ProxyCommand kutoka usanidi wa SSH. Hilo linaweza kuwa rahisi wakati njia moja inatumiwa na zana kadhaa za SSH. Tumia ufafanuzi mmoja wa lango uliokusudiwa kwa muunganisho, badala ya kuchanganya lango la mtindo wa amri na lango tofauti la mwenyeji wa kuruka kwa lengwa lilelile.
Wakati mpatanishi ni seva ya SSH
Kitu Connection cha Fabric kinapotolewa kama gateway humaanisha kitu kingine: Fabric huunganisha kwenye lango hilo la SSH na kuomba chaneli kwa mwenyeji wa mwisho. Tumia umbo hilo kwa mwenyeji wa kuruka wa SSH. Msikilizaji wa SOCKS si seva ya SSH, kwa hiyo anahitaji kiunganishi cha mtindo wa amri kilicho juu.
Uchaguzi huu wa usafirishaji pia una kikomo kilicho wazi. Huelekeza muunganisho wa SSH wa Fabric. Amri inayotekelezwa kwenye mwenyeji wa mbali ambayo baadaye hupakua hazina au kifurushi huunda muunganisho mpya wa kutoka kutoka kwa mwenyeji huyo, kwa mujibu wa usanidi wa proksi wa programu hiyo yenyewe.