<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JakiLinux &#187; pazkooda</title>
	<atom:link href="http://jakilinux.org/author/pazkooda/feed/" rel="self" type="application/rss+xml" />
	<link>http://jakilinux.org</link>
	<description>GNU/Linux dla każdego: newsy, artykuły, porównania dystrybucji</description>
	<lastBuildDate>Mon, 30 Jan 2012 10:10:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Sztuczki z SSH [2] &#8211; Tunele</title>
		<link>http://jakilinux.org/aplikacje/sztuczki-z-ssh-2-tunele/</link>
		<comments>http://jakilinux.org/aplikacje/sztuczki-z-ssh-2-tunele/#comments</comments>
		<pubDate>Mon, 20 Feb 2006 14:12:18 +0000</pubDate>
		<dc:creator>pazkooda</dc:creator>
				<category><![CDATA[Aplikacje]]></category>
		<category><![CDATA[Konsola]]></category>

		<guid isPermaLink="false">http://jakilinux.org/?p=155</guid>
		<description><![CDATA[Zachęcony <a href="http://jakilinux.org/aplikacje/sztuczki-z-SSH/">ciekawymi spostrzeżeniami</a> <i>michuka</i>, na temat wykorzystania <i>SSH</i> w bardziej niecodzienny sposób, postanowiłem podzielić się swoimi doświadczeniami dotyczącymi tworzenia tuneli przy użyciu SSH.]]></description>
			<content:encoded><![CDATA[<h4>&#8230;czyli robimy &#8222;dziurę w całym&#8221; za pomocą SSH, &#8222;przeźroczystych skarpetek&#8221; i korkociągu ;)</h4>
<p>Zachęcony <a href="http://jakilinux.org/aplikacje/sztuczki-z-SSH/">ciekawymi spostrzeżeniami</a> <i>michuka</i>, na temat wykorzystania <i>SSH</i> w bardziej niecodzienny sposób, postanowiłem podzielić się swoimi doświadczeniami z tym popularnym narzędziem pracy zdalnej (wspomaganym &#8222;przyjaciółmi&#8221; z podtytułu ;)). Artykuł ten będzie miał jednak nieco inny charakter. Zainteresuje on pewnie on nieco bardziej doświadczonych, ale i początkujący może zyskać kilka cennych informacji.</p>
<p>To co zamierzam przedstawić na pewno nie należy do podstaw obsługi Linuksa, ale mam nadzieję pokaże jego siłę w dziedzinie pracy w sieci. Nie sądzę abyśmy skorzystali z tej wiedzy w domu, ale może się okazać, że w innych życiowych sytuacjach może być ona bardzo wartościowa. Zdaję sobie też sprawę z tego, iż większość opisanych tu rzeczy da się powielić pod Windowsem, jednak trzeba tam więcej się napracować, żeby uzyskać porównywalny efekt. Poza tym jesteśmy wortalem o Linuksie i na innych systemach nie znamy się za dobrze :P.</p>
<p>Dla nieco bardziej zorientowanych informacja: <u>nie</u> będzie to artykuł o zabezpieczaniu nieszyfrowanych protokołów przy pomocy <i>SSH</i>.</p>
<h3>Cel</h3>
<p>Bierzmy się do rzeczy. Moim zadaniem będzie pokazać jak przy pomocy <i>SSH</i> &#8222;usprawnić&#8221; swoją pracę w zabezpieczonej sieci korporacyjnej (np. w firmie). Pod pojęciem &#8222;usprawnić&#8221; rozumiem <u>efektywne</u> metody zniwelowania ograniczeń nałożonych na nas przez administratora. Rozpoczniemy od obejścia prostych zabezpieczeń w prosty sposób, a skończymy na &#8222;dokuczaniu&#8221; nawet dość wykwalifikowanemu administratorowi bardziej wyrafinowanymi metodami.</p>
<h3>Przygotowania</h3>
<p>Do wykonania tego typu zadania będą potrzebne dwa komputery, wiedza z <a href="http://jakilinux.org/aplikacje/sztuczki-z-SSH/">artykułu</a> <i>michuka</i> i stały, publiczny IP (szczegóły za chwilę). Żeby nie było niejasności wprowadzimy jednoznaczne nazewnictwo. Komputer będący w zabezpieczonej sieci w pracy (ten, który &#8222;usprawniamy&#8221;) będzie nazywał się <code>KOMP_LOKALNY</code>. Drugi, pomocniczy komputer znajdujący się na zewnątrz chronionej sieci, np. u nas w domu, nazwiemy <code>KOMP_ZDALNY</code>. Załóżmy jeszcze, że jest na nim założony użytkownik <code>user</code>. Na <code>KOMP_ZDALNY</code>, o stałym, publicznym IP, instalujemy serwer <i>SSH</i> (kontynuując rozważania <i>michuka</i> w systemie &#8222;debianopodobnym&#8221;) poleceniem (jako <i>root</i> lub przez <code>sudo</code>):</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>KOMP_ZDALNY:~# aptitude install openssh-server
</code></pre>
<p>Po instalacji powinien on sam się uruchomić. Jeżeli ktoś blokuje na firewallu port 22 powinien go odblokować. Zapamiętujemy również nasz numer IP (nazwiemy go <code>NUMER_IP</code>; możemy znaleźć go w wyniku wydania polecenia <code>/sbin/ifconfig</code>).</p>
<h3>Metoda</h3>
<p>Teraz idziemy do pracy (zostawiając <code>KOMP_ZDALNY</code> uruchomiony i podłączony do sieci) i badamy zabezpieczenia. Brzmi poważnie, ale to tylko pozór (nie zamierzam tu rozpisywać się na temat narzędzi do badania sieci). Po prostu będziemy dokonywać prób połączenia. Zależnie od poziomu zabezpieczeń uda nam się lub nie.</p>
<p>Wraz w biegiem artykułu będziemy rozważali coraz to trudniejsze przypadki. Na początku założymy, że administrator nie ogranicza nam połączeń <i>SSH</i>, ale jeżeli chodzi np. o e-mail to możemy odbierać tylko pocztę służbową (z służbowego serwera). Oznacza to tyle, że porty 25 i 110 (POP i SMTP) są otwarte tylko na sieć lokalną. A co jeżeli chcielibyśmy odbierać pocztę z zewnętrznego serwera (<code>POP_ZEWN_POCZTA</code>) lub z niego wysyłać (<code>SMTP_ZEWN_POCZTA</code>). Tu z pomocą przyjdą nam tunele. Łącząc się przez <i>SSH</i> z naszym <code>KOMP_ZDALNY</code> możemy podać parametr, który nam to umożliwi. Mała dygresja &#8211; jeżeli na <code>KOMP_LOKALNY</code> chcemy posługiwać się nazwą <code>KOMP_ZDALNY</code> możemy dokonać wpisu w <code>/etc/hosts</code> w postaci:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>NUMER_IP KOMP_ZDALNY</code></pre>
<p>Często nie mamy jednak takiej możliwości więc będziemy posługiwać się <code>NUMER_IP</code>. Nasz tunel (jako <code>pracownik</code> na <code>KOMP_LOKALNY</code>) zbudujemy w następujący sposób (metodę jak będziemy się logować opanowaliśmy już na podstawie artykułu <i>michuka</i>):</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh user@NUMER_IP
-L 10025:POP_ZEWN_POCZTA:25 -L 10110:SMTP_ZEWN_POCZTA:110</code>
</pre>
<p>Spróbujmy to rozszyfrować. Parametr <code>-L</code> można odczytać jako &#8222;<em>nasłuchuj na lokalnym komputerze</em>&#8222;. Po spacji podajemy port, na którym <i>SSH</i> ma nasłuchiwać (tu: 10025 i 10110 &#8211; są to porty przykładowe, zawsze możemy wybrać inne, tyle tylko, że aby tunelować porty o numerach &lt; 1024 musimy to robić jako <i>root</i>). Po pierwszym dwukropku podajemy, gdzie <code>KOMP_ZDALNY</code> ma przekazać połączenie, a po następnym &#8211; na którym porcie docelowy serwer/komputer oczekuje na nasze połączenie. Podkreślam, że po pierwszym dwukropku podajemy adres <strong>względem <code>KOMP_ZDALNY</code></strong>. Jeżeli chcielibyśmy połączyć się tunelem z portem 25 na <code>KOMP_ZDALNY</code> (a nie gdzieś dalej) to powinniśmy skorzystać z polecenia:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh user@NUMER_IP
-L 10025:localhost:25</code></pre>
<p>a to dlatego, że <code>KOMP_ZDALNY</code> względem siebie jest samym sobą ;) (czyli technicznie jest dla siebie <code>localhost'em</code>).</p>
<p>Wracając jednak do naszych tuneli do serwerów poczty zewnętrznej. Możemy teraz tak skonfigurować program pocztowym, żeby łączył się on ze światem zewnętrznym. Z naszych wcześniejszych rozważań wiemy, że nasz  <code>KOMP_LOKALNY</code> nasłuchujący na porcie 10025 jest obecnie &#8222;serwerem <code>POP_ZEWN_POCZTA</code> nasłuchującym na na porcie 25&#8243; (analogicznie dla portu 10110). Teraz przy konfiguracji konta pocztowego na <code>KOMP_LOKALNY</code> jako serwer poczty przychodzącej możemy ustawić: <code>localhost</code> a port na <code>10025</code> &#8211; o resztę zadba tunel <i>SSH</i> (oczywiście <code>localhost</code> wpisany na <code>KOMP_LOKALNY</code> będzie wskazywał na niego samego). Analogicznie dla poczty wychodzącej jako serwer ustawiamy <code>localhost</code> i port na <code>10110</code></p>
<p>W ten to prosty sposób obeszliśmy stosunkowo mało skomplikowane zabezpieczenia, ale nasz administrator też z czasem się uczy więc&#8230;</p>
<h3>Rozkręcamy się</h3>
<p>Teraz sytuacja się zmienia. Okazuje się, że ktoś w pracy za dużo szalał po WWW i został ograniczony ruch do niezbędnego według szefa minimum (na razie nie wnikamy w jaki sposób). Stale mamy otwarty port 22, ale ten od WWW tj. 80-ty został mocno &#8222;obcięty&#8221;.<br />
My, znając już sposób na tunelowanie, szybciutko wpadamy na pomysł jak tu dostać się na <i>www.google.pl</i> (bo też nam je zablokowano). Logujemy się na <code>KOMP_ZDALNY</code>:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh user@NUMER_IP
-L 10080:www.google.pl:80</code></pre>
<p>Teraz kilkoma kliknięciami ustawiamy np. w <i>Firefoksie</i> w <i>Ustawieniach połączenia -&gt; Ręczna konfiguracja serwerów proxy</i> serwer HTTP proxy na <code>localhost</code> i port na <code>10080</code>. Jeżeli były tam już jakieś wpisy, wprowadzone prawdopodobnie przez administratora, warto je zanotować, mogą przydać się nam później (ja zakładam, że miałem i zapisuję je pod <code>PROXY_SRV</code> i <code>PROXY_PORT</code>). Teraz już możemy wpisać w pasek adresu <i>www.google.pl</i> i gotowe. Ale, ale&#8230; powstrzymajmy swą radość &#8211; a to czemu? Przy wpisaniu <i>www.netsprint.pl</i> co uzyskujemy? Na pasku adresu wpis <i>www.netsprint.pl</i>, a w oknie przeglądarki znów Google. No tak, skoro przekierowujemy <code>localhost:10080</code> na <i>www.google.pl</i> to czego mogliśmy się spodziewać.</p>
<p>Aby skorzystać z <i>www.netsprint.pl</i> musielibyśmy przerwać poprzednie połączenie <i>SSH</i> i nawiązać nowe przez:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh user@NUMER_IP
-L 10080:www.netsprint.pl:80</code></pre>
<p>Taki sposób korzystania z WWW wydaje się jednak bezsensowny.</p>
<h4>SSH jako proxy</h4>
<p>W takiej sytuacji zaglądamy do podręcznika <i>SSH</i> i znajdujemy parametr <code>-D</code>. Okazuje się, że przy jego pomocy możemy z <i>SSH</i> zrobić (specyficzny) serwer pośredniczący (serwer proxy). Będzie to (pseudo)serwer typu <i>SOCKS</i> (nie wnikajmy na razie jak to działa, zapamiętajmy nazwę). Podczas łączenia się z <code>KOMP_ZDALNY</code> wpiszemy:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh user@NUMER_IP -D 8080</code></pre>
<p>Teraz <i>SSH</i> słucha na 8080-tym porcie naszego komputera. Zaglądamy ponownie do <i>Ustawień połączenia</i> w <i>Firefoksie</i>, usuwamy wcześniejszy wpis w HTTP proxy i spoglądamy poniżej. Jest tam pole na <i>Host SOCKS</i> (ewentualnie <i>Serwer SOCKS</i>). To tu wpisujemy <code>localhost</code>, a w port <code>8080</code> (typ serwera SOCKS ustawiamy na <code>5</code>). Co uzyskujemy &#8211; otóż teraz <i>SSH</i> wychwyci wszystko na tymże porcie i <u>dynamicznie</u> otworzy tunel (przez <code>KOMP_ZDALNY</code>) do miejsca docelowego wpisanego np. w pasku adresu Firefoksa. I znów możemy &#8222;szaleć&#8221; po całej sieci WWW.</p>
<h4>Zakładamy &#8222;przeźroczyste skarpetki&#8221;</h4>
<p>Jest tylko jeden mały problem i sądzę, że pierwsi zgłosiliby go użytkownicy przeglądarki <i>Opera</i>. A to dlatego, że <i>Opera</i> obecnie serwerów SOCKS nie obsługuje (sam używam <i>Opery</i> i fakt ten też mnie dziwi). I tu przychodzi pierwszy z przyjaciół <i>SSH</i> tj. <a href="http://tsocks.sourceforge.net/" title="Transparent SOCKS" class="extlink">tsocks</a> (skrót z ang.: transparent SOCKS &#8211; czyli nasze tytułowe &#8222;przeźroczyste skarpetki&#8221;). Nie będziemy wnikać w szczegóły funkcjonowania samych serwerów typu <i>SOCKS</i>, z których to <i>tsocks</i> korzysta &#8211; skoncentrujemy się na wykorzystaniu go do już utworzonego proxy na bazie <i>SSH</i>. Będą nam potrzebne do tego uprawnienia <i>root&#8217;a</i> na <code>KOMP_LOKALNY</code> (a tych niestety nie zawsze mamy). Ale do rzeczy.</p>
<p>Instalujemy <i>tsocks</i> (znów na bazie Debiana):</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>KOMP_LOKALNY:~# aptitude install tsocks</code></pre>
<p>Zakładając, że <i>SSH</i> dalej nasłuchuje jako proxy na porcie 8080 wykonujemy następujące kroki:</p>
<ul>
<li>edytujemy plik konfiguracyjny <code>/etc/tsocks.conf</code>,</li>
<li>znajdujemy parametr <code>local</code> i wpisujemy tam naszą sieć lokalną (można wprowadzić kilka wartości tego parametru), np.
<div>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>local = 192.168.0.*
local = 10.0.0.0/255.255.255.0</code></pre>
</div>
</li>
<li>jeżeli chcemy możemy budować określone ścieżki połączeń &#8211; parametr <code>path</code>; my nie będziemy się tym zajmować,</li>
<li>teraz najważniejsze: parametr <code>server</code> i <code>server_port</code> ustawiamy na nasz serwer proxy tj. na nasz komputer; będzie to wyglądało następująco:
<div>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>server = localhost
server_port = 8080</code></pre>
</div>
</li>
<li>należy też ustawić typ serwera SOCKS (do wyboru między 4 a 5); nie wnikając znów w szczegóły wybieramy <code>server_type = 5</code>.</li>
</ul>
<p>Nadeszła pora &#8222;nałożyć te skarpetki&#8221; (można już jako użytkownik). W linii poleceń wpiszmy:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ tsocks opera</code></pre>
<p>Teraz <i>tsocks</i> uruchomi <i>Operę</i>, ale będzie przechwytywał wszystkie jej zapytania wysyłane do sieci i natychmiast przekazywał do serwera SOCKS (z wyjątkiem zapytań do sieci lokalnej zdefiniowanej przez parametr <code>local</code>). Nasz serwer proxy (czyli <i>SSH</i>) pośle to zapytanie dalej do <code>KOMP_ZDALNY</code>. W ostatecznym rozrachunku otrzymamy przeglądarkę w takim środowisku, jakie istnieje na <code>KOMP_ZDALNY</code>. Nie będzie ona wrażliwa na wszelkie ograniczenia założone w lokalnej sieci. Dlatego też powinna być ona skonfigurowana tak, jakbyśmy ją uruchamiali na <code>KOMP_ZDALNY</code> &#8211; jeżeli tam jesteśmy połączeni bezpośrednio to i w ustawieniach przeglądarki powinniśmy nastawić <i>Bezpośrednie połączenie</i>. Całą robotę wykona za nas tandem <i>tsocks</i>+<i>SSH</i>. Podobnie możemy postąpić z dowolnym programem komunikującym się z siecią &#8211; wystarczy go uruchamiać poleceniem: <code>tsocks nazwa_programu</code>.</p>
<p>W ten to sposób poznaliśmy dobrego przyjaciela <i>SSH</i>, a teraz &#8230;</p>
<h3>Zaczynają się schody</h3>
<p>&#8230;bo administrator zablokował port 22 w naszej sieci i nie możemy nim wyjść na świat. No cóż, trzeba będzie dostosować się do nowych warunków. Założymy teraz, że nie są zablokowane połączenia z bezpiecznymi stronami WWW tj. wykorzystującymi protokół HTTPS (zazwyczaj ma to miejsce). Odpowiadający mu port to 443. Wracamy do domu (bo zdalnie już nie możemy z pracy tego wykonać) i jako <i>root</i> edytujemy plik <code>/etc/ssh/sshd_config</code>. Szukamy linii z wpisem <code>Port 22</code> i wpisujemy poniżej:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>Port 443</code></pre>
<p>Pozostaje jeszcze zrestartować serwer <i>SSH</i>, aby nasłuchiwał na nowym porcie. Wydajemy w tym celu komendę:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>KOMP_ZDALNY:~# /etc/init.d/ssh restart</code></pre>
<p>Siedząc ponownie przy <code>KOMP_LOKALNY</code> w pracy przy połączeniu przez <i>SSH</i> dopisujemy parametr <code>-p 443</code>. Całe polecenie będzie wyglądało przykładowo:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh -p 443 user@KOMP_ZDALNY -D 8080
-L 10025:pop.o2.pl:25 -L 10110:smtp.o2.pl:110</code></pre>
<p>i znów cieszymy się wolnością.</p>
<h3>Wyższa szkoła jazdy</h3>
<h4>czyli wino czas otworzyć &#8211; korkociągiem naturalnie.</h4>
<p>Teraz to już administrator się zdenerwował. Koniec tego dobrego. HTTPS blokować całkowicie nie może bo się w pracy przydaje, ale może postawić własny serwer proxy HTTP i tylko do niego otworzyć ruch na porcie np. 3128 (naturalnie ruch na zewnątrz po 3128 jest zablokowany). Teraz mogą przydać się nam nasze wcześniejsze dane <code>PROXY_SRV</code> i <code>PROXY_PORT</code>, gdyż wskazywały one na proxy ustawione przez administratora. W naszych rozważaniach <code>PROXY_PORT</code> jest równy 3128. Tak czy owak musimy jakoś odnaleźć te dane, aby móc dalej pracować. Ale czy mając nawet te dane jesteśmy w stanie coś na to poradzić? Po przeszukaniu repozytorium np. poleceniem</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ apt-cache search proxy ssh tunnel</code></pre>
<p>wśród wyników otrzymamy między innymi <a href="http://www.agroman.net/corkscrew/" title="Program do budowania tuneli przez serwery proxy" class="extlink">corkscrew</a> (z ang.: korkociąg). Szybka instalacja:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>KOMP_LOKALNY:~# aptitude install corkscrew</code></pre>
<p>Krótki wgląd do podręcznika pokazuje nam jak prosto ten program skonfigurować. Aby <i>SSH</i> &#8222;przeskakiwało&#8221; przez serwer proxy powinniśmy skorzystać z takiego portu, jaki ten serwer przepuszcza bezpośrednio. Wszelkie połączenia szyfrowane, ze swej natury, nie mogą być przetworzone przez żaden program w swej drodze do miejsca docelowego, w tym i proxy, dlatego znów odwołamy się do bezpiecznego HTTPS (a co za tym idzie do portu 443). Aby &#8222;zaprząc&#8221; <i>SSH</i> do korzystania z proxy w pliku konfiguracyjnym użytkownika <code>~/.ssh/config</code> dodajemy następujący wpis:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>Host NUMER_IP
   ProtocolKeepAlives 30
   ProxyCommand /usr/bin/corkscrew PROXY_SRV PROXY_PORT \\
NUMER_IP 443</code></pre>
<p>Przy takich ustawieniach znów powinniśmy móc połączyć się z naszym <code>KOMP_ZDALNY</code> o numerze IP <code>NUMER_IP</code> poleceniem:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh -p 443 user@NUMER_IP</code></pre>
<p>Naturalnie wszystkie przełączniki typu <code>-L</code> czy też <code>-D</code> nie tracą ważności, nawet przy tak zawiłym połączeniu. W ten to sposób <i>corkscrew</i> dołącza do dobrych przyjaciół <i>SSH</i>. No i znów cieszymy się wolnością, ale&#8230;</p>
<h3>itd., itd.</h3>
<p>Można by tak dalej i dalej. Profesjonalny administrator i na to znajdzie sposób. Jedna prawda pozostaje jednak oczywista: <strong>jeżeli tylko istnieje jakakolwiek &#8222;dziurka&#8221; w zabezpieczonej sieci, to tak naprawdę otwiera nam ona okno na cały świat</strong>. My rozważyliśmy tylko przypadek z protokołem HTTPS i serwerem proxy HTTP. Dla serwerów proxy typu SOCKS można zastosować np. <a href="http://proxychains.sourceforge.net/" title="Służy do tunelowania połączeń przez serwery proxy HTTP i SOCKS" class="extlink">proxychains</a>. Można zapewne wykorzystać i inne protokoły, lecz to już kwestia środowiska sieciowego, w którym pracujemy.</p>
<h3>Post Scriptum</h3>
<ul>
<li>warto jest przy pracy z <i>SSH</i> korzystać z parametru <code>-C</code> odpowiedzialnego za kompresję &#8222;w locie&#8221; transmitowanych danych, szczególnie w wersji z pośrednictwem <i>corkscrew</i>,</li>
<li>nie wspominałem o tunelach &#8222;odwrotnych&#8221; (parametr <code>-R</code>), mających równie ciekawe zastosowania,</li>
<li>w artykule tym brak jest innej, możliwej wersji połączenia przydatnej, gdy nie mamy uprawnień <i>root&#8217;a</i> na <code>KOMP_LOKALNY</code> &#8211; zainstalowany serwer proxy HTTP na <code>KOMP_ZDALNY</code>,</li>
<li>jak pisałem na wstępie: nie zajmowałem się zabezpieczaniem nieszyfrowanych protokołów sieciowych, należy jednak pamiętać, że jest to chyba jedna z częściej wykorzystywanych funkcji <i>SSH</i>,</li>
<li>w związku z powyższymi liczę, że znajdzie się ochotnik do zaprezentowania powyższych problemów w następnej części <i>Sztuczek z SSH</i> (i może jeszcze czegoś więcej).</li>
</ul>
<p>
<strong>Aktualizacja:</strong> Errata<br />
Jak słusznie <a href="http://jakilinux.org/aplikacje/sztuczki-z-ssh-2-tunele/#comment-1639">zauważył <i>owca</i></a> w tekst wkradł się błąd. Port POP to 110 a SMTP &#8211; 25. Stosowne polecenie powinno wyglądać tak:</p>
<pre style="border:dotted 1px #ff9900; padding:5px;"><code>pracownik@KOMP_LOKALNY:~$ ssh user@NUMER_IP \\
-L 10110:POP_ZEWN_POCZTA:110 -L 10025:SMTP_ZEWN_POCZTA:25</code>
</pre>
<p>W kliencie poczty naturalnie przy serwerze POP ustawiamy <code>localhost:10110</code> a przy SMTP &#8211; <code>localhost:10025</code>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jakilinux.org/aplikacje/sztuczki-z-ssh-2-tunele/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
	</channel>
</rss>

