phpseclib 3 SFTP gjøgnum eina útgingna proxystreym
Brúka tann almenna streymkonstruktørin í phpseclib 3 at byrja SFTP gjøgnum eina útgingna HTTP- ella SOCKS-tunil.
phpseclib 3 tek ímóti einari opnari streymtilfeingi har SSH/SFTP-konstruktørurin annars fær eitt vertsnavn. Hetta er tann almenni afhendingarstøðurin fyri eina samband, sum longu verður borið gjøgnum eina proxy.
Fyrst ger sambindingin eina HTTP CONNECT- ella SOCKS-tunil til tann veruliga SFTP-ambætaran og portin. Síðan verður tann útgingna streymurin latin SFTP:
use phpseclib3\Net\SFTP;
$sftp = new SFTP($tunnel);
$actualHostKey = $sftp->getServerPublicHostKey();
if ($actualHostKey === false
|| !hash_equals($expectedHostKey, $actualHostKey)) {
throw new RuntimeException('Unexpected SFTP server key');
}
if (!$sftp->login($sftpUser, $sftpCredential)) {
throw new RuntimeException('SFTP login failed');
}
$tunnel er longu sambundin streymur, ikki ein proxy-URL. $expectedHostKey er tann álítandi almennu lyklastreingin hjá ambætaranum, fingin gjøgnum tilfeingisferðina hjá tólinum, í tí sniðinum sum phpseclib letur aftur. Innritingsváttururin kann vera tann stuðlaða loyniorðið ella eitt innløst lyklalutur, sum tólið velur.
Greina, hvat sambindingin letur aftur
Streymurin má longu leiða til SFTP-ambætaran. Fyri HTTP CONNECT merkir tað, at proxyin hevur góðtikið málið og at fullu proxy-svarhøvdini eru brúkt. Fyri SOCKS má tann viðkomandi samráðingin vera væl avsluttað. Allir SSH-býtar, sum longu eru lisnir handan hetta markið, mugu vera tøkt fyri SSH-íverksetingini.
Tá fremur phpseclib SSH-útbýtið og byrjar SFTP á somu streymi. Tólið kann brúka vanligar SFTP-virksemdir sínar. Konstruktørflatan forðar einum undirflokki av tólinum, sum skuldi skift út innanhýsis socket-økir.