Net::SFTP::Foreign యొక్క OpenSSH బ్యాకెండ్‌తో ప్రాక్సీ రూటింగ్‌ను SSH ఎంపికగా వ్యక్తీకరించవచ్చు. మాడ్యూల్‌లోని డాక్యుమెంటెడ్ more పరామితి కమాండ్ ఆర్గ్యుమెంట్ల శ్రేణిని స్వీకరిస్తుంది:

use Net::SFTP::Foreign;

my $sftp = Net::SFTP::Foreign->new(
    'files.example.net',
    user => 'operator',
    more => [
        '-o',
        'ProxyCommand=nc -X 5 -x proxy.example.net:1080 %h %p',
    ],
);

die $sftp->error if $sftp->error;

ఇది OpenBSD తో సరిపోయే nc సహాయకం ఇప్పటికే ఉందని ఊహిస్తుంది. OpenSSH దాన్ని SFTP గమ్యస్థానానికి SOCKS5 కనెక్షన్ ఏర్పాటు చేయడానికి స్థానికంగా నడుపుతుంది. ప్లేస్‌హోల్డర్లు SSH ఎంచుకున్న హోస్ట్ మరియు పోర్ట్‌ను అందిస్తాయి. అనుమతించబడిన పబ్లిక్ మధ్యవర్తి ద్వారా పబ్లిక్ SFTP సర్వర్‌ను చేరుకోవడానికి, సహాయకం కోసం SOCKS5 ప్రాక్సీ జాబితా నుండి ఖాతా అవసరం లేని ఎండ్‌పాయింట్‌ను ఎంచుకోండి; అది ఆ SSH గమ్యస్థానాన్ని మరియు పోర్ట్‌ను అనుమతించాలి.

ఆర్గ్యుమెంట్ సరిహద్దు ముఖ్యం: -o ఒక ఆర్గ్యుమెంట్, మరియు మొత్తం ProxyCommand కేటాయింపు తర్వాతది. Net::SFTP::Foreign యొక్క more పరామితి అనేక SSH ఆర్గ్యుమెంట్లు ఉన్న ఏ స్ట్రింగ్‌నైనా స్వయంచాలకంగా శ్రేణిగా పరిగణించదు.

అప్లికేషన్ ProxyCommand ను తన సాధారణ SSH Host కాన్ఫిగరేషన్‌లో ఉంచి ఆ హోస్ట్ మారుపేరును Net::SFTP::Foreign కి ఇవ్వగలదు. OpenSSH బ్యాకెండ్ కాన్ఫిగరేషన్‌ను రెండు రూపాల్లోనూ ఉపయోగించండి; Plink వంటి వేరే బ్యాకెండ్‌కు దాని సొంత ఎంపిక సింటాక్స్ ఉంది.

సంబంధిత వ్యాసాలు