AsyncSSH இணைப்பிலிருந்து உள்ளூர் SOCKS கேட்பான்
AsyncSSH இன் forward_socks API மூலம் மாறும் TCP அனுப்பீட்டை உருவாக்கி, கேட்பானை asyncio நிகழ்வு சுழற்சியில் உயிர்ப்புடன் வைத்திருங்கள்.
AsyncSSH forward_socks() வழியாக மாறும் TCP அனுப்பீட்டை வழங்குகிறது. ஏற்கனவே AsyncSSH உள்ள பயன்பாடு ஒன்று SSH இணைப்பின் மேல் உள்ளூர் SOCKS கேட்பானை உருவாக்கலாம்:
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())
SSH சேவையகமும் கணக்கும் எடுத்துக்காட்டுகள் மட்டுமே. AsyncSSH இன் வழக்கமான புரவலன்-விசைச் சரிபார்ப்பு பொருந்தும். கோரப்பட்ட TCP அனுப்பீட்டை சேவையகம் அனுமதிக்க வேண்டும். கட்டளை வரிச் சமன்பாட்டிற்கு, OpenSSH இன் உள்ளூர் மாறும் அனுப்பீடு SSH இலிருந்து இலக்கு நோக்கிய அதே திசையைப் பயன்படுத்துகிறது.
உள்ளூர் வாடிக்கையாளர்கள் இப்போது 127.0.0.1:1080 ஐ தங்கள் SOCKS முனையமாகப் பயன்படுத்தலாம். ஒவ்வொரு SOCKS கோரிக்கையும் அதன் இலக்கைத் தருகிறது; SSH சேவையகம் அதற்குரிய வெளிச்செல்லும் TCP இணைப்பைத் திறக்கிறது. ஒவ்வொரு URL க்கும் பயன்பாடு தொலை பதிவிறக்கியை இயக்க வேண்டியதில்லை.
காத்திருப்பு ஒத்திசைவற்ற சார்பை இணைப்பின் எல்லைக்குள் வைத்திருக்கிறது. கேட்பானை உருவாக்கிய உடனேயே திரும்பினால் அந்த எல்லையை விட்டு வெளியேறி அதைத் தாங்கும் இணைப்பு மூடப்படும். பெரிய asyncio பயன்பாடு இந்த இணைப்பைத் திறந்தே வைத்துக்கொண்டு தன் மற்ற பணிகளை அதே நிகழ்வு சுழற்சியில் இயக்கலாம்.