Anna SSH:n käyttää paikallista SOCKS-kuuntelijaa, kun se on saatavilla
Rajaa OpenSSH:n Match exec -tarkistus yhteen kohteeseen ja ymmärrä, mitä onnistunut paikallisen portin kokeilu todistaa ja mitä ei.
Paikallinen SOCKS-kuuntelija on hyödyllinen joissakin verkoissa ja puuttuu toisista. OpenSSH voi valita välityspalvelinkomennon ehdollisesti tekemättä valinnasta kaikkiin isäntiin vaikuttavaa.
OpenSSH:lle OpenBSD-muotoisen nc kanssa havainnollistava asiakasasetus on:
Host work-server
HostName ssh.example.net
User alex
Match originalhost work-server exec "nc -z -w 1 127.0.0.1 1080"
ProxyCommand nc -X 5 -x 127.0.0.1:1080 %h %p
Match all
originalhost rajaa tarkistuksen SSH-komentorivillä annettuun nimeen. exec täsmää, kun sen komento päättyy onnistuneesti. Lopullinen Match all päättää tämän ehdollisen alueen seuraaville asetuksille.
Tämä olettaa, ettei mikään aiempi soveltuva asetus ole jo valinnut ristiriitaista välityspalvelinkomentoa tai hyppyreittiä. SSH käyttää yleensä asetuksen ensimmäistä saatua arvoa, joten ylhäällä oleva laaja oletus voi estää myöhempää ehtoa vaikuttamasta odotetusti.
Kuunteleva socket on vaatimaton lupaus
Kokeilu testaa TCP-yhteyden paikalliseen porttiin. Se ei suorita SOCKS-neuvottelua loppuun, ei muodosta haluttua kohdeyhteyttä eikä todista, mikä ohjelma portin omistaa. Kuuntelija voi myös kadota tarkistuksen jälkeen.
Aikakatkaisu pitää epäonnistuneen kokeilun rajattuna. Näytetyt valitsimet kuuluvat OpenBSD:n nc-rajapintaan; muut samannimiset ohjelmat voivat tarjota eri valitsimia.
Kun ehto ei täsmää, tämä esimerkki jättää yhteyden ilman tätä ProxyCommandia ja sallii sen tavallisen reitin. Se on tarkoituksenmukaista vain, kun suora käyttö on sallittua. Pakollisen välityspalvelinkäytännön ei pitäisi käyttää saatavuustarkistusta lupana poiketa toiselle reitille.
Kohteen SSH-isäntänimi ja isäntäavaimen tarkistukset tunnistavat edelleen kohdepalvelimen. Kuljetusapurin valitseminen ei ole syy hyväksyä odottamatonta isäntäavainta.