28 stycznia 2010

OSNews.pl: INSERT INTO ‘Oracle’ SELECT * FROM ‘Sun’; COMMIT

Firma Oracle stała się producentem systemów komputerowych: Sun jest już a wholly owned subsidiary of Oracle Corporation. Na konferencji prasowej p. Larry Ellison i jego pracownicy przedstawili nowy kurs Oracle, miejsce produktów Sun w ofercie giganta z Redwood City i miejsce Sun w nowej strukturze.

Oracle zamierza być jak “IBM z lat 1960, ale otwarte″ i być zdolne do dostarczania kompletnych rozwiązań informatycznych. Co więcej: Oracle dysponując pełną gamą technologii od CPU do aplikacji zamierza projektować te elementy wspólnie aby jak najlepiej ze sobą współpracowały. W dalszym ciągu jednak Oracle pozostanie przy otwartych standardach i platformach (cokolwiek oznaczałoby to) pozwalając n.p. uruchamiać swoje oprogramowanie na sprzęcie konkurencji, tj. HP i IBM. Zgodnie ze wcześniejszymi zapowiedziami Oracle zamierza kontynuować rozwój praktycznie wszystkich obecnych produktów Sun Microsystems.

Przyszłość sprzętu Sun

P. Ellison wyraził wiarę, że klienci, którzy zwątpili w Sun w ostatnich miesiącach dostrzegą, że Oracle te rozwiązania rozwija, i ponownie zaczną w te technologie inwestować.  Oracle wyraziło zainteresowanie kontynuowaniem rozwoju zarówno sprzętu high end (SPARC) jak i x86 i potwierdził ustami swojego wiceprezesa ds. mikroelektroniki Mike’a Splaina, że systemy z UltraSPARC T3 będą dostępne jeszcze w tym roku, a trzy następne generacje już są opracowywane.

Przyszłość oprogramowania Sun

Środowisko operacyjne Solaris 10 zostało nazwane “najlepszym systemem UNIX na świecie” i jego rozwój będzie dla Oracle strategiczny, jednak nie zamierza porzucać systemu operacyjnego Oracle Enterprise Linux (”systemu zgodnego z Red Hat ale lepszego od Red Hat” – Larry Ellison).

Oprogramowanie Glassfish będzie referencyjną implementacją serwera aplikacyjnego Java EE i rekomendowanym produktem dla “taktycznych aplikacji”, podczas gdy WebLogic będzie platformą dla “strategicznych aplikacji przedsiębiorstw”. Oracle zamierza też zwiększyć nakłady na rozwój Javy (języka, w którym pisana jest większość aplikacji Oracle), w tym podnieść wydajność aplikacji desktopowych i polepszyć przenośność aplikacji mobilnych.

Przyszłość Sun

Struktury Sun będą w pełni zintegrowane z Oracle, jednak Oracle przejmie zespoły inżynierów Sun i wbrew zapowiedziom analityków nie planuje kontynuować polityki masowych zwolnień (od zaraz zatrudni 2000 inżynierów i sprzedawców, wiele więcej niż zamierza zwolnić).

  • OSnews – KE wyraziła zgodę
  • notatka prasowa – transakcja sfinalizowana, Oracle kupiło Sun
  • sun.com – strona Sun Microsystems prowadzi do Oracle.com

28 stycznia 2010, 14:08

19 stycznia 2010

Jakub Gromek: Exposé w linuksie.

Minęło trochę czasu od ostatniego postu, ale jakoś nie miałem czasu zrobić update’u… Udało mi się zdobyć trochę czasu, więc postanowiłem coś napisać. Ale do rzeczy.

Ostatnio przesiadłem się na ubuntu (don’t ask…) i miałem potrzebę szybkiego przerzucania się między oknami, oczywiście Alt+Tab jest tu niezastąpiony, ale pomyślałem, że może czas pójść z czasem i rozwinąć się trochę. Przypomniałem sobie, że w Mac OS X’ie jest fajny feature, zwany expose, a skoro jest na maca, to napewno jest jakiś odpowiednik na linuksa :) .

Nie myliłem się, znalazłem – skippy! po zainstalowaniu (ze źródeł, bo paczka o dziwo, wg googla zawsze pochodziła z jednego źrdódła, wiele stron wskazywało ten sam, niedostępny link) odpalam i co? Porażka! Zamiast pokazywać wszystkie okna, skippy pokazuje wszystkie obszary, co w ogóle nie jest przydatne, do tego działa bardzo wolno.

Jest też jakaś aplikacja pod KDE, ale że jakoś qt mnie nie przekonuje, nie testowałem.

Docelowo, użyłem compiza, w Ubuntu compiz jest instalowany i włączany od razu, co dodaje ogłady, stereotypowo szorstkiemu linuksowi. Aby wydobyć expose w compizie, należy skonfigurować plugin:

System > Preferencje > Zaawansowane Efekty > Zarządzanie oknami > “Scale”

System>Preferences>Advanced Desktop Effects Settings>Window Management>Scale

Nie są to dokładne tłumaczenia jak w systemie, bo ja mam ustawiony angielski :P

Żeby włączyć plugin, wystarczy zaznaczyć checkbox i skonfigurować sobie działanie programu, opcje są poniekąd 2 – poprzez przycisk na klawiaturze lub poprzez przesunięcie kursora w ustalone miejsce na ekranie (tak jak w Macu), u mnie ta opcja nazywa się “Initiate Window Picker”.

Po ustawieniu tego można się cieszyć działającym Expose w Ubuntu (czy innej dystrybucji). Polecam, całkiem fajna rzecz, wygląda to mniej więcej jak na obrazku poniżej…

19 stycznia 2010, 21:06

18 stycznia 2010

Jakilinux.org: Przyszłością Linuksa jest Google

Powolny, stopniowy marsz Google w kierunku OS zaczął przynosić rezultaty. Nadszedł czas dla linuksowego świata, by się zebrać. Robert Strohmeyer, PC World.

Wydawało mi się, że to Ubuntu zostało stworzone by wieść linuksowy prym, ale teraz wygląda na to, że Google – nie Canonical – będzie pierwszym realnym konkurentem dla Microsoftu.

Migracja Google w kierunku biznesu związanego z systemami operacyjnymi była na tyle powolna, że wielu obserwatorów ją wręcz zlekceważyło. Gdy firma ogłosiła system pod telefony Android, wywołało to zainteresowanie. Idea Linuksa w telefonie nie była niczym nowym (niezależnie od rozwoju firmy), zatem i nieprzekonującym powodem, by sądzić, że Google mógłby wyrobić sobie znaczący udział w przestrzeni telefonów, gdzie panuje ostra rywalizacja. Lecz teraz gdy Androida można spotkać w dwudziestu telefonach trzymanych w ręku ponad trzech milionów użytkowników na świecie, a 30 nowych urządzeń jest oczekiwanych w nadchodzącym roku wygląda na to, że nowy OS lidera wyszukiwarek staje się siłą, z która trzeba zacząć się liczyć.

Najbardziej zastanawiającą rzeczą dotyczącą sukcesu Google jest to, że został on wybrany nie po to, by walczyć z firmą Microsoft, tam gdzie jest ona najsilniejsza (komputery domowe), lecz tam gdzie jej ubywa. Mimo że Windows Mobile OS jest w pełni rozwiniętym mobilnym OS, Microsoftowi nie udało się zainteresować jego użytkowników, tak jak zrobił to iPhone OS. Jednocześnie firma z Redmond nie stworzyła pomimo swej dominacji w bazach danych poważnej rywalizacji dla urządzeń RIMs i Blackberry wśród użytkowników biznesowych.

Carolina Milanesi, dyrektor ds. badań w zespole urządzeń mobilnych firmy Gartner donosi, że udział Windows Mobile spadł w trzecim kwartale 2009 roku do 7,9%. Światowy lider Symbian także odnotowuje spadek z 49,7% do 44.6%. W tym samym czasie udziały BlackBerry i iPhone wzrosły kolejno do 20,8% i 17,1%. Pomiędzy tymi wahaniami Google Android wyrobił sobie 3,5 % udziału w rynku telefonii komórkowej. Nieźle jak na nowicjusza.

Rynek komputerów domowych, na których z udziałem przekraczającym 92% (dane z badań Net Applications) niemal niepodzielnie rządzi Microsoft to inna historia. W tej dziedzinie wszystkie dystrybucje Linuksa zebrane razem nie przekraczają jednego procenta – bariery która nie została przekroczona od lat pomimo wielkich kroków jakie poczyniono jeśli chodzi o ogólną ich jakość, jak i wsparcie głównych producentów sprzętu PC.

Wygląda na to, że Google efektywnie weszło w biznes OS, celując w gwałtownie rozwijającą się branżę mobilnych rozwiązań i jego wysiłki już zaczynają zbierać plony. Android nie tylko tworzy bazę użytkowników, lecz robi spory szum pośród konsumentów. Nie wydaje się również, by to zainteresowanie miało w najbliższym czasie zaniknąć. Wraz ze znanymi markami produkującymi telefony komórkowe tj. pojawiającymi się informacjami o nowych produktach, pozycja Androida będzie rozwijała się coraz bardziej.

Oto nadchodzi Chrome OS

Teraz Google skupiło się na większych urządzeniach poprzez Chrome OS. Jest to darmowy system operacyjny o otwartym źródle przeznaczony do netbooków z procesorami o architekturze x86 i ARM. Ryzykownym byłoby wysuwać jakieś śmiałe przypuszczenia dotyczące pozycji tego wciąż niewidzianego OS-a, jednakże jego warunki rozwoju wyglądają dobrze. Microsoft odzyskał część klientów tworząc Windows 7 dla netbooków, ale sam osłabił swój sukces, wprowadzając ograniczenia, przez które wersje Win 7 będzie działać tylko na niektórych urządzeniach.

Microsoft ma powody by się chwalić. Po tym jak jak udało mu się pobić Linuksa w branży netbooków – nawet pomimo sporej jego sprzedaży w firmach Acer, Dell i Asus, mającej największy wpływ na przypływ nowych użytkowników tegoż systemu, jaki kiedykolwiek udało się uzyskać. Teraz Microsoft siedzi mocno na szczycie rynku netbooków i zaczyna jak zwykle dyktować warunki. Bitwa jednakże nie jest jeszcze wygrana, ponieważ wciąż pozostają realne szanse dla otwartego oprogramowania w tej branży.

Atrakcyjność Microsoftu na netbookach, laptopach i komputerach stacjonarnych wynika z jego przyjaznego wyglądu. Zarówno jako nazwa jak i interfejs Windows jest wygodny dla zwykłych użytkowników. Ubuntu oferuje wygląd i przyjazność wystarczającą dla średnio zorientowanego użytkownika, lecz nie jest wystarczająco przyjazny by zdyskredytować Windowsa w oczach większości. Chrome OS który będzie używał nowego środowiska graficznego z przeglądarką Chrome jako głównym jego składnikiem, nie będzie konkurował z Windowsem pod względem przyjazności. Zamiast tego skupi się na dwóch rzeczach, w których Windows wciąż ma braki na tyle duże, by osiągnąć sukces pośród urządzeń o niewielkich rozmiarach: prostocie i działaniu w chmurze. Jak widać Google raz jeszcze atakuje Microsoft w jego słabe punkty.

Wraz z nadejściem Chrome OS na rynek Google znalazło kilku silnych partnerów w postaci takich firm jak Intel, HP, Lenovo, Toshiba, Acer, Qualcomm, Freescale i Adobe. Jest to bardzo dobra drużyna do tworzenia nowej wizji netbooków.

Producenci urządzeń rywalizują ze sobą pod względem tworzenia rożnych urządzeń z Chrome OS, przez co konsumenci mają do wyboru bogactwo interesujących opcji. Silniejszy przetrwa, słabszy wróci do projektowania. I tak Chrome OS będzie ewoluował we wspaniałą, całkowicie samodzielna platformę.

Życie w chmurze

Chrome OS będzie środowiskiem opartym na chmurze, zależnym od dostępu do serwisów sieciowych, a w szczególności od serwisów Google, jednakże wczesne doniesienia mówią o potrzebie dodania szerokiego dostępu do aplikacji firm trzecich.

Urządzenia z Androidem na pokładzie pokazały już swój potencjał. Sam używam telefonu Motorola Droid i korzystam z poczty Gmail, Google Kalendarza, Google Dokumentów i innych podobnych serwisów w dużej mierze w pracy. Co więcej, przesiadka na Androida znacznie zwiększyła moją zależność od serwisów Goggle’a, co pozwoliło mi wykonywać więcej pracy, gdziekolwiek zdarzyło mi się przebywać. Jak większość użytkowników Androida których znam, jestem coraz bardziej otwarty na ideę większych urządzeń, które oferują takie samo jednolite wsparcie dla pracy w chmurze pozwalając zrobić jeszcze więcej.

Oczywiście działanie w chmurze ma także swoje wady. Największym problemem jest oczywiście to, że czasem chmura jest niedostępna. W ciągu ostatniego roku zdarzyło się kilka razy, że Gmail był niedostępny przez co prywatne i firmowe konta pocztowe różnych osób były niemożliwe do sprawdzenia. Na szczęście dla tych użytkowników te problemy były krótkotrwałe i nie miały wpływu na dostęp poprzez IMAP. Także dla osób które pracują offline poprzez Google Gears dostęp do poczty elektronicznej, czy dokumentów działał bez zakłóceń, nawet gdy serwery padły.

Udział społeczności

Czy Chrome OS w wersji beta zostanie wypuszczony w tym tygodniu, przyszłym, za miesiąc, czy za rok, to jego sukces w dużej mierze będzie zależał od ogromnej liczby zaawansowanych użytkowników oraz deweloperów w społeczności, którzy pomogli stworzyć tak oszałamiający obszar dystrybucjom Linuksa od samego tylko jądra przez ostatnie 18 lat. Firma Google’a wydaje teraz nowy system czerpiąc w dużej mierze z wielu osiągnięć poprzedników.

Na szczęście Google spędziła lata rozwijając znajomości ze społecznością związaną z otwartym oprogramowaniem. Nie powinno być zatem problemu w znalezieniu dużej rzeszy doświadczonych testerów ściągających wersje beta i wprowadzających poprawki.

Zachęcające jest również to, że dla większości użytkowników Linuksa wersje beta oprogramowania są tworzone po to by wyszukiwać – i co ważniejsze – raportować błędy. To tylko nasiliło praktyki wewnątrz społeczności linuksowej ustawiające etapy testów wersji beta dla Google’a, jednocześnie zapewniając, że ci którzy będą używali wersji beta nie będą mieli do czynienia ze zwykłym trybem aktualizacji właśnie dzięki poprawkom tworzonym przed właściwym wydaniem.

W tym akwarium pływa jeszcze dużo innych ryb

Kusząco brzmi stwierdzenie, że Chrome OS obwieści koniec innych, mniej znanych dystrybucji Linuksa, ale uważam że takie twierdzenie jest błędne. Świat użytkowników Linuksa jest niczym więcej jak tylko głęboką potrzebą różnorodności i możliwości wyboru. Nieprzypadkowo setki dystrybucji są dostępne, także zaistnienie nowego lidera posłuży jedynie zwiększeniu szansy dla innych dystrybucji. Tak już po prostu jest w świecie otwartego oprogramowania.

Przez ostatnie kilka lat Ubuntu wykradło spory udział spośród społeczności użytkowników innych dystrybucji Linuksa, podczas gdy firmy korzystające z Red Hata i Suse dalej kontynuowały swoje prace na rynku biznesowym. Dla linuksowych fanów jednakże każda nowa dystrybucja jest dobrą wiadomością oraz okazją do rozrywki, nauki, czy poznawania jej samej.

Zaleta posiadania pierwszego miejsca w tej rozgrywce polega na tym, że staje się atrakcyjniejsza dla większej rzeszy użytkowników i deweloperów tej platformy. Google nie jest wyjątkiem. Nawet Microsoft Linux (o ile byłby wydawany na licencji GPL) mógłby być dobrym rozwiązaniem dla społeczności związanej z otwartym oprogramowaniem. Tak jak ww. firma posiada wielu partnerów współpracujących przy projekcie, tak Google ma już swoich, by rozwijać te związane z Chrome OS. W związku z warunkami licencji GPL firmy te muszą umożliwić znaczącą porcję własnego kodu dostępną dla społeczności związanej z otwartym oprogramowaniem. Wg tego scenariuszu każdy wygrywa.

Czekając na Google

Na chwilę obecną nie wydano jeszcze Chrome OS, by było o czym mówić. Google wydało jak dotąd tylko przegląd OS, a historie na temat ściągnięć fałszywego wydania wersji przedpremierowej, udowodniły wysokie zainteresowanie. Dopóki Google nie wyda oficjalnego oświadczenia, dopóty wszytko co możemy powiedzieć na temat tego OS, to spekulacje bazujące na szczątkowych informacjach.

Co wiemy natomiast teraz, to to, że gdy wersja beta zostanie udostępniona do ściągnięcia, serwery Google będą miały spore obciążenie.

Robert Strohmeyer jest starszym felietonistą w PC World i działa na rzecz otwartego oprogramowania od 15 lat. Odpowiada jako @rstrohmeyer.

Tłumaczenie: Iwo Hencz
Data publikacji oryginału: 16.11.2009

18 stycznia 2010, 02:01

5 stycznia 2010

Jakilinux.org: Praca po pracy czyli bezpieczny zdalny dostęp do sieci wewnętrznej

Zdalny dostęp do komputera i zasobów zabezpieczonej sieci wewnętrznej, a to wszystko prosto, a jednocześnie zgodnie z dobrymi praktykami bezpieczeństwa? Wydaje się niemożliwe, a jednak się da. Jak to osiągnąć tłumaczy Bartosz Feński aka fEnIo.

Porządnie zabezpieczona sieć komputerowa powinna być odseparowana od świata zewnętrznego tak bardzo, jak to tylko możliwe. I często tak właśnie jest to realizowane. Nawet gdy w sieci jest kilkanaście maszyn, które spełniają przeróżne wyznaczone im role w ramach infrastruktury firmowej, to zazwyczaj jedna maszyna stoi przed tym wszystkim i pełni rolę firewalla, a czasem jednocześnie routera.

Przy założeniu, że polityka wewnątrz firmy nie jest zbyt restrykcyjna, to siedząc przy biurku w pracy do takich maszyn mamy swobodny dostęp. Mogą to być przeróżne wewnętrzne serwisy, bazy danych, serwery plików czy cokolwiek innego, co jest potrzebne do funkcjonowania danego przedsiębiorstwa. Co jednak, gdy po pracy, siedząc już w domowych pieleszach, nadal potrzebujemy połączyć się z którymś serwerem, który z zewnątrz dostępny nie jest?

Postaram się opisać kilka rozwiązań, które można zastosować w takiej sytuacji.

SSH ProxyCommand

Załóżmy najprostszy i, z tego, co się orientuję, dość często spotykany scenariusz. W owej wspomnianej już firmie za firewallem stoi drugi serwer, do którego jest dostęp SSH, ale tylko w ramach lokalnej sieci. Może tak być również w sytuacji, gdy router jednocześnie robi NAT, a adresy serwerów za nim są z prywatnych klas adresowych. Tak więc by się do niego zalogować, musimy się najpierw zalogować na firewalla.

Brzmi znajomo? Ile razy zdarzyło Ci się wykonywać analogiczne jak poniższe polecenia?

laptop$ ssh router
[hasło1]
router$ ssh serwer
[hasło2]
serwer$

Ja robiłem to bardzo często, a skoro coś robi się często, to istnieje spora szansa na to, że dla kogoś powtarzanie tej czynności było na tyle frustrujące, że to zautomatyzował. Tak też się stało w przypadku SSH.

Stwórzmy na maszynie laptop plik konfiguracyjny ~/.ssh/config:

Host serwer
ProxyCommand ssh router nc %h %p 2> /dev/null

By taka konfiguracja zadziałała na maszynie router wymagany jest program netcat, ale w większości dystrybucji znajduje się w pakietach o wysokim priorytecie i zazwyczaj jest już zainstalowany. Jak teraz wygląda połączenie z serwerem?

laptop$ ssh serwer
[hasło1]
[hasło2]
serwer$

Wygenerujmy jeszcze komplet kluczy by darować sobie podawanie tych haseł.

laptop$ ssh-keygen
laptop$ ssh-copy-id router
laptop$ ssh-copy-id serwer

Teraz logowanie wygląda już całkiem przyjemnie:

laptop$ ssh serwer
serwer$

Najfajniejszy jednak w tym wszystkim jest fakt, że wraz z możliwością prostego logowania na maszynie do której publicznego dostępu nie ma, dostajemy również całą gamę usprawnień, które niesie ze sobą samo SSH. Nic nie stoi na przeszkodzie by skorzystać z scp, sshfs, forwardowania X-ów, bądź też zestawić jakiś tunel do innej maszyny przez serwer.

A co w sytuacji analogicznej do poniższej?

laptop -> router1 -> router2 -> ... -> routerN -> serwer

Nie ma przeciwwskazań by w ~/.ssh/config wprowadzić kilkanaście maszyn i zautomatyzować proces logowania nawet, gdy by dostać się do docelowej maszyny, trzeba wcześniej zalogować się na kilkunastu pośredniczących. Po prostu dla każdej z maszyn definiujemy odpowiednie polecenie proxy.

SSH SOCKS

Problem SSH mamy rozwiązany, ale co gdy usługą, do której próbujemy się dostać, jest na przykład serwer WWW? Możemy z maszyny, na którą się dostaliśmy, wykorzystać tekstowe przeglądarki, ale to raczej mało wygodne rozwiązanie.

Możemy również wykorzystać wspomniany już port forwarding, który wraz z zautomatyzowanym logowaniem na różne maszyny jest dość elastycznym rozwiązaniem, ale jednak wymaga wprowadzania dla każdej usługi specjalnych poleceń SSH (lub oczywiście konfiguracji we wspomnianym ~/.ssh/config).

Z pomocą przychodzi nam kolejna funkcja SSH. Potrafi ono pracować jako prosty serwer SOCKS.

laptop$ ssh -D 8080 router
[hasło1]
router$

Jeśli poprzednio wygenerowaliśmy klucze, to oczywiście hasła podawać nie trzeba. Teraz wystarczy w przeglądarce WWW ustawić jako serwer SOCKS localhost oraz port 8080. Wszystkie połączenia będą najpierw tunelowane do maszyny router i dla serwera WWW widoczne tak, jakby były z tej maszyny inicjowane.

Nie wszystkie aplikacje umożliwiają jednak korzystanie z serwerów SOCKS. Ale nawet na to jest lekarstwo w postaci tsocks. To dość prosty program, który za pomocą zmiennej LD_PRELOAD sprawia, że programy korzystają z alternatywnych implementacji funkcji connect(), sendto(), socket() i dzięki temu bez potrzeby ich specjalnego konfigurowania mogą korzystać z serwerów pośredniczących wręcz nieświadomie, jeśli można sobie pozwolić na takie określenie w stosunku do tworów zerojedynkowych.

W pliku konfiguracyjnym tsocks wystarczy właściwie tyle:

server = 127.0.0.1
server_type = 5
server_port = 8080

Teraz aplikacje, które chcemy “oszukać” uruchamiamy w ten sposób:

laptop$ tsocks program_bez_obsługi_socks

Jak widać, z pomocą SSH i prostego programiku możemy dość łatwo zorganizować sobie środowisko pracy z pominięciem ograniczeń wprowadzonych przez firewall. Nie rozwiążemy jednakże w ten sposób wszystkich problemów. Choćby stary, poczciwy protokół FTP z racji tego, że do komunikacji wymaga dwóch portów, w taki sposób oszukany być nie może. Poza tym w momencie, gdy za rzeczonym już firewallem mamy 40 usług na 30 maszynach, to konfiguracja SSH, by umożliwić sobie z nimi kontakt będzie strasznie rozbudowana i trudna w utrzymaniu.

Idealnie byłoby mieć rozwiązanie w którym nasz laptop z pewną klasą adresową po prostu łączy się jakimś kanałem tak, by maszyny docelowe wiedziały, że połączenia przychodzą z zaufanej sieci.

OpenVPN

Z pomocą przychodzi nam OpenVPN. W przeciwieństwie do rozwiązań bazujących na SSH, które pracują w warstwie 7 (aplikacji), OpenVPN pracuje w warstwie 3 (sieciowej) lub nawet 2 (transportowej), więc dla oprogramowania jest zupełnie przeźroczysty. Do tego wszystkiego zapewnia nam uwierzytelnianie oraz szyfrowanie, więc praktycznie nic nie tracimy w stosunku do SSH.

Co prawda od wersji 4.3 również OpenSSH doczekało się możliwości tworzenia tuneli w warstwach 2/3, ale konfiguracja do trywialnych nie należy.

OpenVPN umożliwia tworzenie zaawansowanych konfiguracji i przykładowo połączyć bezpiecznie kilkanaście oddziałów firmy. Ja jednak ograniczę się w tym artykule do zapewnienia dostępu w sytuacji opisanej na początku tego tekstu. Laptop będzie klientem, a na routerze skonfigurowany zostanie serwer VPN.

Zakładam, że pakiet openvpn jest już zainstalowany zarówno na laptopie jak i routerze. Wygenerujmy na routerze klucz, który będzie wykorzystywany do szyfrowania i uwierzytelniania transmisji:

router$ openvpn --genkey --secret /etc/openvpn/static.key

Oraz plik konfiguracyjny /etc/openvpn/server.conf:

dev tun
ifconfig 10.8.0.1 10.8.0.2
secret static.key

Adresy z klasy 10.8.x wykorzystane będą do zestawienia tunelu. Można oczywiście wykorzystać tutaj również jakieś swoje adresy.

Teraz wystarczy uruchomić serwer:

router$ sudo /etc/init.d/openvpn start

Powinien pojawić się dodatkowy interfejs:

tun0      Link encap:UNSPEC
HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Do tego musimy jeszcze odblokować w regułkach firewalla port 1194.

Stworzony klucz static.key należy przekopiować również na laptopa, a następnie utworzyć plik konfiguracyjny dla klienta /etc/openvpn/client.conf:

remote adres_routera
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret static.key
route 192.168.0.0 255.255.255.0

Podmieniamy adres_routera na jego faktyczny adres. Opcja route sprawi, że automatycznie w tablicy routingu pojawi się wpis i ruch do tej sieci będzie kierowany do zestawionego tunelu.

Teraz wystarczy na laptopie również uruchomić VPN:

laptop$ sudo /etc/init.d/openvpn start

Spójrzmy w tablicę routingu:

10.8.0.1    0.0.0.0    255.255.255.255 UH  0    0    0 tun0
192.168.0.0 10.8.0.1   255.255.255.0   UG  0    0    0 tun0

Tym sposobem zestawiliśmy najprostszą możliwą konfigurację. Oczywiście, ma ona też swoje wady. Choćby fakt, że gdy taki klucz dostanie się w niepowołane ręce, to każdy jego posiadacz będzie miał dostęp do naszej sieci. OpenVPN posiada dużo bardziej wyrafinowane sposoby uwierzytelniania, choćby proste zabezpieczenie klucza hasłem, ale to już wybiega poza ramy tego artykułu. Zainteresowani jak zawsze mogą zgłębić temat samodzielnie.

5 stycznia 2010, 23:25

30 grudnia 2009

Piotr Godlewski: Instalacja sterowników Nvidii w Fedorze 12

Jak się szybko okazało, po instalacji Fedory 12 sterowniki Nvidii nie działają. Głównym tego powodem jest kolidowaniem z Nouveau, który jest standardowo włączony. Skutkiem tego może być m.in. nie wstawanie X’ów, lub błędy przy kompilacji binarnego sterownika ze strony Nvidii.

Jeżeli czujecie się zniechęceni do Fedory, to po przeczytaniu tego wpisu może to minąć :) Wystarczy uważnie czytać a błędy powinny ustać. Pod spodem znajdziecie rozwiązania dla poszczególnych (wspieranych) wersji.

Fedora 12

Uruchom najnowszy kernel i wykonaj po kolei następujące polecenia (może ono trochę potrwać):

1
2
3
su -
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
dracut /boot/initramfs-$(uname -r).img $(uname -r)

Po czym edytuj plik:

1
/boot/grub.conf

i na końcu linii dodaj ten fragment:

1
rdblacklist=nouveau

Dla przykładu:

1
rhgb quiet rdblacklist=nouveau

Przed instalacją właściwego sterownika z root-a wykonaj polecenie (może ono trochę potrwać):

1
setsebool -P allow_execstack on

I możesz brać zainstalować kmod-nvidia (oczywiście po uprzednim dodaniu repozytoriów z RPMFusion.org):

1
yum install kmod-nvidia

Fedora 11

W Fedorze 11 wystarczy wydać kolejno:

1
2
3
4
su -
mv /boot/initrd-$(uname -r).img /boot/initrd-$(uname -r)-nouveau.img
mkinitrd /boot/initrd-$(uname -r).img $(uname -r)
reboot

Porada dla 64-bitowych użytkowników

Jeżeli przyszło by Wam do głowy aby grać przez Wine, należy doinstalować 32-bitową wersję sterownika:

1
yum install xorg-x11-drv-nvidia-libs.i686

30 grudnia 2009, 19:30