At geva ein uppreist HTTP CONNECT-tunni til Paramiko
Bind Paramiko saman gjøgnum loyvda HTTP CONNECT-leið, meðan SSH-hostalykil verður váttaður.
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:
- Binda seg til proxyina og senda eina gilda CONNECT-fyrispurning til málið.
- Fullføra hvørja stuðlaða proxy-autentisering og vátta eina góðkenda tunnistøðu.
- Lesa alla proxy-høvdseksjónina, viðgerða partvísar lesingar og varðveita bit yviri markið.
- 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.