Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.
Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU
… více »GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.
Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.
Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.
Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.
Mnoho problémů s bezpečností linuxových strojů může být připisováno chabému zabezpečení, pokud má útočník fyzický přístup k počítači. Tehdy si s ním může dělat co si jen zamane (včetně získání všech dat na počítači uložených). Napadne nás jistě pousta scénářů, kdy k něčemu podobnému může dojít a kdy zneužití (prozrazení) může náš život přinejmenším zkomplikovat.
Je tedy jistě vhodné tomu nějak zabránit. Jednou z nepříliš rozumných možností by bylo před naším počítačem hlídkovat nebo jej uložit někde do trezoru. Tento postup je jistě vhodný, ale musíme být dostatečne silní, aby se našeho harddisku stejně nikdo nezmocnil.
Daleko elegantnější bude, když obsah našeho disku zašifrujeme a případný útočník pak dostane pro něj naprosto nepoužitelnou hromádku dat. Postup jak šifrovaný filesystém vytvořit si právě zde vysvětlíme.
Než se pustíme do vytvoření šifrovaného filesystému, je potřeba začít poněkud zeširoka. V dnešní době můžeme pomocí externích patchů linuxového jádra zašifrovat disk, síťové spojení atd. V tomto článku se zaměříme hlavně na Linux CryptoAPI.
Nemusíme si zde jistě dlouze vysvětlovat, o co to vlastně v šifrování jde. Pokud si v této oblasti někdo není příliš jistý, na internetu se jistě dá objevit spousta materiálů, které pomohou nejasnosti eliminovat.
Tím, že jsme přidali podporu šifrování do "kernel space", jsme získali spoustu nových možností jak důležité informace více zabezpečit. Od šifrování disků po IPsec a jiné druhy šifrování komunikace.
V současné době jsou k dispozici dvě možnosti podpory šifrování na úrovni kernelu. Je jím loop-AES a CryptoAPI, kterým se budeme zabývat dále. Obě z těchto variant umožňují použití bez nutnosti kompilace nového kernelu (stačí pouze zkompilovat příslušné moduly), a dokonce bez nutnosti restartu stroje. Oba způsoby tedy umožňují podporu šifrování v kernelu formou modulů. V našem seriálu si ukážeme jak zprovoznit CryptoAPI při kompilaci kernelu.
Loop-AES je navržen pouze pro šifrování filesystému. Pro šifrování používá Advanced Encryption Standard (AES). Jeho implementace je rychlá a pro Intel x86 procesory je dokonce přímo v assembleru (pro ostatní platformy musíme použít implementaci v jazyce C). Další informace najdeme na domovské stránce tohoto projektu http://loop-aes.sourceforge.net/.
Naopak CryptoAPI poskytuje daleko rozsáhlejší možnosti použití. Obsahuje v sobě rozhraní, které umožňuje ostatním modulům využít možnosti šifrování dat. Šifrování filesystému je pouze jednou z aplikací. Další výhodou je možnost využití 12 různých šifrovacích technik a podpora použití filesystémů šifrovaných pomocí loop-AES.
Budeme se zde zabývat instalací s kernelem řady 2.4, v případě 2.5 je problém jednodušší, jelikož podpora je přímo součástí jádra. K instalaci CryptoAPI tedy budeme potřebovat zdrojový kód kernelu (je také dobré vědět, o jaký kernel se jedná), dále pak zdrojové kódy CryptoAPI. Zde je nutno říci, že díky lehce zavádějícím informacím na domovských stránkách projektu CryptoAPI. instalace není úplně triviální záležitostí, Možností, jak CryptoAPI nainstalovat je více. My si zde povíme o jedné z nich, která by měla fungovat.
Předpokládejme kernel 2.4.20, jistě jej spousta z nás používá. Je nutné si
stahnout zdrojové kódy tohoto kernelu (pokud je na svém stroji již nemáme).
Dále získáme patch z adresy:
http://www.kernel.org/pub/linux/kernel/people/hvr/testing/.
Pro náš příklad se bude jednat o soubor patch-int-2.4.20.1.gz
. Následující
postup není jedinou možností, nicméně v praxi fungoval. Tedy vzhůru do
práce!
Nejprve musíma patch rozbalit a poté aplikovat na zdrojové kódy připraveného kernelu. Čili zkopírujeme jej do adresáře se zdrojovými kódy kernelu a aplikujeme následujícím příkazem:
patch -p1 < patch-int-2.4.20.1
Nyní musíme nastavit konfigurační soubor kernelu, abychom poté mohli
získat potřebné moduly (nebo jádro s přímou podporou CryptoAPI). Po
aplikování patche nám přibude ve výběru (jádro nejlépe nastavíme utilitou
spuštěnou příkazem make menuconfig
případně
xconfig
) další položka v menu s názvem Cryptography support
(CryptoAPI). V ní je nutné zaškrtnout položky CryptoAPI support a v
Crypto Devices položku Loop Crypto support. Dále si vybíráme z několika možných
šifer a tzv. one-way (jednocestné) funkce. Je vhodné vybrat alespoň jednu
šifru, jelikož bychom pak neměli čím šifrovat. Při výběru té správné nám
částečně pomůže následující kapitola. Také nesmíme zapomenout zaškrtnout
podporu Loopback device v sekci Block devices! Je to jediná položka,
kterou potřebujeme a která je mimo sekci Cryptography support. Proto je
celkem jednoduché ji vynechat.
Předpokládejme, že již máme vybrány všechny nutné volby. Můžeme se tedy pustit do kompilace kernelu. Postup se od tohoto okamžiku neliší od běžné praxe, proto jím nebudeme zdržovat a půjdeme dále.
Dalším nezbytným krokem je stahnutí a nainstalování programu losetup, který je součástí balíčku util-linux. Ukážeme si tedy, jak jej správně nainstalovat.
Nejdříve si musíme balíček stáhnout. Najdeme jej například na serveru ftp.kernel.org nebo na dalších mirrorech se zdrojovými kódy kernelu. Pro správný chod tohoto softwaru ještě potřebujeme patch, který najdeme například zde.
Jelikož není k dispozici patch pro nejnovější verzi util-linux, použijeme verzi 2.11r. Stáhneme tedy util-linux-2.11r.tar.gz a odpovídající patch util-linux-2.11r.patch.gz. Rozbalíme util-linux i patch a patch na nej aplikujeme běžným způsobem:
patch -p1 < util-linux-2.11r.patch
Dále postupujeme podle přiloženého souboru INSTALL, obvykle klasickou kombinací příkazů:
./configure
make
make install
Nyní máme vše připraveno a můžeme začít používat šifrované filesystémy.
Výběr šifry, kterou použijeme pro náš filesystém, je jistě také důležitou volbou. Nebudeme si zde uvádět fakta o bezpečnosti jednotlivých šifer, zaprvé se to na tento server tolik nehodí a navíc by to bylo moc obsáhlé. Všem zájemcům doporučuji použít vyhledávače a najít si potřebné informace na internetu, určitě neco najdou.
Kromě bezpečnosti nás však bude zajímat i rychlost jednotlivých šifer, jelikož nikdo si nechce svůj počítač příliš zpomalovat. Hodnoty uvedené v tabulce nesouvisí přímo s CryptoAPI a dokonce nebyly získány na operačním systému Linux. Nám však mohou posloužit k porovnání jednotlivých šifer mezi sebou, o což nám jde.
U každé šifry je uveden počet zašifrovaných bytů dat za sekundu. Test byl proveden z dnešního hlediska již na zastaralém počítači (s procesorem Intel Celeron 450MHz). V dnešní době dosáhneme hodnot výrazně vyšších.
Sifra | B/s |
AES (Rijndael) | 11751322 |
Blowfish | 9013043 |
CAST5 (CAST-128) | 9019403 |
DES | 7372170 |
GOST | 5216999 |
IDEA | 6388278 |
MARS | 16690115 |
RC5 | 26025058 |
RC6 | 20230270 |
Serpent | 6982324 |
Twofish | 10168780 |
3DES | 2457390 |
To je pro dnešek vše. Příště si povíme něco o vytváření a používání šifrovaných filesystémů.
Nástroje: Tisk bez diskuse
Tiskni Sdílej: