Takéto niečo samozrejme má zmysel iba pre osobnú potrebu ako napr. možnosť pripojiť sa na svoj domáci server cez SSH či prístup k niektorým svojim súborom cez webserver. Na také niečo potrebujeme ssh klienta a nejaký verejný server (počítač s verejnou IP a OpenSSH serverom) na ktorom máme shell konto (samozrejme prístupné cez SSH :)) a pokiaľ možno poznáme administrátora :).
Na použitie v skripte je nutné si vygenerovať kľúč. Z bezpečnostných dôvodov je lepšie vygenerovať nový kľúč aj v prípade, že sa už nejaký na autorizáciu používa. Kľúč sa generuje programom ssh-keygen (viac informácií v manuáli alebo google, dodáva sa v balíku spolu s SSH klientom).
Vytvorenie tunelu je jednoduché:
ssh -R *:2222:127.0.0.1:22 -f -g -n -N user@server.tld -o PreferredAuthentications=publickey
Tento príkaz spôsobí, že sa všetky požiadavky na port 2222 verejného serveru presmerujú na port 22 nášho serveru (22 býva obyčajne SSH daemon). user@server.tld je náš obyčajný login do shell konta. Nie všetky parametre sú nutné, takto to používam ja. Pre podrobnejšie informácie odporúčam konzultovať manuál (man ssh).
Ešte je vhodné na serveri nastaviť v /etc/ssh/sshd_config:
GatewayPorts yes
Vysvetlenie priamo z manuálu (sshd_config(5)):
GatewayPorts
Specifies whether remote hosts are allowed to connect to ports
forwarded for the client. By default, sshd binds remote port
forwardings to the loopback address. This prevents other remote
hosts from connecting to forwarded ports. GatewayPorts can be
used to specify that sshd should allow remote port forwardings to
bind to non-loopback addresses, thus allowing other hosts to con‐
nect. The argument may be “no” to force remote port forwardings
to be available to the local host only, “yes” to force remote
port forwardings to bind to the wildcard address, or
“clientspecified” to allow the client to select the address to
which the forwarding is bound. The default is “no”.
Jednoducho by sa na ten port bolo možné dostať iba z toho serveru. Keďže už tam máme shell konto, tak by nemal byť problem tam pristupovať cez neho, ale takto je to pohodlnejšie a prístupnejšie. Po zmene tohoto nastavenia je potrebné SSH daemon reštartovať.
Nakoniec len dodám, že takéto niečo sa dá spraviť aj cez server, na ktorom beží Windows pomocou CopSSH (samostatná inštalácia Cygwin OpenSSH) alebo samotného Cygwin v ktorom sa OpenSSH dá nainštalovať.
V Greenie knižnici bola vydaná prvá kniha, ktorá je vytvorená z väčšiny umelou inteligenciou. Pokrýva udalosti Druhej svetovej vojny, vrátane rôznych doplnkových tém. Kniha je v angličtine.