Fabric 2+ SSH-ühendused SOCKS-puhverserveri kaudu
Kasutage Fabricu ProxyCommand-lüüsi SOCKS-i toetava pistikuga, jättes SSH-autentimise sihtkohaga seotuks.
Fabricu kaugkäsud liiguvad SSH kaudu. Selle SSH-ühenduse SOCKS-serveri kaudu viimiseks andke Fabricule pistik, mis räägib SOCKS-i ja tagastab sihtkoha baidivoo.
Fabric 2-s tutvustatud Connection API võtab käsukäsu vastu oma gateway-na. Fabric kasutab seda käsku ProxyCommandina. Kui olemas on OpenBSD-ga ühilduv nc, mis toetab oma puhverserveri valikuid, võib seadistus olla järgmine:
from fabric import Connection
connection = Connection(
"app.example.net",
user="deploy",
gateway="nc -X 5 -x proxy.example.net:1080 %h %p",
)See näide kasutab tavalist SSH-porti 22. Pistiku -X 5 valib SOCKS5, samas -x märgib puhverserveri lõpp-punkti. Hostinime ja pordi kohatäited annavad SSH-sihtkoha. Avaliku SSH-sihtkoha jaoks võib autentimata lõpp-punkt SOCKS5 puhverserverite loendist täita puhverserveri aadressi, kui see lubab seda sihtkohta ja porti. Seadistage käsk masinasse paigaldatud tegeliku pistiku valikute järgi; kõik nc nimega programmid ei paku sama liidest.
Pistik töötab lokaalselt, seal, kus töötab Fabric. Rakendusserver ei vaja seda abivahendit ainult seetõttu, et on SSH-sihtkoht. Kui voog on loodud, teeb Fabric endiselt SSH-läbirääkimisi ja autendib deploy kontot aadressil app.example.net. Kõik SOCKS-serveri nõutav autentimine kuulub pistiku juurde ja peab selle poolt toetatud olema.
Fabric saab lugeda ka ProxyCommand SSH-seadistusest. See võib olla mugav, kui sama marsruuti kasutavad mitmed SSH-tööriistad. Kasutage ühenduse jaoks üht kavandatud lüüsi määratlust, mitte ärge kombineerige käsustiilis lüüsi eraldi hüppehosti lüüsiga sama sihtkoha jaoks.
Kui vahendaja on SSH-server
Fabricu Connection objekt, mis antakse gateway-na, tähendab midagi muud: Fabric ühendub selle SSH-lüüsiga ja taotleb kanalit lõpphostini. Kasutage seda vormi SSH hüppehosti jaoks. SOCKS-kuulaja ei ole SSH-server, seega vajab see ülaltoodud käsustiilis pistikut.
Sellel transpordivalikul on ka selge piir. See suunab Fabricu SSH-ühenduse. Käskserveris käivitatud käsk, mis hiljem laadib alla hoidla või paketi, loob sellelt hostilt uue väljuva ühenduse vastavalt selle programmi enda puhverserveri seadistusele.