Loodud HTTP CONNECT-tunneli edastamine Paramikole
Ühendage Paramiko volitatud HTTP CONNECT-marsruudi kaudu, säilitades SSH-hostivõtme kontrolli.
Kui HTTP CONNECT-abivahend on tagastanud tunneli soovitud SSH-serverisse, andke see voog Paramikole:
with paramiko.SSHClient() as client:
client.load_system_host_keys()
client.connect('ssh.example.com',
username='operator',
sock=tunnel,
banner_timeout=10,
auth_timeout=10)
# Use the verified SSH connection.Asendage näidishost ja laadige juurutuse õiged known-hosts-andmed. tunnel peab juba viima samasse serverisse. Hostinimi, mis antakse connect-le, identifitseerib SSH-hostivõtme, mitte puhverserveri.
sock-liides võtab vastu avatud socketi või socketilaadse objekti. See ei läbi teie eest HTTP-d. Enne tagastamist peab konnektor:
- Puhverserveriga ühenduma ja saatma sihtkohale kehtiva CONNECT-päringu.
- Lõpetama kõik toetatud puhverserveri autentimised ja valideerima eduka tunneli oleku.
- Lugema kogu puhverserveri päiseosa, käsitledes osalisi lugemisi ja säilitades piirist kaugemale jäävad baidid.
- Piirama seadistamist ja sulgema tagasilükatud/vigased socketid oma puhastustee kaudu.
Kasutage selle töö jaoks hooldatavat konnektorit. Ingliskeelse õnnestumisfraasi otsimine ühest vastuvõtupuhvrist jätab vahele jaotatud olekuridad, muutuva põhjuseteksti ja puudulikud päised. Edukas puhverserveri TCP-ühendus ei ole vastuvõetud SSH-tunnel.
Puhverserver peab lubama taotletud SSH-porti; veebilehitsemise luba ei loo CONNECT-juurdepääsu pordile 22. 407 tekib enne SSH-sisselogimist, samas kui SSH-konto tõrge tekib pärast tunnelit. Hoidke need kontod eraldi.
Sulgege SSH-klient ja konnektorile kuuluvad ressursid, kui olete lõpetanud. Ülesande lugemiste peatamine ei sulge iseenesest aktiivset ühendust.