Net::SFTP::Foreign-ը վստահված սերվերի ընտրանքները փոխանցում է OpenSSH-ին
Տրամադրեք ProxyCommand-ը որպես SSH ընտրանքի մեկ արգումենտ Net::SFTP::Foreign-ի հանրային more պարամետրի միջոցով։
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-ն է, ունի իր ընտրանքների շարահյուսությունը։