Qubes – 2.0

A Qubes projekt célja

Az első és legfontosabb információ a projekttel kapcsolatban, hogy egyáltalán miért jött létre, mit szeretne megvalósítani. A cél nagyon röviden: egy biztonságos Desktop Operációs Rendszer megalkotása. Ennek megértésben – a már több cikkemben is linkelt – rövid prezentáció segíthet: Qubes-meetup

Felmerülhet a kérdés, hogy miben különbözik ez, a többi egyéb hasonló célt szolgáló megoldástól? Erre ad választ a projekt alapítója – egy blog bejegyzés formájában.

Az egyéb kérdéseket a Gyakran Ismételt Kérdések szekció igyekszik megválaszolni.

A Qubes OS felépítése

Security by Isolation

A fenti ábra jól szemlélteti a Qubes OS felépítését, aminek alapvető eleme a Xen hypervisor, ami egy biztonságos Type-1 (Bare-metal) virtualizációs réteget biztosít. Ennek segítségével külön-külön virtuális gépek formájában valósítja meg az elkülönítést a rendszer kritikus elemei és az alkalmazásokat futtató AppVM-ek között. Mindezt úgy, hogy közben a különböző AppVM-ben futó alkalmazások ugyan azon a képernyőn jelenjenek meg, sőt lehetőség van egymás közötti biztonságos adatátvitelre is.

Természetesen, ilyen szintű szeparáció biztonságos megvalósításához hardver szintű támogatás is szükséges. A rendszer futtatásához szükséges konkrét hardver követelmények megtalálhatóak a projekt wiki oldalán. Sőt, a fejlesztők és a felhasználók által tesztelt konkrét eszközökkel kapcsolatban a HCL nyújthat további segítséget.

Bare-metal (Type-1) hypervisor

Ahogy ezt már többször is igyekeztem kihangsúlyozni, a rendszer legfontosabb eleme – a virtualizációt és ennek segítségével a szeparációt biztosító hypervisor – esetünkben a Xen.

Hardver szintű támogatással elkülönített rendszer komponensek:

  • dom0

A Xen hypervisor ugyan nem egy másik operációs rendszeren belül fut, de szüksége van eszközmeghajtókra (driver), management szoftverekre, és grafikus felületre is. Ezeket biztosítja a dom0 operációs rendszere, ami a Qubes OS 2.0 esetében egy – kifejezetten erre a feladatra specializált – Fedora 20 disztribúció 3.12 verziójú kernellel.

A Qubes OS esetében extra biztonsági fícsör, hogy a dom0 nem rendelkezik közvetlen hálózati összeköttetéssel!

  • Network

A Qubes egyik legfontosabb  – a fenti ábrán is jól szemléltetett –  biztonsági megoldása, a hálózati eszközök elkülönítése a dom0, illetve az AppVM-ektől. Ezt a Xen hypervisor egyik remek lehetősége,  a PCI Passtrough biztosítja. A megoldás lényege, hogy a fizikai hálózati eszközeinket egy kifejezetten erre a feladatra tervezett virtuális gép típushoz – egy NetVM-hez csatoljuk. Így hatékonyan elszeparálhatjuk a külső hálózatokkal közvetlen kapcsolatot tartó eszközöket (és az ehhez szükséges drivereket) az érzékeny adatokat tartalmazó alkalmazásainktól, és az egész rendszert vezérlő dom0-tól egyaránt.

Template alapú virtuális gépek

Mivel sok virtuális gépet fogunk futtatni, elengedhetetlen fícsör, hogy ezeket ne kelljen külön-külön egyesével frissíteni, karbantartani. Ez a gyakorlatban azt jelenti, hogy a virtuális gépek egy read-only template (itt találhatóak a telepített alkalmazások, és a rendszer szintű beállítások) és egy read-write lehetőséggel bíró virtuális diszket (amin a home könyvtárunk és a VM-enként eltérő konfigurációs állományok találhatóak) is kapnak, ezek összessége adja a virtuális gép teljes file struktúráját.

Ennek technikai megvalósításáról a projekt wiki oldalán találunk bővebb informáviókat.

Ez a megoldás a következő előnyöket biztosítja:

  • nagyságrendekkel kisebb diszk igény,
  • csak egy helyen kell az alkalmazásokat telepíteni/frissíteni,
  • csak egyszer kell a globális (minden VM-re érvényes) beállításokat elvégezni,
  • ‘elronthatatlan’ bináris készlet – ideiglenesen ugyan felülírhatjuk a template-ből kapott álloományokat is, ám azok egy reboot után visszaállnak az eredeti állapotra.

Természetesen ennek a megoldásnak ugyan úgy vannak hátrányai is, legfőképp a megnövekedett diszk I/O igény – mivel minden VM ugyan azt a diszk területet akarja egyszerre olvasgatni. Erre azonban a ma már igen elterjedt SSD technológia remek megoldást nyújt. Éppen ezért erősen javasolt is, a hagyományos HDD-kel szemben.

A Qubes OS ‘gyárilag’ egyetlen template-et tartalmaz, ami egy standard Fedora 20 kiadás – Qubes specifikus csomagokkal kiegészítve. Azonban a lehetőség adott, bárki készíthet egyéb más operációs rendszerekre épülő template-eket is, köszönhetően a template builder-nek. Ennek segítségével készül már ArchLinux és Debian template is a közösség tagjai által.

Amellett, hogy a template alapú VM-ek használata a gyakorlatban nagyon hasznos, természetesen lehetőség van Standalone VM-ek létrehozására is.

Különböző típusú virtuális gépek futtatásának lehetősége:

  • NetVM

Ez egy speciális feladatot ellátó virtuális gép típus, ez biztosít összeköttetést a fizikai hálózatok és az alkalmazásainkat futtató AppVM-ek között. Legalább egy ilyen típusú VM kell hogy legyen a rendszerünkben. Default telepítés esetén egy ilyen VM jön létre, és ehhez lesz hozzárendelve a gépünkben található összes hálózati eszköz, de természetesen ennél jóval bonyolultabb rendszert is kialakíthatunk, ha a különböző eszközöket (Ethernet, WiFi, 3G) külön-külön NetVM-ekhez rendeljük.

  • ProxyVM

A Proxy (vagy Firewall) típusú virtuális gépeket az AppVM-ek és a NetVM(ek) közé csatlakoztatva, még tovább szeparálhatjuk – ezzel még biztonságosabbá téve – a belső virtuális hálózatunkat.

Default telepítés esetén egy ilyen VM jön létre. A gyakorlatban azonban magam is több  ProxyVM-et: hasnálok: TOR, VPN, vagy épp az AppVM-ek egymás közötti kommunikációjának engedélyezésére.

  • AppVM

Felhasználói szemszögből ez a fajta VM tartalmazza a lényeget: az alkalmazásokat, amiket használni szeretnénk :) Hogy kinek mennyi kell ezekből, az már a felhasználás módjától és a tevékenységeink sokszínűségétől (és biztonsági vonzataitól) függ. Természetesen minél több AppVM fut, annál több erőforrást is igényel, tehát a rendelkezésünkre álló hardver figyelembe vételével tervezzük meg, hogy mennyire szeretnénk darabokra szeparálni a digitális életünket.

  • HVM

Az eddig vázolt VM-ek mind PV – vagyis paravirtualizát környezetben futnak, aminek legfőbb tulajdonsága, hogy az operációs rendszernek erről tudnia kell, azaz egy módosított kernelre van szükség az ilyen környezetben való futáshoz. Ezzel szemben a HVM – vagy ‘Full Virtualization – környezetben módosítás nélkül futtathatunk szinte bármilyen operációs rendszert, így lehetőség van olyan operációs rendszerek futtatására is, amik kernelét nem tudjuk/akarjuk módosítani a PV környezethez. Ilyen például a Windows is.

Ilyen típusú VM esetén lehetséges nem template alapú – azaz Standalone VM-eket is létrehozni.

DVM – Disposable VM

Az eldobható – azaz egyszer használatos – VM-ek segítségével még tovább tudjuk csökkenteni az internetről ránk áradó támadások, vírusok, és egyéb gonosz dolgok káros hatásait. Ez a VM ugyanis a kikapcsolás után végleg megszűnik létezni – az esetleg összeszedett károkozókkal együtt :)

Ez a megoldás kiválóan alkalmas ismeretlen eredetű, vagy akár tudottan ártó jellegű weboldalak felkeresésére, fájlok letöltésére, vírusok ‘tesztelésére’. Mindemellett magánéleti (privacy) szempontból kényes ügyek intézésére is remek megoldás, főleg egy ProxyVM-ben futó TOR megoldással kiegészítve.

Ezek használatát nagyban megkönnyíti a File kezelőhöz, Evolution-höz. és Firefox-hoz is elérhető plugin, aminek segítségével egy normál AppVM-ből is egyetlen kattintással nyithatunk meg állományokat, weboldalakat egy újonnan indított DVM-ben.

Grafikus VM kezelőfelület

A mára már alapvetőnek számító Qubes VM Manager az 1.0 kiadásban debütált, és mivel azóta csak apróbb változtatásokon esett át, így ezt nem részletezném újra.

Seamless GUI Integration

Mivel ezt a kifejezést igen nehéz lefordítani, igyekszem elmagyarázni miről is van szó. Nehéz dolog ez azért is, mert a végeredménynek pont az a lényege, hogy a felhasználó számára egyértelmű legyen, hogy melyik alkalmazás melyik VM-ben fut, ám ez mégse jelentsen korlátokat a használhatóságban. Ez a gyakorlatban azt jelenti, hogy minden egyes alkalmazás egy színes ablakkeretet kap. Ez az ablakkeret a színével és az alkalmazást futtató VM nevével van ellátva, de ettől függetlenül ugyan azon a desktop felületen láthatjuk őket, sőt akár copy-paste műveletet is végezhetünk a közöttük, attól függetlenül, hogy valójában külön VM-ben futnak. Persze mindezt látni kell, és máris egyértelmű miről is beszélek :)

Technikai részletek a projekt wiki oldalán

Biztonságos adatátviteli lehetőségek a VM-ek között:

Segítségével lehetőségünk van biztonságos módon állományokat mozgatni anélkül, hogy bármilyen közös eszközt kellene felcsatolnunk az érintett VM-ekben.

A „Seamless GUI Integration” egyik lényeges eleme, hogy Copy-Paste műveleteket is végezhetünk a különböző VM-ek között.

  • Trusted PDF

Egy olyan remek megoldás is született, ami a .pdf állományokat egy eldobható VM-ben egy sokkal megbízhatóbb (makrók, scriptek, és egyéb veszélyforrások nélküli) formátumba konvertálja.

Minden AppVM egy belső virtuális hálózat része. Hogy ezek a virtuális gépek hogyan kapcsolódhassan egymáshoz – majd végül a fizikai hálózathoz – azt a qubes firewall szabályozza.

Backup & Restore

Nem, a biztonsági mentések fontosságát nem szeretném szajkózni.Úgyis mindeki csak egy őt is érintő adatvesztés után kezd el rendszeres mentéseket készíteni, és általában ez is csak addig tart, amíg az ezzel kapcsolatos rossz emlékek.

A Qubes mindenesetre lehetőséget biztosít a rendszerünk egyszerű és biztonságos mentésére és visszaállítására egyaránt. Itt azért kihangsúlyoznám a működő visszaállítást. A Qubes tesztelése során ugyanis ez a fícsör adta a lehetőséget arra, hogy különösebb probléma (és adatvesztés) nélkül lehessen frissíteni, vagy akár egy régebbi állapotra visszaállni. Az egyéb operációs rendszerek és mentéseikkel kapcsolatban eddig sajnos nem voltak ilyen pozitív tapasztalataim…

Anti Evil Maid

Ez egyfajta TPM implementáció, aminek elsődleges célja az ‘Evil Maid’ tipusú támadások megakadályozása. Bővebb információk a projet wiki oldalán.

Single User Mode – by design

Ez első hallásra ugyan sokkal inkáb hiányosságként lehetne értelmezni, ám aki a dom0-hoz hozzáfér, az az összes VM felett korlátlan jogokkal rendelkezik. Emiatt a jelenlegi megoldásokkal nem biztosítható a felhasználók jogainak elkülönítése a dom0-ban. Tehát a Qubes OS csak egyetlen felhasználót feltételez. – ami egy laptop esetében nem is túl elvonatkoztatott dolog.

XenClient XT – 3.1

A Citrix XenClient máig az egyetlen desktop virtualizációt célzó kereskedelmi termékcsalád. Korábbi cikkeimben már volt róluk szó, ám akkor még eléggé gyermekcipőben jártak ezen a viszonylag újnak számító területen. Volt is nagy kavarodás (az állítólagos) különböző verziók között, miközben publikusan csak egyetlen verzió volt elérhető, ami akkor XenClient Express néven futott.

Jelenleg ezek a változatok már határozottan külön – de legalábbis ketté – váltak. A továbbiakban a XenClient XT verzióról lesz szó.

Különbségek az XenClient Enterprise változathoz képest

A XenClient XT technikailag sokkal inkább a régi Express változat utódja, felépítésében erősen elválik az Enterpise-től, amiben a fő hangsúlyt a központi management kapta. Ez a változat sokkal inkább a biztonsági megoldásokra koncentrál:

xenclientxt

  • Network Isolation

Ahogy a fenti ábrán is jól látható, a külső hálózatokkal kapcsolatot tartó szolgáltatások – és eszközök! – külön erre a célra dedikált virtuális gépekbe (Service VM) kerültek.

  • Hardened Dom0

A Dom0 operációs rendszere – ami természetesen ez esetben is Linux – SELinux támogatással is rendelkezik.

  • Hardware-assisted security

Az Intel vPro technológiának köszönhetően lehetőség van különböző „hardveresen támogatott biztonsági lehetőségekre” is – ám ezekről ugye nemrég derült ki, hogy valójában inkább beépített backdoor szolgáltatásokat nyújt.

Telepítés

A rendszer telepítése ez esetben is egyszerű, azonban ha szeretnénk komolyabb biztonsági megoldásokat is használni (Trusted Boot, SELinux, XSM), javasolt még a telepítés előtt elolvasni az egyébként remek és bőséges dokumentációhalmazt, amit a termékhez kapunk.

 A motorháztető alatt

A rendszer a 4.1.3 verziójú Xen kernelre épül, a dom0 és a Service VM-ek pedig egy 2.6.32 verziójú SELinux támogatással rendelkező kernelen futnak.

Az Enterprise változathoz képest nem elhanyagolható különbség az sem, hogy nem próbálják meg lehetetlenné tenni a rendszerhez való mélyebb hozzáférést: Crtl + Shift + T – és máris kapunk egy Dom0 terminált :)

Így a rendszer felépítésével és működésével kapcsolatos részletes információkat nem volt nehéz összeszedni – persze azért a Service VM-ekbe való bejutáshoz utána kellett járni néhány nem (publikusan) dokumentált fícsörnek ;)

XenClient Synchronizer

Az Enterprise változathoz hasonlóan természetesen itt is használhatunk központilag létrehozott és karbantartott virtuális gépeket, amihez azonban egy teljesen külön szerver arzenálra lesz szükségünk:

  • Oracle 11g Database Server
  • Citrix License Server
  • Web Server
  • CLI Host

Ezen megoldások telepítése és beállítása is remekül dokumentálva van, így ezekre én most itt nem is térek ki.

 

Ahogy látható, ez a változat valóban a biztonsági megoldásokra helyezi a hangsúlyt. Ezt már érdemben össze is lehetne hasonlítani a Qubes megoldásával, azonban a felhasználó által használható virtuális gépek itt is kizárólag HVM típúsúak lehetnek. Ezzel szemben a Qubes OS Seamless GUI Integration megközelítése sokkal kényelmesebb felhasználói élményt biztosít, lényegesen több biztonsági megoldás mellett! És ráadásul mindezt ingyen – míg a XenClient XT licencköltségei közel sem elhanyagolhatóak.

Ezen kívül sajnos azt sem lehet figyelmen kívül hagyni, hogy a Citrix is ‘csak’ egy amerikai multi, így várhatóan az ő termékei is tartalmaznak az NSA által megrendelt fícsöröket ;)

XenClient Enterprise – 5.0

A Citrix XenClient máig az egyetlen desktop virtualizációt célzó kereskedelmi termékcsalád. Korábbi cikkeimben már volt róluk szó, ám akkor még eléggé gyermekcipőben jártak ezen a viszonylag újnak számító területen. Volt is nagy kavarodás (az állítólagos) különböző verziók között, miközben publikusan csak egyetlen verzió volt elérhető, ami akkor XenClient Express néven futott.

Jelenleg ezek a változatok már határozottan külön – de legalábbis ketté – váltak, a továbbiakban a XenClient Enterprise 5 illetve a XenClient Express  verziókról lesz szó.

Mi a különbség a most tárgyalt két verzió között?

Technikailag semmi, mindkettő ugyan arra a XenClient Engine-re épül. Azonban az Enterprise a nevének megfelelő célközönségnek szól – tehát nagyvállalati felhasználásra. Ennek megfelelően erre is van kihegyezve, legfőbb tulajdonsága a központi felügyeletről szól, és persze nincs ingyen.

A XenClient Express ettől annyiban különbözik, hogy (a megfelelő licencek hiánya miatt) nem képes központi szerverhez csatlakozni, így csak lokális virtuális gépek futtatására alkalmas. Cserébe ingyen használhatjuk – bár az ide vonatkozó licenceket érdemes egy jogásszal értelmeztetni először ;)

1350049701200

XenClient Engine

Ez tulajdonképpen maga a hypervisor – azaz a virtualizációért felelős szoftver, kiegészítve egy grafikus kezelőfelülettel. Mindebből a felhasználók természetesen csak a grafikus kezelőfelületet látják, annyira hogy a lehetőségeink erősen le is vannak korlátozva a következőkre:

  • Felhasználó regisztráció

Nagyvállalati környezetben egy központi, egyébként lokális felhasználó létrehozása.

  • Hálózathoz (WiFi és Ethernet) csatlakozás.

Ez ugye alapvető, hiszen hálózat nélkül nincs is élet :)

  • Beépített alkalmazások használata

Ez egy igen praktikus és hasznos lehetőség, tulajdonképpen olyan előre telepített mini virtuális gépben (Citrix Receiver) futó alkalmazásokról van szó, mint pl: böngésző (google chrome) Remote Desktop kliens…

  • Lokális virtuális gépek létrehozása

Vagyis a lényeg: hogy futtathassunk több egymástól független virtuális gépet :) Fontos azonban, hogy ezeknek semmi közük a központilag létrehozott virtuális gépekhez!

  • Citrix Receiver

Vállalati környezetben ezzel (ami tulajdonképpen egy speciális virtuális gép) kapcsolódhatunk a központi szerverhez, hogy onnan virtuális gépeket töltsünk le, majd használjunk azokat.

Mindezt persze hasonló feltételekkel, mint amit az előző verzióknál is láthattunk, tehát kizárólag HVM guest-ek futtatására képes, bármiféle komolyabb biztonsági megoldást nélkülözve, de lehetőségünk van több virtuális gép egyidejű futtatására. De mindez meg sem közelíti a Qubes OS által nyújtott biztonsági és kényelmi szolgáltatásokat.

Telepítés

A rendszer telepítése nem igényel különösebb szakértelmet, és rengeteg dokumentáció is rendelkezésünkre áll a témában, amihez a linkeket a regisztációt követően el is küldenek számunkra. Regisztrálni pedig mindenképp kell a Citrix oldalán, anélkül ugyanis a telepítőkészletet sem tudjuk letölteni..

 A motorháztető alatt

Egy átlagos felhasználó ezt már el sem olvassa, neki elég hogy szép és működik. Örül, és használja :) Azonban ahogyan az előző verziókat is igyekeztem kibelezni, ennél is pontosan ezt tettem. Annak ellenére, hogy ezt a gyártók igyekeztek „lehetetlenné” tenni. Persze lehetetlen nincs, így ki is derültek a turpisságok.

A rendszer a 4.2.2 verziójú Xen kernelre épül, a dom0 pedig egy 3.8.13-orc verziójú Linux kernelen fut.

Shadow partíciók

ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk1' [128.00 MiB] inherit
ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk2' [128.00 MiB] inherit
ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk5' [2.00 GiB]   inherit
ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk6' [2.00 GiB]   inherit
ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk7' [512.00 MiB] inherit
ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk8' [512.00 MiB] inherit
ACTIVE   '/dev/NxVG-25ebd965bb57/NxDisk9' [227.63 GiB] inherit

Furcsa, nem dokumentált fícsör. A célja egyelőre ismeretlen, talán valamiféle LVM backup számára fenntartott hely. Az éles rendszer ugyanis így néz ki:

Filesystem           Size  Used Avail Use% Mounted on
/dev/mapper/NxDisk5  2.0G 1003M  878M  54% /
udev                 350M  4.0K  350M   1% /dev
tmpfs                152M  972K  151M   1% /run
none                 5.0M     0  5.0M   0% /run/lock
none                 380M   16K  380M   1% /run/shm
/dev/mapper/NxDisk1  120M   56M   59M  49% /boot
/dev/mapper/NxDisk8  488M  2.5M  460M   1% /var/log
/dev/mapper/NxDisk9  224G  2.0G  211G   1% /nxtop

Beépített backdoor hegyek

#
# Root password
#
ROOT_PASSWD=biker1
# When a fatal error occurs, the installer will put a screen
# that this password can be typed in to access the shell.
# Dont use a $ in the password.
INSTALLER_BACKDOOR_PASSWD="Q"
# Password needed to enable FIST mode
# Dont use a $ in the password.
INSTALLER_FIST_BACKDOOR_PASSWD="f1St"
#
# Encryption
#
DEFAULT_LUKS_PW=9nvnWRHiX0as6gCSRAP

Természetesen mindezt biztosan nem ártó szándékkal csinálják, tutira benne van a több oldalas licenc szerződés valamelyik értelmezhetetlen szövegezésű, apró betűs részében ;)

Ettől függetlenül biztonsági szempontból eléggé kérdéses mindegyik fent látható „fícsör”. Ezek ugyanis a telepítő CD-n is megtalálható install script részletei.

És nem, ezeket később a telepítés során NEM változtatja meg, sőt a default LUKS jelszó sem lesz törölve, miután a felhasználó sajátot állított be:

UUID:          	e631ff96-82af-420c-b5f5-6cb0247f2b8f

Key Slot 0: ENABLED
	Iterations:         	126451
	Salt:               	2d 43 84 fc e3 52 74 6c ed 01 0e 7d 81 55 6b 35 
	                      	de 14 bb f7 8e 33 6b d0 e3 e8 30 55 77 da de 5d 
	Key material offset:	8
	AF stripes:            	4000
Key Slot 1: ENABLED
	Iterations:         	127953
	Salt:               	60 a4 45 34 97 76 1e 3c 8a a8 05 6d 03 b6 fd 16 
	                      	5a f1 a7 f2 6f a8 a7 f4 d7 5b d7 49 32 1d 7e 12 
	Key material offset:	264
	AF stripes:            	4000

Kikapcsolt dom0 console

Szintén biztosan egy újabb felhasználóbarát fícsör, hogy még véleltlenül se lehessen (könnyen) felfedezni/megváltoztatni a rendszer azon elemeit, amik a GUI alatt vannak. Természetesen azért mindig van kerülő út, így azért csak sikerült begyűjteni néhány információt a rendszerről ;)

 

XenClient Synchronizer

Vállalati környezetben ez a szerver oldal, aminek segítségével központilag kezelhetjük a felhasználókat, azok munkaállomásait, és az általuk használt virtuális gépeket. Nem meglepő módon ez egy Windows alatt futó alkalmazás, tehát kell alá tenni egy külön szervert, amire előre kell telepíteni egy Hyper-v és egy windows 2008 (vagy 2012) operációs rendszert is. Ezen követelmények miatt, ezt egyelőre nem volt (kedvem) lehetőségem kipróbálni.

Mindezekből is világosan látszik, hogy a célközönség a nagyvállalati környezet, ahol a felhasználóknak semmi köze sem lehet a keze alá adott géphez – még ha az valójában egy hordozható eszköz is. Az is világos, hogy nem a biztonság az első szempont, sokkal inkább a központi management. – Persze ez már így is sokkal biztonságosabb mint egy átlagos „egy oprendszeres” munkaállomás…

Az Express verzió tehát mindennek a lebutított változata, csak véletlenül(?) benne maradt a nagyvállalati környezetben akár fícsörnek is tekinthető vicces backdoor csokor.

 

Andrews Kft.

Ez volt az a cég, ahol több mint 10 éven át dolgoztam… De ha csak ennyit jelentene, ez a cikk itt most nem is létezne. Mit is adott akkor nekem az Andrews a fizetésen kívül? :)

Az önéletrajzom publikus, tehát bárki láthatja a benne szereplő – és a visszajelzések alapján – jól hangzó dolgokat :) Én is csak így utólag látom, hogy (szakmai szemszögből) mit is jelentett mindez számomra:

Kezdetben, amikor csatlakoztam a céghez, csak egy lelkes ám Linux és hálózatbiztonság iránt erősen érdeklődő újonc voltam. Hozzátéve, hogy a diplomámnak ugyan köze nincs az IT területhez, de önkéntes alapon jelentős részt vállaltam az – akkor még igen ritkának számító – Sun Solaris alapú számítógépes hálózat kiépítésében és üzemeltetésében. Már akkor világossá vált számomra, hogy ez sokkal jobb dolog, mint az akkoriban uralkodó(?) egyéb vackok, mint: Windows NT, Win3.1, Novell NetWare.

Ilyen háttérrel – és minimális munkatapasztalattal – kerültem bele egy olyan profi mérnökcsapatba, ahol már akkor igen magas színvonalú tűzfal és szerver üzemeltetés folyt, természetesen Linux alapokon.

Innentől kezdve lehetőségem volt azzal foglalkozni, amit eddig csak hobbiból műveltem. Ez biztosította számomra azt az óriási inspirációt, hogy minél mélyebben megismerjem a Linux operációs rendszert és a rá épülő mindenféle – főként hálózatokkal és biztonsággal kapcsolatos – megoldásokat. A munka jellegéből adódó rugalmas munkaidőnek, és a rengeteg elvégzendő feladatnak köszönhetően valóban úgy néztek ki a napjaim, hogy nehéz volt megkülönböztetni a ‘kötelező’ munkát, és a saját érdeklődésből végzett feladatokat és tanulmányokat. És mindezen törekvéseimet a munkáltatóm honorálta is…

Mivel az Andrews Kft. szolgáltatásai egy saját fejlesztésű alkalmazás szintű tűzfalra (ALF) épültek, ezért ezen területen is olyan szintű ismereteket, és tapasztalatokat szerezhettem, amikhez semmilyen más módon nem lehetséges hozzáférni. Most, hogy már ismerek/üzemeltetek más – nagy cégek által preferált – ‘dobozos’ megoldásokat is, bátran állíthatom hogy tudásában messze felülmúlja bármelyiket!

Mindezek mellet, az Andrews Kft. úttörőként kezdet foglalkozni a különböző virtualizációs technológiákkal, majd később a VMware megoldásait hivatalos partnercégként is szállította – és használja ma is. Mivel ez a terület is érdekesnek tűnt számomra, így elsők között foglalkozhattam ezekkel. Ez megint egy olyan hatalmas lehetőséget volt számomra, amit az nekik köszönhetek. Manapság persze már mindenkinek természetes hogy valamilyen virtualizációs megoldást használ. Azonban úgy érzem, látom és tapasztalom, hogy a virtualizációt alkalmazó cégek esetében ezen megoldások biztonsága nagyon is hiányos – ha egyáltalán foglalkoznak ezzel.

Ehhez szorosan kapcsolódóan olyan hardver megoldásokkal is találkozhattam, amikkel ‘hobbiból’ nem nagyon van lehetőség még csak találkozni sem. Értem ezalatt a különböző hardvergyártók BLADE megoldásait, Storage eszközöket, és az őket összekötő FC hálózatokat.

Ahogy remélhetőleg a korábbi cikkeimből is kiderült, jómagam ezen területeken jelentős tapasztalatokkal rendelkezem, köszönhetően annak hogy saját és ügyfeleink számára teljes virtualizált datacenter megoldásokat terveztünk, telepítettünk, és üzemeltettünk, a hozzá szükséges biztonsági megoldásokkal együtt.

Szintén kapcsolódó szolgáltatás a rendszerek monitorozása. Jelenleg egy ‘jó nevű’ multinál dolgozva is határozottan állítom, hogy az Andrews Kft felügyeleti rendszere – ami természetesen nem csak egy szoftver, hanem annak használatával, finomhangolásával, és üzemeltetésével kapcsolatos összes megoldást jelenti – technikai színvonalában és hatékonyságában messze felülmúlja a multiknál alkalmazott több tízmilliós megoldásokat!

Ezen technológiák és megoldások megismerésén kívül, lehetőségem volt a helpdesktől kezdve egészen a datacenter tervezésig MINDEN folyamatot megismerni, gyakorolni. Sőt később mindezekről előadásokat, oktatásokat is tartani. Ez utóbbit egyébként magam sosem gondoltam volna hogy valaha is tetszeni fog, ám a kolegák és az ügyfelek visszajelzései, később pedig a nagyobb publikus előadások pozitív tapasztalatai miatt nagyon is megtetszett ez a feladatkör :)

Ezek után persze jogos kérdés lehet, hogy akkor most miért is nem ott dolgozom? Ennek több oka is van: egyik, hogy már családom van, és emiatt durván át kellett alakítanom az addigi életvitelemet. Más részük kevésbé publikus… a lényeg, hogy sajnos nem sikerült mindkettőnknek elfogadható megoldást találni.

És hogy mégis mindezt minek/kinek írtam? Leginkább azoknak, akik jelenleg életük azon stádiumában vannak, amikor még megtehetik, hogy komoly – a későbbiekben is hasznos – átfogó ismereteket és tapasztalatokat szerezzenek egy ilyen – vagy ehhez hasonló cégnél.

Mert egy multinál ezt SOHA nem fogják tudni elérni!

DotRoll – Tárhely

Manapság tárhely szolgáltatót választani igen nehéz, főleg ha ennél lényegesen professzionálisabb környezetből kell valamit egy egyszerű webhostingra költöztetni…

Technikai szempontból nézve egy saját szerverhez és/vagy VPS szolgáltatáshoz viszonyítva egy webtárhely egyszerűen nevetséges. Nyilvánvaló viszont, hogy azért van mégis létjogosultsága, mert átlagosan 10-12x olcsóbb mint a fent említett komoly szolgáltatások bármelyike, és nem kell hozzá külön ‘rendszergazda’ sem.

Biztonsági szakemberként, jelentős szakmai háttérrel, most a saját oldalaimat költöztettem egy professzionális VPS-ből a DotRoll tárhely szolgáltatására.

Mivel nagyjából tudtam mire számítsak, nem voltak igazán nagy elvárásaim, és az oldalaim működéséhez mindössze egy WordPress-t futtatni képes szerverre és a hozzá szükséges adatbázisra volt szükségem. Maga a költöztetés a WordPress-nek (és a rendszeres mentéseimnek) köszönhetően pár perc alatt megvolt. Sok idő kellett azonban a számomra eddig ismeretlen cPanel – és az alatta lévő környezet kiismeréséhez. Ez is inkább annak köszönhető, hogy én pontosan tudtam, hogy mit szeretnék létrehozni, de azt nem hogy a cPanel tervezői (és a DotRoll üzemeltetői) azt hogyan valósították meg – átlag felhasználók számára is kezelhető módon :) Az online support azonban készségesen segített minden felmerült kérdéseim megválaszolásában :)

Mire minden elkészül, kiderült mit is kaptam a ~7000 magyar forintomért cserébe:

DotRollBASIC

Az előre megadott paramétereket bárki megtekintheti a fenti linken. Ami viszont csak a kifizetés után derült ki – legalábbis számomra:

  • Hozzáférési lehetőségek

A tárhelyhez alapvetően egyetlen (a rendszer által generált) felhasználót – és a számára kialakított ‘chroot’ környezetet kapujuk. Ezen belül tudunk mindent a cPanel-es management felület segítségével megoldani. Többek között, hozhatunk létre korlátlan számú, általunk megadott könyvtárhoz hozzáférő FTP (és/vagy webDAV) felhasználókat. Ez nagyon hasznos, főleg ha egymástól független oldalakat akarunk üzemeltetni és/vagy több adminisztrátor dolgozik ezeken…

SSH hozzáférés sajnos csak a drágább csomaghoz jár :(

  • Hozzárendelhető domainek

Jelen csomaghoz 5db domain (ezek alá viszont akármennyi aldomain) rendelhető. Ezt viszont úgy kell érteni, hogy amit a regisztrációnál megadtunk, mint ‘Main Domain’ annak a document root-ja mindenképp a ./public_html könyvtár lesz, és ezt később nem – vagy csak adminisztrátori beavatkozással módosítható. A további domainek számára azonban szabadon megadhatunk bármilyen könyvtárat…

A cPanel nagyon ‘user friendly’, ezért oda kell figyelni, hogy mit hová rendel nekünk puszta segítőkészségből ;)

  • DNS kezelés

Pozitív csalódás volt, amikor láttam hogy ‘advanced módban’ mindenféle (MX, A, CNAME, TXT) rekordot hozhatunk létre, általunk megadható egyedi TTL értékekkel :)

Cserébe először ki kell gyomlálni a cPanel által automatikusan létrehozott felesleges szemetet ;)

  • Állomány jogosultságok

Na itt azért már van kavarás rendesen. Alapvetően a webszerver a saját felhasználónk nevében fut, emiatt hozzáfér MINDEN állományhoz, és azokat amik a home könyvtárunkon belül van, akár írhatja is! Na, amikor ez kiderült számomra, akkor futottam újabb köröket a VPS szolgáltatókkal…

Ez ugye több szempontból is problémás, legfőképpen azért mert a különböző domainek alatt elhelyezett oldalak is ugyan ennek az egy felhasználónak a nevében futnak. A másik, hogy így sajnos NEM LEHET biztonságos oldalt létrehozni.

  • Backup

Gondolom ez szintén alap cPanel modul, szépen mindent egy állományba összegyűjt számunkra, nekünk csak le kell mentenünk rendszeresen. Persze automatizálni így nem nagyon lehet – de már ez is nagy segítség egy csupasz FTP-hez képest.

  • Naplózás

Ismét egy nagy pozitívum, hogy választhattam melyik logelemzó szoftverrel (Awstats, Logaholic, Webalizer) etesse meg a webszerverem logjait. És ezek aztán tudásukhoz mérten mindenféle csodás grafikonon mutatják meg ki tévedt az oldaunkra, és miket nézegetett rajtuk :)

  • Biztonság

Mivel jó pár éve már ezen a területen dolgozom, így egy átlag adminhoz képest  várhatóan sokkal nagyobbak az elvárásaim, és sokkal kritikusabban nézem a dolgokat. (Lásd: a ‘Kapcsolódó Írások’ alatti cikkeimet)

  • A (clear) FTP hozzáférés szerintem vicc, így 2013-ban.
  • Az Apache szerverben csak ‘Basic Auth’ modul van, ami megint csak elavult már manapság. A ‘Digest Auth’ modul betöltése pedig nem lenne egy bonyolult feladat.
  • A már részletezett file rendszer jogosultsági problémák miatt egy ilyen tárhely a botnetek melegágya.
  • a PHP-hez semmiféle hardening megoldást nem használnak, nincsenek letiltva a system hívások, sem pedig a ‘remote’ függvények sem.
  • A KIFELÉ menő forgalom tiltására/korlátozására nincs lehetőség.

Összességében nézve lenne mit javítani a szolgáltatáson, de persze érthető, hogy ennyi pénzért nem várhatok túl nagy csodát… Jelen esetben úgy érzem jobban jártam volna több kisebb csomaggal, amikhez csak egyetlen domain rendelhető, mert így technikailag sajnos nem lehet őket megfelelően elszeparálni.

Home, Sweet Home

Oldalaim fennállásuk óta immár sokadszor költöztek, persze ezek kívülről szinte észrevétlen változások, amiket csak a nagyon paranoid és/vagy érdeklődő közönség vehetett észre…

Az eddigi költözések nagyrészt tesztelési célból történtek, a zrubi.hu kezdetben ugyanis az Andrews kft saját hosting környezetében lakott, egy amolyan privát VPS-en. Ott a költöztetéseknek konkrét célja volt, mégpedig az, hogy ‘élesben’ kipróbáljuk az új – ügyfeleknek előkészített – virtuális környezeteket… Nyilván valóan arany (admin) élet volt ez olyan szempontból, hogy a rendszer minden egyes rétegéhez és eleméhez teljes joggal hozzáfértem, hiszen jómagam is részt vettem az egész rendszer tervezésében kivitelezésében, és üzemeltetésében.

Nagyjából két éve (különböző okok miatt) elkezdtem tesztelni külsős VPS szolgáltatásokat is, amik közül az Amazon AWS minden szempontból kiemelkedőnek tűnt, és nem mellékesen egy éves ingyenes tesztelési lehetőséget biztosított – ami egyébként a mai napig is érvényben van. Hamar kiderült, hogy ez a szolgáltatás messze felülmúlja minden elképzelésemet, és bátran kijelenthetem, hogy igencsak fel kell kötni a gatyát annak, aki ezzel a szolgáltatással versenyezni szeretne! Árban biztosan lehet – de technológiailag nem hiszem… Ezzel azt hiszem egyértelműen kifejeztem teljes megelégedésemet a szolgáltatással kapcsolatban :) – Akit érdekelnek az ezzel kapcsolatos (technikai és/vagy marketing) részletek, maga is megnézheti/kipróbálhatja a fenti linket követve.

Azonban az ingyenes lehetőség végéhez közeledve beláttam, hogy a továbbiakban sajnos nekem erre az igen magas színvonalú és professzionális szolgáltatásra nem lesz pénzem :| Ezért aztán körbenéztem milyen lehetőségek vannak elérhető árban. Ez természetesen nagyon relatív, esetemben nonprofit, hobbiból fenntartott oldalakról lévén szó, még a hazai VPS szolgáltatások árai sem jöhettek szóba :(

Maradt tehát a ‘web tárhely’ szolgáltatás, amikből viszont megszámlálhatatlan van – még akkor is ha csak a magyar cégeket/szolgáltatásokat nézzük. Kipróbálási lehetőség ilyen árszegmensben szinte sehol nincs, a marketing anyagok alapján pedig képtelenség a megfelelő szolgáltatót kiválasztani, márt csak azért is mert ezek érthető okokból nagyon hasonlóak.

Választani közülük, kizárólag a (hozzáértő) ismerősök ajánlása alapján javasolt. Persze ez sem jelent túl sokat – ha nincs viszonyítási alap. Számomra az egyetlen (nem túl nagy) kitétel az volt, hogy domain regisztrációt – és ehhez kapcsolódóan DNS adminisztrációs felületet is biztosítsanak.

Ezek alapján a DotRoll szolgáltatására esett a választásom, így oldalaimat már az Ő szervereik szolgálják ki jelenleg is.

Munka, család, szabadidő

Az egyetlen állandó a változás maga.

Ezt már az őseink is jól tudták, és bizony ez alól az én életem sem kivétel. Így aztán, ez most remek kifogás arra, hogy miért nincsenek új cikkek/képek/beszámolók az oldalamon ;)

De hátha van akit érdekel mindez kicsit részletesebben:

Munka

Ahogy az az érdeklődők számára kiderülhetett, már nem az Andrews Kft-nél dolgozom. Nyár közepén ugyanis a Lufthansa Systems Network & Security csapatához csatlakoztam. Ahol a szakterületem nagyjából ugyan az maradt, de – annak ellenére, hogy jelentős mértékben használjuk – egyelőre nincs lehetőségem VMware termékekkel foglalkozni. Sőt, a különböző céges szabályzatok és korlátozások miatt a munkámmal kapcsolatos dolgat nem is publikálhatom szabadon.

Család

Szintén nem titkos információ az, hogy már van aki apának szólít :) Ahogy Ádám fiam cseperedik, egyre több időt, figyelmet és energiát igényel. Ezt azt hiszem egyetlen apukának/anyukának sem kell tovább ragozni… Szerencsére, a lelkes nagyszülők ebben jelentős szerepet vállalnak – ezúton is köszönet nekik ezért :)

Szabadidő

A fentiek miatt ez a fogalom erősen átértékelődött… sőt, leginkább amolyan „irányított szabadidővé” alakult az életem azon része amikor nem dolgozom, és épp nem is alszom. Ezért aztán, a valós kikapcsolódási lehetőségeket leginkább horgászattal töltjük. Ami persze nem látszik meg a régóta magára hagyott pecás oldalunkon… de talán majd egyszer lesz időnk arra is :)

Egyébként a maradék időmet szabadon beoszthatom a Jégkorong, a Fotózás, a Blog írás, és az EVE Online számára ;)