Tá ein HTTP CONNECT-hjálpari hevur latið eina tunni aftur til ætlaða SSH-tænaran, lat tá tað streym til Paramiko:

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.

Skift út dømis-vertin og les inn røttu known-hosts-dátur fyri útleggingina. tunnel má longu leiða til sama tænara. Vertarnavnið, sum verður latið connect, eyðkennir SSH-hostalykilin, ikki proxyin.

sock-grænseflatan tekur ímóti einum opnum socket ella socketlíkum lut. Hon samráðist ikki um HTTP fyri teg. Áðrenn hon verður latin aftur, má sambindingin:

  1. Binda seg til proxyina og senda eina gilda CONNECT-fyrispurning til málið.
  2. Fullføra hvørja stuðlaða proxy-autentisering og vátta eina góðkenda tunnistøðu.
  3. Lesa alla proxy-høvdseksjónina, viðgerða partvísar lesingar og varðveita bit yviri markið.
  4. Avmarka uppsetingina og lata afturvíst/feilvond socket gjøgnum sína reinsingarleið.

Nýt eina viðhildna sambinding til tað arbeiðið. At leita eftir einum enskum góðkendum setningi í einum móttøkubuffari missir sundurbýttar støðulinjur, skiftandi orsøkartekst og ófullfíggjaðar høvdir. Ein góðkend proxy-TCP-sambinding er ikki tann góðkenda SSH-tunnin.

Proxyin má loyva tí umbidna SSH-portinum; loyvi til at kaga á netið ger ikki CONNECT-atgongd til port 22. Ein 407 kemur fram áðrenn SSH-innritan, meðan ein SSH-kontufeil kemur fram eftir tunnina. Halt teir konturnar sundur.

Lat SSH-klientin og tilfeingið, sum sambindingin eigur, aftur, tá tú ert liðugur. At ein uppgáva steðgar lesingum sínum letur ikki sjálv eina livandi sambinding.

Skyldar greinar