Met Net::SFTP::Foreign se OpenSSH-agterkant kan proxy-aansturing as 'n SSH-opsie uitgedruk word. Die module se gedokumenteerde more-parameter aanvaar 'n skikking van opdragargumente:

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;

Dit veronderstel 'n bestaande nc-hulpprogram wat met OpenBSD versoenbaar is. OpenSSH voer dit plaaslik uit om 'n SOCKS5-verbinding na die SFTP-bestemming te vestig. Die plekhouers voorsien die gasheer en poort wat SSH gekies het. Om 'n openbare SFTP-bediener via 'n toegelate openbare tussenganger te bereik, kies 'n eindpunt sonder rekening uit die SOCKS5-proxylys vir die hulpprogram; dit moet daardie SSH-bestemming en -poort toelaat.

Die argumentgrens maak saak: -o is een argument, en die hele ProxyCommand-toewysing is die volgende. Net::SFTP::Foreign se more-parameter hanteer nie outomaties 'n willekeurige string met verskeie SSH-argumente as 'n skikking nie.

'n Toepassing kan ook die ProxyCommand in sy gewone SSH-gasheerkonfigurasie hou en daardie gasheeralias aan Net::SFTP::Foreign gee. Gebruik die OpenSSH-agterkant se konfigurasie in enige van die twee vorme; 'n ander agterkant soos Plink het sy eie opsie-sintaksis.

Verwante artikels