Apple na své vývojářské konferenci WWDC24 (Worldwide Developers Conference, keynote) představil řadu novinek: svou umělou inteligenci pojmenovanou jednoduše Apple Intelligence, iOS 18, visionOS 2, macOS Sequoia, iPadOS 18, watchOS 11, …
Vyšla nová verze XMPP (Jabber) klienta Gajim, která přidává podporu reakcí pomocí emoji (XEP-0444: Message Reactions) a citace zpráv (XEP-0461: Message Replies). Přehled dalších vylepšení je k dispozici na oficiálních stránkách.
Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.
Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).
Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
Díky diskusi o heslech v /etc/shadow
jsem zjistil, že po změně PAM pro využití blowfish se mi všechna hesla ukládají pomocí DES. Problém je v tom, že k samotnému pam_unix2
není skoro žádná dokumentace a ať se snažím jak se snažím tak tak blowfish nemůžu zprovoznit.
Jak jsem na to šel? Nejdřív jsem pomocí sed
-u změnil všechny výskyty pam_unix.so
na pam_unix2.so
a pak všechny výskyty md5
na blowfish
. Dále jsem v /etc/default/passwd
změnil CRYPT=md5
na CRYPT=blowfish
.
Výsledkem je, že passwd
(pro změnu hesla u existujícího uživatele – aby se použil jiný šifrovací algoritmus) přestává fungovat:
crypt_t: Don't know 0 Error: Password NOT changed. passwd: Authentication token manipulation error
Začal jsem tedy hledat, kde je problém. Postupným kombinováním jsem zjistil, že problém nastává okamžitě s přepsáním pam_unix.so
na pam_unix2.so
, které nereaguje ani na parametr md5.
Ze souboru /etc/pam.d/passwd
jsem i zkusil všechny parametry pro pam_unix2.so
odstranit (vzhledem k tomu, že v dokumentaci se píše: „/etc/default/passwd defines, which password encryption algorithm should be used in case of a password change.“).
Přesto se nic neděje, passwd stále nefunguje.
v /etc/pam.d/passwd
mám jen toto:
password required pam_unix2.so blowfish shadow
Nakonec jsem se problém s nefunkčností passwd
pokusil obejít pomocí chpasswd
. Ovšem právě chpasswd dává jako výsledek heslo v DES, nezávisle na tom, jaká je hodnota CRYPT
v /etc/default/passwd
. Ve jmenované diskusi pan Kubeček tvrdí, že podle dokumentace se typ hashe změní jen při přidání hesla, takže jsem heslo smazal, výsledkem je ale stále DES.
Nějaké nápady?
CRYPT_FILES
(v závislosti na tom, co je v /etc/nsswitch.conf
)?
CRYPT_YP=des
, podle komentáře je to ale je pro NIS.
Jen pro doplnění /etc/nsswitch.conf:
# Begin /etc/nsswitch.conf passwd: files group: files shadow: files publickey: files hosts: files dns networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: db files # End /etc/nsswitch.conf
Problém konečně úspěšně vyřešen.
Když jsem zjišťoval, jak se vlastně heslo ukládá, zjistil jsem, že podle dokumentace glibc crypt tvoří hash jen v DES popř. v md5. Následovalo googlování odkud jsem se dostal až na stránky Novellu, kde se mi podařilo najít jakousi knihovnu libxcrypt
, která podle popisu nahrazuje libcrypt
z glibc přidává podporu pro blowfish a bigcrypt. Vzhledem k tomu, že v Archu libxcrypt není, začal jsem hledat něco podobného. Našel jsem libmcrypt. Po krátkém prostudování zdrojáku pam_unix2 jsem ale zjistil, že použít jde jen libxcrypt. Vytvořil jsem tedy PKGBUILD, naistaloval libxcrypt, překompiloval PAM a tradá! Vše funguje.
Jinak díky za snahu. Teď se chystám napsat do Arch wiki malé how-to.
Tiskni Sdílej: