Ar Net::SFTP::Foreign OpenSSH aizmuguri starpniekservera maršrutēšanu var izteikt kā SSH opciju. Moduļa dokumentētais parametrs more pieņem komandas argumentu masīvu:

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;

Tas paredz esošu ar OpenBSD saderīgu nc palīgprogrammu. OpenSSH to palaiž lokāli, lai izveidotu SOCKS5 savienojumu ar SFTP galamērķi. Vietturi nodrošina SSH izvēlēto resursdatoru un portu. Lai sasniegtu publisku SFTP serveri caur atļautu publisku starpnieku, palīgprogrammai izvēlieties galapunktu bez konta no SOCKS5 starpniekserveru saraksta; tam ir jāatļauj šis SSH galamērķis un ports.

Argumentu robeža ir svarīga: -o ir viens arguments, bet viss ProxyCommand piešķīrums ir nākamais. Net::SFTP::Foreign parametrs more automātiski neuzskata par masīvu patvaļīgu virkni, kurā ir vairāki SSH argumenti.

Lietojumprogramma var arī paturēt ProxyCommand savā parastajā SSH Host konfigurācijā un nodot šo resursdatora aizstājvārdu Net::SFTP::Foreign. Izmantojiet OpenSSH aizmugures konfigurāciju jebkurā no abām formām; citai aizmugurei, piemēram, Plink, ir sava opciju sintakse.

Saistītie raksti