Tgħaddi Tunnel HTTP CONNECT stabbilit lil Paramiko
Qabbad Paramiko permezz ta’ rotta HTTP CONNECT awtorizzata filwaqt li żżomm il-verifika tal-muftieħ tal-host SSH.
Wara li assistent HTTP CONNECT ikun irritorna tunnel lis-server SSH maħsub, agħti dak il-fluss lil 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.Ibdel il-host tal-eżempju u għabbi d-data known-hosts korretta tal-implimentazzjoni. tunnel diġà għandu jwassal għal dak l-istess server. L-isem tal-host li jgħaddi lil connect jidentifika l-muftieħ tal-host SSH, mhux il-proxy.
L-interface sock taċċetta socket miftuħa jew oġġett simili għal socket. Ma tinnegozjax HTTP għalik. Qabel ma tirritornah, il-konnettur irid:
- Jikkonnettja mal-proxy u jibgħat talba CONNECT valida għad-destinazzjoni.
- Jitlesta kwalunkwe awtentikazzjoni tal-proxy appoġġjata u jivvalida status ta’ tunnel b’suċċess.
- Jaqra s-sezzjoni kollha tal-intestaturi tal-proxy, filwaqt li jimmaniġġja qari parzjali u jippreserva l-bytes lil hinn mill-limitu.
- Jillimita s-setup u jagħlaq is-sockets miċħuda/bil-ħsara permezz tal-passaġġ tat-tindif tiegħu.
Uża konnettur miżmum għal dak ix-xogħol. It-tfittxija ta’ frażi ta’ suċċess bl-Ingliż f’buffer wieħed tal-wasla taqbeż linji tal-istat maqsuma, test tar-raġuni varjabbli u intestaturi mhux sħaħ. Konnessjoni TCP tal-proxy b’suċċess mhijiex it-tunnel SSH aċċettat.
Il-proxy għandu jippermetti l-port SSH mitlub; il-permess tal-browsing tal-web ma jistabbilixxix aċċess CONNECT għall-port 22. 407 iseħħ qabel id-dħul SSH, filwaqt li falliment tal-kont SSH iseħħ wara t-tunnel. Żomm dawk il-kontijiet separati.
Agħlaq il-klijent SSH u r-riżorsi proprjetà tal-konnettur meta tispiċċa. Li task jieqaf il-qari tiegħu ma jagħlaqx waħdu konnessjoni ħajja.