Isilaleli se-SOCKS sendawo esivela kuxhumano lwe-AsyncSSH
Yenza ukudlulisela kwe-TCP okuguquguqukayo nge-API ye-forward_socks ku-AsyncSSH bese ugcina isilaleli siphila ku-asyncio event loop.
I-AsyncSSH inikeza ukudlulisela kwe-TCP okuguquguqukayo nge-forward_socks(). Uhlelo olune-AsyncSSH kakade lungakwazi ukwakha isilaleli se-SOCKS sendawo phezu koxhumano lwe-SSH:
import asyncio
import asyncssh
async def main():
async with asyncssh.connect(
'jump.example.net', username='operator'
) as connection:
listener = await connection.forward_socks('127.0.0.1', 1080)
await listener.wait_closed()
asyncio.run(main())
Iseva ye-SSH ne-akhawunti kuyizibonelo. Kuhlolwa ukuhlolwa okuvamile kokhiye bomsingathi ku-AsyncSSH. Iseva kufanele ivumele ukudlulisela kwe-TCP okuceliwe. Njengokulingana komugqa womyalo, ukudlulisela okuguquguqukayo kwasendaweni kwe-OpenSSH kusebenzisa uhlangothi olufanayo ukusuka ku-SSH kuya endaweni ekuyiwa kuyo.
Amakhasimende asendaweni manje angasebenzisa i-127.0.0.1:1080 njengephuzu lawo lokugcina le-SOCKS. Isicelo ngasinye se-SOCKS sinikeza indawo esiyiyo; iseva ye-SSH ivula uxhumano lwe-TCP oluphumayo oluhambisanayo. Uhlelo akudingeki luqalise umthwebuli wakude we-URL ngayinye.
Ukulinda kugcina umsebenzi ongahambisani ngaphakathi kobubanzi boxhumano. Ukubuya ngokushesha ngemva kokwakha isilaleli kungaphuma kuleso sikhala futhi kuvalwe uxhumano olusekelayo. Uhlelo olukhulu lwe-asyncio lungagcina luxhumene luvulekile ngenkathi lusebenzisa eminye imisebenzi yalo ku-event loop efanayo.