Fabric-en urruneko komandoak SSH bidez bidaiatzen dute. SSH konexio hori SOCKS zerbitzari baten bidez eramateko, eman Fabric-i SOCKS hitz egiten duen eta helmugaren byte korrontea itzultzen duen konektore bat.

Fabric 2-n sartutako Connection APIak komando kate bat onartzen du bere gateway gisa. Fabric-ek kate hori ProxyCommand gisa erabiltzen du. Bere proxy aukerak onartzen dituen OpenBSD-rekin bateragarria den nc bat badago, konfigurazioa hau izan daiteke:

from fabric import Connection

connection = Connection(
    "app.example.net",
    user="deploy",
    gateway="nc -X 5 -x proxy.example.net:1080 %h %p",
)

Adibide honek ohiko SSH portua erabiltzen du, 22. Konektorearen -X 5 aukerak SOCKS5 hautatzen du, eta -x proxiaren amaiera-puntua adierazten du. Ostalariaren eta portuaren leku-markek SSH helmuga ematen dute. SSH helmuga publiko baterako, SOCKS5 proxy zerrendako autentifikatu gabeko amaiera-puntu batek proxy helbidea bete dezake helmuga eta portu hori onartzen baditu. Konfiguratu komandoa makinan instalatutako benetako konektorearen aukerekin; nc izeneko programek ez dute denek interfaze bera erakusten.

Konektorea tokian bertan exekutatzen da, Fabric exekutatzen den lekuan. Aplikazio zerbitzariak ez du laguntzaile hori behar SSH helmuga delako bakarrik. Korrontea ezarri ondoren, Fabric-ek SSH negoziazioa egiten jarraitzen du eta deploy kontua app.example.net-n autentifikatzen du. SOCKS zerbitzariak eskatzen duen edozein autentifikazio konektoreari dagokio eta hark onartu behar du.

Fabric-ek ProxyCommand bat ere irakur dezake SSH konfiguraziotik. Hori erosoa izan daiteke SSH tresna batzuek ibilbide bera erabiltzen dutenean. Erabili konexiorako aurreikusitako atebide definizio bakarra, komando estiloko atebidea eta jauzi-ostalariaren atebide bereizia helmuga bererako konbinatu ordez.

Bitartekaria SSH zerbitzari bat denean

Fabric-en Connection objektu bat gateway gisa emanda, beste zerbait esan nahi du: Fabric SSH atebide horretara konektatzen da eta azken ostalarirako kanal bat eskatzen du. Erabili forma hori SSH jauzi-ostalari baterako. SOCKS entzulea ez da SSH zerbitzari bat, beraz goiko komando estiloko konektorea behar du.

Garraio aukera honek muga argia ere badu. Fabric-en SSH konexioa bideratzen du. Urruneko ostalarian exekutatutako komando batek, gero biltegi edo pakete bat deskargatzen duenak, ostalari horretatik irteerako konexio berri bat sortzen du, programa horren beraren proxy konfigurazioaren arabera.

Erlazionatutako artikuluak