Po pěti letech vývoje vyšla česká počítačová hra Scarlet Deer Inn (ProtonDB). Scarlet Deer Inn je vyšívaná temná středověká pohádka. Zatímco život ve zdánlivě obyčejné vesnici se točí kolem běžných povinností a sousedských drbů, v podzemí se skrývají zlověstná tajemství.
Představen byl Raspberry Pi Touch Display 2 s uhlopříčkou 10 palců a rozlišením 1200 × 1920 pixelů. Cena je 80 dolarů.
RPCS3 (Wikipedie), tj. open source emulátor Sony PlayStation 3, snížil minimální požadavky. Nově jsou podporovány starší grafické karty ATI Radeon řady HD 2000, 3000 a 4000 z let 2007 až 2009. Na PC běží už 75 % všech her pro PlayStation 3. V budoucnu bude RPCS3 fungovat bez firmwaru z PS3. V RPCS3 byl implementován systémový modul cellSysmodule (𝕏).
Vyšel open-source nástroj winetop (MIT) — nativní CLI/TUI pro sledování a ukončování Wine, Proton, Lutris, Heroic a Bottles sezení. Seskupuje procesy podle WINEPREFIX / Steam AppId, umí bezpečně zabít jen hru (včetně Steam reaperu) a nabízí i skriptovatelné příkazy (list, kill, orphans, …). Balíčky jsou mimo jiné na crates.io, Copru (dnf copr enable kovariadam/winetop), PPA ppa:kovariadam/winetop a AUR (winetop-bin).
Ve spolupráci společností OpenAI a Work Louder byla představena (𝕏) hardwarová klávesnice Codex Micro pro práci s AI agenty. Cena klávesnice je 230 dolarů.
Byl vydán Mozilla Firefox 153.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 153 bude brzy k dispozici také na Flathubu a Snapcraftu.
V linux-cve-announce bylo oznámeno 433 zranitelností za jediný den (19. července).
Byla vydána nová verze 5.44 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 71 vývojářů. Změněno bylo přibližně 270 tisíc řádků v 1 300 souborech. Přehled novinek a změn v podrobném seznamu.
Na 23. září 2026 je do bratislavské Nové Cvernovky naplánovaná jednodenní konference #nobullshit.camp pro tech leadery, DevOps a platform inženýry. Mají tu zaznít upřímné příběhy z praxe o tom, co v produkčních systémech reálně fungovalo, co se pokazilo a co si z toho lidé odnesli. Témata pokrývají tři oblasti – DevOps a platformy (Kubernetes, cloud, provoz systémů), firemní kulturu a leadership. Program běží ve dvou formátech: hlavní
… více »Byla vydána nová verze 1.58 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Josephine Pfeiffer. Vypíchnout lze možnost nmtui zobrazit nastavení Wi-Fi jako QR kód nebo podporu CLAT (464XLAT) a tunelů GENEVE (Generic Network Virtualization Encapsulation).
Pokud chceme založit nového uživatele, musíme to udělat na dvou místech. Zavést uživatele do KDC (Key Distribution Center, v našem případě Kerbera) a nastavit mu v něm heslo. Tím je v databázi KDC vytvořeno sdílené tajemství mezi uživatelem a KDC, které je později používáno pro účely autentizace (vytváření lístků, ...).
Dále si musíme vytvořit záznam v PRDB (Protection Data Base). Vazba mezi
jednotlivými databázemi je tvořena automaticky na základě shody jména
uživatele (principalu) a důvěry mezi AFS servery a KDC.
Důvěru mezi nimi jsme zařídili při instalaci buňky ve
druhém díle, a to
příkazem asetkey, který přejal klíč z Kerberos keytabu do AFS
KeyFile, ten najdete v /etc/openafs/server/KeyFile.
Zkontrolovat si to můžete příkazy (druhý příkaz vyžaduje oprávnění root):
~$ bos listkeys afssrv.foo.bar key 2 has cksum 1976585079 Keys last changed on Tue Feb 22 17:17:19 2011. All done. ~# klist -k /var/lib/krb5kdc/keytab.afs -e Keytab name: WRFILE:/var/lib/krb5kdc/keytab.afs KVNO Principal ---- -------------------------------------------------------------------------- 2 afs/foo.bar@FOO.BAR (DES cbc mode with CRC-32)
Avšak soubor keytab.afs jsme použili pouze jako prostředek
pro výměnu klíčů při instalaci. Ve skutečnosti se musíme podívat do databáze
Kerbera, kde zjistíme aktuální informace o používaném klíči. Prozatím
opět zneužijeme privilegia uživatele root:
~# kadmin.local -p spravce/admin -q "getprinc afs/foo.bar" getprinc afs/foo.bar Principal: afs/foo.bar@FOO.BAR Expiration date: [never] Last password change: Tue Feb 22 16:01:02 CET 2011 Password expiration date: [none] Maximum ticket life: 0 days 10:00:00 Maximum renewable life: 7 days 00:00:00 Last modified: Tue Feb 22 16:01:02 CET 2011 (spravce/admin@FOO.BAR) Last successful authentication: [never] Last failed authentication: [never] Failed password attempts: 0 Number of keys: 1 Key: vno 2, DES cbc mode with CRC-32, no salt MKey: vno 1 Attributes: REQUIRES_PRE_AUTH Policy: [none]
Zde vidíme informace o principalu afs/foo.bar@FOO.BAR (služba AFS),
jehož klíč (de facto heslo) jsme uložili do keytab.afs,
abychom ho mohli do AFS naimportovat příkazem asetkey.
Pro nás je důležité, že odpovídají čísla klíčů a jsou ve správném
šifrování, které umí OpenAFS. AFS tak má k dispozici klíč,
kterým dokáže ověřit, že token vytvořený z lístku pro službu
afs/foo.bar@FOO.BAR není nějaký podvrh. Celá záležitost
s protokolem Kerberos je trochu zamotanější, ale pro naše potřeby to stačí,
méně náročným lze doporučit
Frantu a jeho krabice,
ostatním už jedině
dokumentaci prokolu Kerberos.
Je doporučení, že jednou za čas byste klíč měli vyměnit. To znamená celou
operaci zopakovat a výsledný /etc/openafs/server/KeyFile
ručně rozkopírovat na všechny vaše servery. Důvodem je slabost šifry DES
(kterou dnes lze prolomit do jednoho dne), ale jiné šifrování
zatím OpenAFS nepodporuje.
Po odbočce k protokolu Kerberos si založíme jednoho administrátora, abychom jím pak mohli vytvářet uživatele. V systému se rozlišují 4 základní typy principalů: administrátoři, uživatelé, počítače (host) a služby. Je vhodné je rozlišovat, protože v databázi KDC se používají tzv. politiky (policy), kterými jednotlivé principaly lze předkonfigurovat. Vytvoříme tedy tyto politiky:
~$ su Password: ~# kadmin.local -p kadmin/admin@FOO.BAR Authenticating as principal kadmin/admin@FOO.BAR with password. kadmin.local: add_policy -minlength 8 -minclasses 3 admin kadmin.local: add_policy -minlength 8 -minclasses 2 -maxlife "365 days" user kadmin.local: add_policy -minlength 8 -minclasses 4 host kadmin.local: add_policy -minlength 8 -minclasses 4 service
Všechny politiky vyžadují heslo minimální délky 8 znaků a podle důležitosti
musí obsahovat různé množství tříd znaků (čísla, velká písmena, malá písmena,
interpunkce a ostatní znaky). Jak je vidět, na uživatele jsme nebyli tak přísní
jako na administrátory s požadovanou kvalitou hesla. Ale uživatelé si každý
rok musí změnit heslo příkazem kpasswd. Administrátoři si heslo
nemusí měnit, defaultně je nastaven maxlife na 0, což se bere jako nekonečno.
Ztráta jejich přístupu k systému by mohla být fatální a také se předpokládá
nějaké povědomí o potřebě měnit hesla.
Než začneme vytvářet nový principal v Kerberu pro administrátora,
je vhodné se rozmyslet, jak budete rozlišovat administrátory od uživatelů.
Nejčastěji se administrátorům připojuje přídomek admin
nebo root. Ale lze narazit i na jiné varianty. V obecném formátu
principalu primary/instance@REALM využijeme část instance. Je vhodné
mít všude sladěné uživatelské jména a tak doporučuji, abyste si
administrátorskou identitu odvodili od svého běžného loginu.
Takže pro uživatele lojza budeme mít principal
lojza/admin@FOO.BAR. V příštím díle pak shodu loginu a principalu
využijeme k automatickému vytváření lístku.
Můj oblíbený login je svamberg
takže si pro něj vytvořím principal (stále pracujeme v kadmin.local):
kadmin.local: add_principal -policy admin svamberg/admin@FOO.BAR Enter password for principal "svamberg/admin@FOO.BAR": Re-enter password for principal "svamberg/admin@FOO.BAR": Principal "svamberg/admin@FOO.BAR" created. kadmin.local: quit
Nyní sice máme administrátora, ale ten nemá žádná oprávnění.
Použijeme tedy hvězdičkovou notaci v souboru
/etc/krb5kdc/kadm5.acl abychom všem administrátorům
(*/admin) přidali všechna oprávnění (*).
Pak provedeme restart admin serveru a už nebudeme uživatele
root potřebavat.
~# echo "*/admin *" >> /etc/krb5kdc/kadm5.acl ~# /etc/init.d/krb5-admin-server restart Restarting Kerberos administrative servers: kadmind ~# exit
A teď vytvořeným administrátorem si můžeme vytvořit uživatele,
tentokrát už nepoužijeme program kadmin.local, který přistupuje
k databázi KDC přímo. Spustíme kadmin, kterým se
regulérně přihlásíme k administrátorskému rozhraní KDC serveru, kde
vytvoříme běžného uživatele (v jejich principalu se
nepoužívá část instance):
~$ kadmin -p svamberg/admin Authenticating as principal svamberg/admin with password. Password for svamberg/admin@FOO.BAR: kadmin: add_principal -policy user svamberg Enter password for principal "svamberg@FOO.BAR": Re-enter password for principal "svamberg@FOO.BAR": Principal "svamberg@FOO.BAR" created. kadmin: quit
Program kadmin můžete použít odkudkoliv, kde budete mít svůj
/etc/krb5.conf (nebo si vzpomenete na adresu admin serveru,
viz man kadmin).
Principal pro uživatele i administrátora máme vytvořen, ale nemáme žádnou návaznost na AFS. Token sice vytvoříme, ale je nám prakticky k ničemu, protože není svázaný s žádným uživatelem:
~$ kinit svamberg
Password for svamberg@FOO.BAR:
~$ aklog
~$ tokens | nl
1 Tokens held by the Cache Manager:
2 Tokens for afs@foo.bar [Expires Apr 2 10:09]
3 --End of list--
Na řádku 2 je jen obecný token a není v něm řečeno, kterému uživateli
z AFS patří. Budeme tedy naposledy potřebovat token od afsadmin:
~$ kinit afsadmin
Password for afsadmin@FOO.BAR:
~$ aklog
~$ tokens | nl
1 Tokens held by the Cache Manager:
2 User's (AFS ID 1) tokens for afs@foo.bar [Expires Apr 2 10:16]
3 --End of list--
Zatím je toto jediný token, který máme ve skupině
system:administrators, proto napřed vytvoříme identitu
pro našeho nového správce v AFS a pak jej do skupiny přidáme. AFS pro
oddělení jména a funkce nepoužívá lomítko nýbrž tečku, proto si já
založím uživatele svamberg.admin:
~$ pts createuser svamberg.admin User svamberg/admin has id 2 ~$ pts adduser svamberg.admin system:administrators ~$ pts members system:administrators Members of system:administrators (id: -204) are: afsadmin svamberg.admin
Zařazení do této skupiny nám ale nedává úplně všechna oprávnění.
Můžeme sice dělat některé operace, ale již v příštím díle bychom zjistili,
že takto nemůžeme například založit nový volume. Proto svého administrátora
přidáte na každý AFS server do souboru UserList (ten se nachází v
/etc/openafs/server/). Pro tuto operaci použijeme příkaz:
~$ bos adduser afssrv.foo.bar svamberg.admin
Aktuální obsah seznamu privilegovaných uživatelů si lze vypsat příkazem:
~$ bos listuser afssrv.foo.bar SUsers are: afsadmin svamberg.admin
Správce afsadmin ponecháme v seznamu, jeho přístup na konci
tohoto článku odepřeme v Kerberosu. Jeho identitu můžeme tak snadno obnovit
a použít jej v případě nějaké krize.
A teď už můžete používat svou vlastní administrátorskou identitu pro správu
celého systému. Hned ji využijeme na to, abychom do Protection Data Base (PRDB)
přidali i obyčejného uživatele. Výjimečně si pustíme aklog v debug
režimu, kde je pěkně vidět, jak z Kerberos lístku vytvoří AFS token:
~$ kinit svamberg/admin Password for svamberg/admin@FOO.BAR: ~$ aklog -d Authenticating to cell foo.bar (server afsdb.foo.bar). Trying to authenticate to user's realm FOO.BAR. Getting tickets: afs/foo.bar@FOO.BAR Using Kerberos V5 ticket natively About to resolve name svamberg.admin to id in cell foo.bar. Id 2 Set username to AFS ID 2 Setting tokens. AFS ID 2 / @ FOO.BAR ~$ tokens Tokens held by the Cache Manager: User's (AFS ID 2) tokens for afs@foo.bar [Expires Apr 2 10:56] --End of list--
Lze doporučit nějak vhodně oddělit uživatele od systémových účtů. To lze provést obdobně jako v Linuxu, kdy systémové účty mají nižší ID a běžní uživatelé začínají od čísla 1000. To lze nastavit i u účtů v AFS, posuneme čítač pro vytváření uživatelů na vyšší číslo. To samé provedeme i čítači skupin, které se počítají v záporné ose.
~$ pts listmax Max user id is 2 and max group id is -205. ~$ pts setmax -group -1000 -user 1000 $ pts listmax Max user id is 1000 and max group id is -1000.
Jako administrátor lze vytvořit obyčejného uživatele v PRDB:
~$ pts createuser svamberg User svamberg has id 1001
Když už máme svou vlastní a vyzkoušenou správcovskou identitu,
můžeme zakázat uživatele afsadmin. To zařídíme
přes kadmin, kde zakážeme tvorbu Kerberos lístku (a potažmo
tokenu) pro tento principal:
~$ kadmin -p svamberg/admin Authenticating as principal svamberg/admin with password. Password for svamberg/admin@FOO.BAR: kadmin: modify_principal -allow_tix afsadmin Principal "afsadmin@FOO.BAR" modified. kadmin: quit ~$ kinit afsadmin kinit: Clients credentials have been revoked while getting initial credentials
Stejným způsobem lze zablokovat i ostatní uživatelské principaly a tím jim odepřít přístup nejen k AFS, ale i jiným službám, které můžete mít na Kerberos navázány.
Každý správce by měl mít svou běžnou (uživatelskou) identitu a k ní samostatnou administrátorskou. Není dobrý nápad mít jednu identitu, ke které si budete předávat heslo. Ztrácí se tím pak informace, kdo co udělal a také to spěje jen k problémům v budoucnu. KDC umožňuje drobnější dělení práv a spoustu dalších detailů, ale to už je trochu mimo téma tohoto seriálu.
Správci jsou už spokojení, ale pro uživatele jsme toho moc neudělali. Napravíme to tedy v příštím díle, kde jim vytvoříme jejich vlastní prostor a také je naučíme pracovat se skupinami.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: