Net::SFTP::Foreign skickar vidare proxyinställningar till OpenSSH
Ange en ProxyCommand som ett SSH-alternativargument via den offentliga parametern more i Net::SFTP::Foreign.
Med OpenSSH-backend i Net::SFTP::Foreign kan proxy-routing uttryckas som ett SSH-alternativ. Modulens dokumenterade parameter more accepterar en array av kommandoparametrar:
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;Detta förutsätter en befintlig OpenBSD-kompatibel nc-hjälpare. OpenSSH kör den lokalt för att upprätta en SOCKS5-anslutning till SFTP-målet. Platshållarna anger värden och porten som SSH valde. För att nå en offentlig SFTP-server via en tillåten offentlig mellanhand väljer du en slutpunkt utan konto från SOCKS5-proxylistan för hjälparen; den måste tillåta det SSH-målet och den porten.
Argumentgränsen spelar roll: -o är ett argument, och hela ProxyCommand-tilldelningen är nästa. Parametern more i Net::SFTP::Foreign behandlar inte automatiskt en godtycklig sträng med flera SSH-argument som en array.
Ett program kan också behålla ProxyCommand i sin vanliga SSH Host-konfiguration och skicka det värdsaliaset till Net::SFTP::Foreign. Använd OpenSSH-backendens konfiguration i endera formen; en annan backend som Plink har sin egen alternativsyntax.