Éisteoir SOCKS áitiúil ó nasc AsyncSSH
Cruthaigh seoladh TCP dinimiciúil le API forward_socks AsyncSSH agus coinnigh an t-éisteoir beo ar lúb imeachtaí asyncio.
Soláthraíonn AsyncSSH seoladh TCP dinimiciúil trí forward_socks(). Is féidir le feidhmchlár a bhfuil AsyncSSH aige cheana éisteoir SOCKS áitiúil a chruthú thar nasc 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())
Is samplaí iad an freastalaí SSH agus an cuntas. Tá an ghnáthsheiceáil eochair óstaí AsyncSSH i bhfeidhm. Caithfidh an freastalaí an seoladh TCP iarrtha a cheadú. Mar choibhéis ar an líne ordaithe, úsáideann seoladh dinimiciúil áitiúil OpenSSH an treo céanna ó SSH go dtí an ceann scríbe.
Is féidir le cliaint áitiúla 127.0.0.1:1080 a úsáid anois mar a bpointe deiridh SOCKS. Soláthraíonn gach iarraidh SOCKS a ceann scríbe; osclaíonn an freastalaí SSH an nasc TCP amach comhfhreagrach. Ní gá don fheidhmchlár íoslódálaí cianda a rith do gach URL.
Coinníonn an fanacht an fheidhm asincrónach laistigh de raon an naisc. Dá bhfillfeadh sé láithreach tar éis an t-éisteoir a chruthú, d'fhágfadh sé an raon sin agus dhúnfadh sé an nasc a thacaíonn leis. Is féidir le feidhmchlár asyncio níos mó an nasc seo a choinneáil oscailte agus a chúraimí eile á rith ar an lúb imeachtaí céanna.