Cysylltiadau SSH Fabric 2+ drwy ddirprwy SOCKS
Defnyddiwch borth ProxyCommand Fabric gyda chysylltydd sy'n cefnogi SOCKS gan gadw dilysu SSH ynghlwm wrth y cyrchfan.
Mae gorchmynion o bell Fabric yn teithio dros SSH. I gario'r cysylltiad SSH hwnnw drwy weinydd SOCKS, rhowch gysylltydd i Fabric sy'n siarad SOCKS ac yn dychwelyd llif beit y cyrchfan.
Mae'r API Connection a gyflwynwyd yn Fabric 2 yn derbyn llinyn gorchymyn fel ei gateway. Mae Fabric yn defnyddio'r llinyn hwnnw fel ProxyCommand. Gyda nc sy'n gydnaws ag OpenBSD ac sy'n cefnogi ei opsiynau dirprwy, gall y ffurfweddiad fod:
from fabric import Connection
connection = Connection(
"app.example.net",
user="deploy",
gateway="nc -X 5 -x proxy.example.net:1080 %h %p",
)Mae'r enghraifft hon yn defnyddio'r porth SSH arferol, 22. Mae -X 5 y cysylltydd yn dewis SOCKS5, tra mae -x yn nodi pen draw'r dirprwy. Mae'r deiliad lle ar gyfer gwesteiwr a phorth yn cyflenwi'r cyrchfan SSH. Ar gyfer cyrchfan SSH cyhoeddus, gall pen draw heb ei ddilysu o'r rhestr dirprwyon SOCKS5 lenwi cyfeiriad y dirprwy os yw'n caniatáu'r cyrchfan a'r porth hwnnw. Ffurfweddwch y gorchymyn gan ddefnyddio opsiynau'r cysylltydd gwirioneddol sydd wedi'i osod ar y peiriant; nid yw rhaglenni o'r enw nc i gyd yn datgelu'r un rhyngwyneb.
Mae'r cysylltydd yn rhedeg yn lleol, lle mae Fabric yn rhedeg. Nid oes angen y cynorthwyydd hwnnw ar weinydd y rhaglen dim ond am mai dyma'r cyrchfan SSH. Unwaith y bydd y llif wedi'i sefydlu, mae Fabric yn dal i wneud trafodaeth SSH ac yn dilysu'r cyfrif deploy ar app.example.net. Mae unrhyw ddilysu y mae'r gweinydd SOCKS yn ei ofyn yn perthyn i'r cysylltydd ac mae'n rhaid iddo ei gefnogi.
Gall Fabric hefyd ddarllen ProxyCommand o ffurfweddiad SSH. Gall hynny fod yn gyfleus pan fo sawl offeryn SSH yn defnyddio'r un llwybr. Defnyddiwch un diffiniad porth a fwriadwyd ar gyfer y cysylltiad, yn hytrach na chyfuno porth ar ffurf gorchymyn â phorth gwesteiwr naid ar wahân ar gyfer yr un cyrchfan.
Pan fo'r cyfryngwr yn weinydd SSH
Mae gwrthrych Connection Fabric a ddarperir fel gateway yn golygu rhywbeth gwahanol: mae Fabric yn cysylltu â'r porth SSH hwnnw ac yn gofyn am sianel i'r gwesteiwr terfynol. Defnyddiwch y ffurf honno ar gyfer gwesteiwr naid SSH. Nid yw gwrandäwr SOCKS yn weinydd SSH, felly mae angen y cysylltydd ar ffurf gorchymyn uchod.
Mae gan y dewis cludiant hwn derfyn clir hefyd. Mae'n llwybro cysylltiad SSH Fabric. Mae gorchymyn a weithredir ar y gwesteiwr o bell sy'n lawrlwytho ystorfa neu becyn yn ddiweddarach yn gwneud cysylltiad allanol newydd o'r gwesteiwr hwnnw, o dan ffurfweddiad dirprwy'r rhaglen honno ei hun.