Na TS se uživatelé přihlašují ze stanic nebo z domova (v tom případě přes TS Gateway balící RDP do SSL).
1. Je to bezpečnější prostředí, například proto, že z těch terminálových serverů není přístup na internet. File share s tajnými daty není přístupný ze stanic ale pouze z TS, čili i kdyby si uživatel nějak dokázal na stanici spustit vir/trojan, ten se k datům nedostane. Programátoři vyvíjejí klíčovou aplikaci také pouze na TS, ze stanic nemají přístupné tajné SQL databáze.
Není to dobré řešení. Jde obecně o to, že z vnějšího prostředí do vnitřního se dostaneš, zatímco z vnitřního do vnějšího ne. Je to jako když testuji nějaký nedůvěryhodný software: taky si ho pustím ve virtuálu nebo na jiném HW, kam se vzdáleně připojuji z (důvěryhodného) desktopu – místo abych to dělal obráceně: měl desktop plný bordelu (třeba Windows) a z něj se připojoval na „bezpečný“ virtuál, ze kterého zadávám bankovní příkazy nebo kde (de)šifruji e-maily.
Může to pouze částečně pomoci proti náhodným necíleným útokům a
script-kiddies. Jinak je to ale spíš kontraproduktivní.
2. Psychologická bariéra - protože mají uživatelé tajná data pouze na jiném síťovém disku přístupném pouze z TS, mají jasné odlišení, co je tajné. Pro úplnost dodávám, že se chráníme proti útokům zvenčí nebo od neoprávněných pracovníků. Těm několika oprávněným pracovníkům musíme věřit (vždycky můžou třeba vyfotit obrazovku). Pro zajímavost: k tajným datům se nedostane ani majitel ani výkonný ředitel firmy.
Jako psychologická bariéra budiž – ale lépe by to fungovalo obráceně: připojovat se z důvěryhodného prostředí do nedůvěryhodného (např. do virtuálu, ve kterém mohou chodit na web)
BTW: máte jen tyhle dvě úrovně tajné/netajné? Nebo používáte nějakou podrobnější klasifikaci? Máte označkované jednotlivé soubory, podle toho, do jaké kategorie spadají? Máte pro to nějakou podporu v OS a aplikacích?
Ještě zmíním
Bell–LaPadula model. Ten ve zkratce stojí na principech:
- Subjekt na určité úrovni zabezpečení nesmí číst objekty na vyšší úrovni.
- Subjekt na určité úrovni zabezpečení nesmí zapisovat do objektů na nižší úrovni.
LAMP nedělá by default connection pooling? Já fakt nevím, ptám se.
Nedělá. Na druhou stranu to není až tolik potřeba, protože připojení k databázím jako MySQL nebo PostgreSQL je velice rychlé na rozdíl třeba od Oraclu (už je to pár let, tak třeba se to zlepšilo, ale co si pamatuji, byla to fakt hrůza).
Connection poolingu tedy dosáhneš buď použitím té Javy a aplikačního serveru, nebo nějakého modulu do Apache nebo třeba pomocí proxy. Případně platformy jako Python nebo Ruby budou mít taky svoje řešení, ale obvykle to nebývá výchozí stav (není to až tak potřeba, viz výše).
A pokud bych chtěl použít nějaký takový modul zajišťující SSO, jak velký to vyžaduje úpravy aplikace?
Pokud jde o weby, může ti HTTP server dodat tu informaci (kdo je uživatel, jaké má role a další atributy) přes HTTP hlavičky nebo proměnné prostředí. Tady už záleží na konkrétní aplikaci, jestli tyto informace dokáže zpracovat a věřit jim, místo aby si uživatele ověřovala sama. V Javě bývá dobrým zvykem, že aplikace přihlašování neřeší a tuhle informaci jí dodává aplikační server, takže je to jen otázka konfigurace.
Migraci neplánujem, jednak k tomu nemáme žádný důvod a druhak by to bylo finančně nerealizovatelné, protože máme MS technologie prolezlé celým IT jako rakovinu
Desítky aplikací v .NET, SQL servery včetně uložených procedur atd., složitá makra v Excelu a Wordu, část frontendů v Accessu...
Zmigrovat všechny aplikace není jen tak. Proto mi ta otázka přišla trochu zvláštní – nečekal bych, že byste najednou všechno odstavili a přepsali znova na otevřených technologiích.
Začal bych ale na těch desktopech – udělal z nich důvěryhodné prostředí a ty
legacy aplikace přesunul na ty terminálové server, které tak jako tak už máte. Jen bych to oddělil: práci s tajnými daty v jednom terminálu a sjíždění porna a warezu v jiném :-)
Jinak máme jeden Linux server s Baculou, který nám všechny ty Widle servery zálohuje 
Podobným způsobem můžeš postupně nahrazovat další a další aplikace. Časem ti zbude jeden terminálový server s Widlema a pár aplikacemi, které už nikdo nepoužívá, a zjistíš, že můžeš vypnout i ten.
O bezpečnosti open source vs. closed source…
Nechci se opakovat, v diskusích se tohle téma objevuje často, tak jsem to radši napsal do blogu:
Proč je svobodný software z principu důvěryhodnějšíA existují na linuxu programy tohle využívající; kolik jich je? Je to běžná věc? My to máme rozchozené u všech programů, ať už vlastních desktopových/webových, open source/komerčních webových nebo třeba komerčního účetnictví Pohoda.
To záleží na konkrétním programu a na tom, jak komunikuje, kam se připojuje. Jako transportní protokol můžeš použít SSH a pak ověření probíhá přes klíče a SSH agenta, takže se stačí přihlásit jednou, případně to nastavit tak, abys pokaždé zadával heslo/PIN ke klíči. Stejně tak když data budou proudit přes SSL/TLS – klíč bude na kartě a uživatel zadá jen PIN (ať už jednou nebo pokaždé). Totéž GPG pro šifrování/podepisování. Taky se koukni na ten Kerberos.
Jak se na Apachi udělá, aby web běžel pod konkrétním uživatelem? Jinak databáze máme na jiných strojích než weby.
Apache bude jen servírovat statické soubory, pod čím běží ty skripty/aplikace, záleží na konkrétní technologii. Třeba PHP pustíš v jiném procesu pod jiným uživatelem (třeba
www-aplikace1) a s Apachem to spojíš přes FastCGI. Podobně to funguje pro další platformy (Java, Python atd.).
Jestli jste někdo z Prahy a měli byste čas, tak bych klidně zašel pokecat na pivo. Jsem Win admin, ale nejsem zaslepený obhájce Windoze nenávidějící Linux 
Přijď na sraz OpenAltu (dříve LinuxAlt, možná znáš konferenci). Je to každý třetí pátek v měsíci, v Praze i v Brně současně a zprávičky vycházejí tady a na Ábíčku.