Blog (ang. web log dziennik sieciowy) — rodzaj strony internetowej zawierającej określoną liczbę odrębnych, samodzielnych, uporządkowanych chronologicznie wpisów, których twórcą jest właściciel bloga. Blogi umożliwiają zazwyczaj archiwizację oraz kategoryzowanie wpisów, a także komentowanie wpisów przez czytelników danego bloga. Ogół blogów traktowany jako medium komunikacyjne nosi nazwę blogosfery. [źródło: wikipedia]

Insert GT - dostęp do bazy mssql przez internet.

W chwili obecnej większość małych i średnich przedsiębiorstw jako system obsługi sprzedaży i księgowości używa programów ze stajni Insert. Rozwijany obecnie pakiet GT, w którego skład wchodzi między innymi Subiekt GT, jest oparty o bazę danych SQL firmy Microsoft. Z pewnością ma to swoje dobre strony, jednak w przypadku obsługiwanej przeze mnie firmy bardziej utrudnia to sprawę. Przede wszystkim mssql nie zainstaluję na Linuksie. Także Subiekt w tej kwestii odmawia współpracy. O ile w stopniu zadowalającym pakiet działa w sieci lokalnej o tyle zwiększenie zasięgu już jest pewnym utrudnieniem.

Sytuacja wygląda tak:
serwer za firewallem z zewnętrznym numerem ip - Windows XP, Ms Sql 2005. Dostawca internetu blokuje większość portów. Internet radiowy.

komputer, z którego ma być nawiązane połączenie z serwerem ma podobne parametry i połączenie internetowe.

Istneje płaty sposób na połączenie za pośredcnictwem TeamViewer'a jednak nie wydaje mi się zbyt opłacalnym.

Dlatego zdecydowałem się na moje ulubione ssh.
Na serwerze zainstalowałem Cygwin z serwerem ssh. Połączenie będzie oparte na tunelu portu, na którym nasłuchuje serwer mssql za pośrednictwem ssh. Teraz trzeba sprawdzić jaki to port. Domyślne mmssql nasłuchuje na porcie 1433, jednak w tym przypadku potrzebny jest port bezpośrednio bazy danych (domyślnie INSERTGT). W tym celu otwieram narzędzie do administracji mssql "SQL Server Configuration Manager.



W zakładce "Protocols for INSERTGT" wybieram TCP/IP.



Następnie kartę IP Addresses:



Widoczny w TCP Dynamic Ports numer jest szukanym portem - w tym przypadku 1642. To jest koniec konfiguracji serwera.

Po stronie klienta. Otwieram "Panel sterowania/Narzędzia administracyjne/Źródła danych (ODBC)" - w zależności od wersji Windowsa nazewnictwo może się zmieniać.



Dodaję nowe DSN użytkownika, z listy sterowników wybieram SQL Server:



Nazywam serwer i podaję numer ip: 127.0.0.1:



Następnie podaję parametry do połączenia z serwerem: uśytkownik sa, hasło puste. W konfiguracji klienta podaję numer portu: 1642



Resztę pozostawiam bez zmian.

Czas na utworzenie tunelu ssh. Poleceniem
ssh -l uzytkiwnik -L 1642:localhost:1642 adres_serwera
. Jeśli wszystko przebiegnie pomyślnie mogę przejść do ostatniego kroku.

Podczas uruchamiania subiekta jako adres serwera podaję 127.0.0.1, użytkownika sa, hasło pozostawiam puste:



Jeśli połączenie z serwerem zostało nawiązane - wszystko skonfigurowane poprawnie.

X11 przez SSH

Opcja ta nie ma raczej racji bytu w przypadku połączenia internetowego. Może być jednak bardzo ciekawym rozwiązaniem dla sieci lokalnej.
W skrócie: cała operacja polega na wyświetlaniu uruchomionych programów, działających na jednym komputerze - na monitorze drugiego.

Pierwszy komputer musi pracować w systemie LINUX i mieć zainstalowany serwer SSH.

Komputer drugi może działać na LINUX lub dowolnym systemie na którym można zainstalować serwer X11 (Windows, MacOS X), a także mieć zainstalowany klient SSH (np Putty).

W systemie LINUX
ForwardX11 wywołuje się poleceniem:
ssh -l uzytkownik -X adres_serwera
Po poprawnym zalogowaniu się na komputer pierwszy można wywołać poleceniem jakąkolwiek aplikację, która następnie zostanie wyświetlona na pulpicie komputera drugiego np
xclock &
co da taki efekt:


W systemie Windows
zainstalowanym na komputerze drugim sprawa jest nieco bardziej skomplikowane, bo wymaga instalacji serwera X11.

Stąd można pobrać pliki instalacyjne.

Po zainstalowaniu serwer X11 może być uruchomiony na cztery sposoby: jako niezależne okienka po kontrolą systemu windows, jako pulpit wewnątrz okna kontrolowanego przez windows, jako pulpit wewnątrz okna nieruchomego i jako pełen ekran.

Konfiguracja pulpitu:


Jeśli serwer X11 jest uruchomiony, poleceniem:
putty.exe -X adres_serwera

nawiązujemy połączenie SSH z komputerem pierwszym z wykożystaniem ForwardX11.

W przypadku, kiedy wybraliśmy X11 wyświetlany jako niezależne okienka, programy uruchomione z wiersza poleceń putty są w pełni kontrolowane przez system Windows, można je maksymalizować, minimalizować.

Serwer X11 zintegrowany z pulpitem Windows:


Yast i Gedit kontrolowane przez menadżera okien Windows:


Jeśli chodzi o pozostałe tryby wyświetlania X11, pierwszym moim poleceniem po zalogowaniu się na komputerze zdalnym jest uruchomienie menedżera okien np:
metacity & lub blackbox &
Ponieważ połączenie ma (w omawianym przypadku) miejsce w sieci lokalnej, ciekawym pomysłem jest uruchomienie nie tylko menedżera okien, ale także całego środowiska graficznego np GNOME lub XFCE. Można to zrobić poleceniem:
gnome lub xfce-session

Serwer X11 działający w oknie bez uruchomionych aplikacji:


Sesja Gnome w ramach Windows:


Po co ta zabawa?

Zastosowań znalazłoby się kilka. Między innymi biurowe: tam gdzie stanowiska powoli zaczynają się starzeć a zakup kilku nowych jest zbyt dużym wydatkiem można zainwestować w jeden stabilny serwer. Umożliwi to pracę za pomocą przestarzałych komputerów działających pod systemem Windows, na nowych programach zainstalowanych na serwerze.

Administracja Klientem Torrent (i nie tylko) przez ssh:webui

Niemal każdy klient sieci torrent w tym momencie ma coś co można nazwać webui, czyli interface'm programu w postaci strony internetowej. Jest to bardzo wygodny sposób na dodawanie i monitorowanie ruchu na zdalnym komputerze. Ma jednak poważną wadę: żeby korzystać z tego interface musimy odblokować odpowiednie porty firewalla i dostęp (co prawda chroniony hasłem... ale...) do niego mają wszyscy użytkownicy sieci. Rozwiązaniem po raz kolejny jest tunel ssh.

Komputer zdalny musi mieć zainstalowany serwer ssh i skonfigurowany interface internetwy klienta torrent. Przykładowo Deluge. Po uaktywnieniu za pomocą odpowiedniej wtyczki (plugin) można korzystać z interface przez port 8112. Dobrze jest dodatkowo zablokować taki port na firewallu.

Sesję SSH z tunelem na porcie 8112 inicjuje się poleceniem:
ssh -l uzytkownik -L 8112:localhost:8112 adres_zdalny
Następnie można otworzyć webui wpisując localhost:8112 w pasku adresu przeglądarki internetowej