Byla vydána nová verze 9.10 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Český LibreOffice tým vydává překlad příručky LibreOffice Math 24.8. Math je modul editoru vzorců v kancelářském balíku LibreOffice a poskytuje možnosti rozvržení pro zobrazení matematických, chemických, elektrických nebo vědeckých vzorců ve standardní písemné notaci. Příručka je ke stažení na stránce dokumentace.
Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2024. Ke konci roku 2024 vlastnila 305 180 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.
Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250211 mikrokódů pro své procesory řešící 5 bezpečnostních chyb.
Byla vydána nová verze 1.24 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.
Jiří Eischmann upozorňuje, že GNOME nemá české překladatele: "Posledních minimálně 15 let byly překlady GNOME do češtiny ve výborném stavu. U každého vydání jsem jen hlásil, že je vše přeložené, poslední roky to platilo i pro drtivou většinu dokumentace. Poslední rok se to ale začalo zadrhávat. Přispěvatelé, kteří to dlouhé roky táhli, odešli a není nikdo, kdo by to po nich převzal. Proto jsme se rozhodli jít s pravdou ven: GNOME momentálně nemá české překladatele a pokud se toho neujme někdo nový, překlady začnou postupně upadat."
Otevřený zvukový bezztrátový kodek FLAC (Free Lossless Audio Codec, Wikipedie) byl vydán v nové verzi 1.5.0. Hlavní novinkou je podpora vícevláknového kódování. V prosinci loňského roku byl FLAC formálně specifikován v RFC 9639.
Evropská unie hodlá iniciovat investice do rozvoje umělé inteligence v hodnotě 200 miliard eur, v přepočtu zhruba pět bilionů korun. V projevu na summitu o umělé inteligenci v Paříži to v úterý řekla předsedkyně Evropské komise Ursula von der Leyenová. Umělá inteligence podle ní může přispět mimo jiné ke zvýšení konkurenceschopnosti.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.3 (Mastodon). Přehled novinek i s videi a se snímky obrazovky v oficiálním oznámení. Podrobný přehled v seznamu změn.
Lennart Poettering se na Mastodonu rozepsal o novince v systemd, na které pracuje: systemd bude umět nabootovat z obrazu disku staženého pomocí HTTP v rámci initrd.
Při instalaci služeb zajišťujících běh (nejen) poštovního serveru se často setkáte s potřebou snadné kontroly funkčnosti služby pomocí jednoduchého programu. Možnost ručně si zadat příkazy a sledovat při tom odezvu systému je většinou neocenitelná. V článku vám ukážu, jak snadno testovat služby POP3, IMAP, SMTP a jejich varianty zabalené do SSL.
Pro otestování použijeme běžné nástroje dostupné snad v každé "normální" distribuci linuxu, a to programy telnet a openssl. Telnet nám poslouží pro připojení na POP3, IMAP a SMTP server. Openssl využijeme pro ověření funkčnosti POP3s, IMAPs a SMTPs.
Jako SMTP server používám postfix, o POP3 a IMAP se stará dovecot. Výpisy zde uvedené se můžou mírně lišit podle toho, jaké programy použijete.
Program telnet je dostupný v Linuxu (a UNIXech) i v MS Windows, umožňuje interaktivní TCP spojení na server. Spouští se z příkazového řádku:
$ telnet SERVER PORT
SERVER můžete zapsat pomocí doménového jména nebo IP adresy. PORT je číslo TCP portu a lze ho zapsat buď jako číslo nebo jako textový název, který je danému číslu portu přiřazen v souboru /etc/services.
Program telnet (a navázané spojení) ukončíte pomocí stisku kombinace
kláves ^]
a ^d
.
[tsunami@vodik]$ telnet tsunami.locnet pop3 Trying 192.168.0.10... Connected to tsunami.locnet. Escape character is '^]'. +OK Dovecot ready. ^] telnet> Connection closed.
Pokud má někdo odpor k aplikacím spouštěným z příkazového řádku, může použít například grafický program PuTTY (Linux, Windows), ale dle mého názoru je to zbytečné.
SMTP protokol je relativně jednoduchý protokol založený na textové komunikaci, používá TCP port 25. Původní popis protokolu najdete v RFC821 (z r. 1982), aktualizovaný popis najdete v RFC2821 (z r. 2001). Pro kompletní popis protokolu tu není místo, proto zde uvedu praktickou ukázku toho, jak se přes telnet pošle email. Všechny tučně zapsané řádky jsou zaslané klientem (mnou naťukané do klávesnice).
Připojíme se telnetem na server na port 25 a počkáme si na odpověď od serveru.
[tsunami@vodik]$ telnet tsunami.locnet 25 Trying 192.168.0.10... Connected to tsunami.locnet. Escape character is '^]'. 220 tsunami ESMTP Postfix (Debian/GNU)
Nejprve se identifikujeme:
EHLO vodik.locnet 250-tsunami 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250 8BITMIME
Uvedeme, od koho email pochází:
MAIL FROM: od.koho.ten@email.je 250 Ok
a komu ho zasíláme
RCPT TO: tsunami@tsunami.locnet 250 Ok
Potom můžeme začít psát vlastní zprávu, psaní ukončíme pomocí tečky na samostatném řádku a "odentrování".
DATA 354 End data with <CR><LF>.<CR><LF> Subject: pozdrav od anonyma Ahoj, jak se mas? . 250 Ok: queued as 0AA3929FAA
Email byl zařazen do fronty a my můžeme ukončit svou práci:
QUIT 221 Bye
Jak vidíte, docela jednoduše můžete zasílat emaily, i když nemáte vhodného
emailového klienta, jako je Mozilla nebo Outlook
Protokol pop3 slouží ke stažení pošty ze serveru ke klientovi. POP3 přístup k poště je vhodný, pokud potřebujete rozumný přístup k poště přes pomalou linku případně nemůžete/nechcete uchovávat všechnu poštu na serveru. Pop3 je většinou dostupný na portu 110/tcp, je popsán v RFC1939, RFC2449 a RFC1734.
Připojíme se k serveru
[tsunami@vodik]$ telnet tsunami.locnet 110 Trying 192.168.0.10... Connected to tsunami.locnet. Escape character is '^]'. +OK Dovecot ready.
Přihlásíme se jako uživatel k serveru:
USER tsunami +OK PASS heslo +OK Logged in.
Příkazem STAT můžeme zjisit počet zpráv a jejich velikost, případně si je příkazem LIST vypíšeme.
STAT +OK 3 1619 LIST +OK 3 messages: 1 433 2 486 3 700 .
Rozhodl jsem se stáhnout zprávu číslo 2.
RETR 2 +OK 486 octets Return-Path: <od.koho.ten@email.je> X-Original-To: tsunami@tsunami.locnet Delivered-To: tsunami@tsunami.locnet Received: from vodik.locnet (vodik [192.168.0.13]) by tsunami (Postfix) with ESMTP id 0AA3929FAA for <tsunami@tsunami.locnet>; Sat, 7 Jan 2006 23:36:40 +0100 (CET) Subject: pozdrav od anonyma Message-Id: <20060107223653.0AA3929FAA@tsunami> Date: Sat, 7 Jan 2006 23:36:40 +0100 (CET) From: od.koho.ten@email.je To: undisclosed-recipients:; Ahoj, jak se mas? .
Stažený email označím ke smazání.
DELE 2 +OK Marked to be deleted.
Ukončení spojení zároveň znamená i smazání označených zpráv.
QUIT +OK Logging out, messages deleted.
Další protokol, kterým se dostaneme ke své poště na serveru, se jmenuje IMAP (Internet Message Access Protocol, aktuálně ve verzi 4v1). Protokol je složitější než POP3 a nabízí o mnoho víc funkcí. První rozdíl, kterého si všimnete, je, že pošta se nechává na serveru. Protokol je také navržen pro současné připojení více klientů k jednomu mailboxu. IMAP funguje přes TCP port 143. Protokol IMAP je popsán v RFC3501, zajímavé informace k IMAPu najdete také na webu www.imap.org
Připojíme se na server a přihlásíme se jako uživatel:
[tsunami@vodik]$ telnet tsunami.locnet 143 Trying 192.168.0.10... Connected to tsunami.locnet. Escape character is '^]'. * OK Dovecot ready. . LOGIN tsunami heslo . OK Logged in.
Každý příkaz musí být uveden unikátním identifikátorem v rámci daného sezení. Vypíšeme si, co nám server nabízí za funkce.
IDENT01 CAPABILITY * CAPABILITY IMAP4rev1 SORT THREAD=REFERENCES MULTIAPPEND UNSELECT LITERAL+ IDLE CHILDREN NAMESPACE LOGIN-REFERRALS IDENT01 OK Capability completed.
Pro další ukázky raději použiju kratší identifikátory. Zkusíme si vypsat dostupné složky.
id01 LIST "" "*" * LIST (\NoInferiors \UnMarked) "/" "Trash" * LIST (\NoInferiors) "/" "Pracovni" * LIST (\NoInferiors \UnMarked) "/" "Soukrome" * LIST (\NoInferiors) "/" "Linux" * LIST (\NoInferiors) "/" "Solaris" * LIST (\NoInferiors) "/" "INBOX" id01 OK List completed.
Z předchozího výpisu jsme zjistili, že na serveru existuje několik složek. "Přepneme" se do složky Linux.
id02 SELECT "Linux" * FLAGS (\Answered \Flagged \Deleted \Seen \Draft) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted. * 2 EXISTS * 0 RECENT * OK [UIDVALIDITY 1136680099] UIDs valid * OK [UIDNEXT 4] Predicted next UID id02 OK [READ-WRITE] Select completed.
Vypíšeme si seznam všech emailů ve složce:
id03 FETCH 1:* FLAGS * 1 FETCH (FLAGS (\Seen)) * 2 FETCH (FLAGS (\Seen)) id03 OK Fetch completed.
Stáhneme si email č. 2:
id04 FETCH 2 body[text] * 2 FETCH (BODY[TEXT] {75} mkdir: cannot create directory `/var/run/sendmail/msp': Permission denied ) id04 OK Fetch completed.
Myslím, že to na ukázání stačilo, takže se odhlásíme.
id05 logout * BYE Logging out id05 OK Logout completed.
Dnes je téměř samozřejmostí, že admin přehodí většinu veřejně dostupných služeb na jejich zabezpečenou variantu (zabalenou do SSL). Klasickým telnetem v tomto případě nic nevyzkoušíte, protože telnet neumí SSL. Pro připojení na server proto použijeme program openssl.
O programu openssl si spousta lidí myslí, že to je ta divná věc na generování certifikátů, ale on umí být i klientskou aplikací pro SSL spojení. Stačí ho spustit s parametrem s_client:
$ openssl s_client -host SERVER -port PORT
Openssl s_client umožňuje zadat spoustu dalších parametrů, například umožní využít certifikát certifikační autority případně zaslat serveru klientský certifikát. Seznam všech parametrů dostanete, pokud zadáte jakýkoliv neznámý parametr:
[tsunami@vodik]$ openssl s_client -h unknown option -h usage: s_client args -host host - use -connect instead ...
Když se připojíte k serveru pomocí openssl, na obrazovce se zobrazí informace o navazovaném SSL spojení:
[tsunami@vodik]$ openssl s_client -host tsunami.locnet -port 995 CONNECTED(00000003) depth=1 /C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=Zdenek Burda/emailAddress=zdenda@ zdenda.com verify error:num=19:self signed certificate in certificate chain verify return:0 --- Certificate chain 0 s:/C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=tsunami.locnet/emailAddress=zdenda@zdenda.com i:/C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=Zdenek Burda/emailAddress=zdenda@zdenda.com 1 s:/C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=Zdenek Burda/emailAddress=zdenda@zdenda.com i:/C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=Zdenek Burda/emailAddress=zdenda@zdenda.com --- Server certificate -----BEGIN CERTIFICATE----- MIIC4jCCAcoCAQIwDQYJKoZIhvcNAQEFBQAweDELMAkGA1UEBhMCQ1oxCjAIBgNV ... gBRJXBktFFaRCI+4pUiUi02o+pfkkgeGoVBRtycauOXZ7TVT97aihjk8Qxj98Bys lDt47imjTMwwh8LSOz0M6OsmIupVTw== -----END CERTIFICATE----- subject=/C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=tsunami.locnet/emailAddress=zdenda@zdenda.com issuer=/C=CZ/ST=-/L=Prag/O=Zdenek Burda/CN=Zdenek Burda/emailAddress=zdenda@zdenda.com --- No client certificate CA names sent --- SSL handshake has read 2016 bytes and written 340 bytes --- New, TLSv1/SSLv3, Cipher is AES256-SHA Server public key is 1024 bit Compression: NONE Expansion: NONE SSL-Session: Protocol : TLSv1 Cipher : AES256-SHA Session-ID: EACB77B795913F22DC65CD867301E84913CDBEAA1FE89E5A90A32E2891297E58 Session-ID-ctx: Master-Key: F1480F1397A2A1DB995B4FB8AC720FEF6CFE77F02FBB95407576B3C023620 6736ABDE4FE2108AA936EC115B365CF70BA Key-Arg : None Start Time: 1136712490 Timeout : 300 (sec) Verify return code: 19 (self signed certificate in certificate chain) --- +OK Dovecot ready.
Po připojení pomocí openssl můžete zadávat příkazy stejně jako při připojení telnetem. Openssl ukončíte pomocí ^d nebo ^c.
V případě mého spojení pomocí openssl se ukázalo hlášení o self signed certifikátu. Bylo to způsobené tím, že openssl nezná certifikát certifikační autority, která podepsala certifikát serveru. Pokud openssl vnutíme certifikát CA (CA.crt), bude vše v pořádku.
[tsunami@vodik]$ openssl s_client -host tsunami.locnet \ -port 995 -CAfile CA.crt
Docela zajímavou funkcí je, pokud server vyžaduje, aby mu klient zaslal svůj certifikát, jinak mu nedovolí připojení/přihlášení. OpenSSL tento certifikát předáme volbami -cert a -key.
[tsunami@vodik]$ openssl s_client -host tsunami.locnet \ -port 995 -CAfile CA.crt -cert burda.crt -key burda.key
Nejčastěji používané porty pro SSL varianty běžných služeb:
Jednotlivé protokoly jsem zde nepopisoval, protože je vše pěkně vysvětlené v odkazovaných RFC. Uvedený způsob ovládání emailu se nehodí jen pro testování, ale někdy se dá využít i v normálním životě. Pokud máte ve schránce velký email, který nechcete/nemůžete stáhnout, tak jeho smazání přes pop3 telnetem je záležitost na chvilku. Telnet na SMTP server se hodí, pokud zkoušíte, jestli můžete přijímat poštu zvenku, a přitom ještě není správně nastavený DNS server (pokud byste si zkusili poslat email klasickým způsobem z nějakého freemailu, nepřišel by, protože neví, kam má jít).
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
printf 'uzivatel@domena\0uzivatel@domena\0heslo' | mimencodevygenerovany retezec se posle
AUTH PLAIN retezec
/usr/sbin/stunnel -r tsunami.locnet:25 -c -f -n smtp -P none -D debug
smtp-source
. Hodnocení: čtyři praček Whirlpool.
S úsměvem vzpomínám, jak jsem loni učil na SSŠVT v Praze na Proseku a při maturitě zkoušel ze zaslání a výběru pošty přes protokoly SMTP, IMAP-4 a POP-3. Trénovali jsme to cca měsíc a troufám si říct, že to dobrá polovička lidí ovládala (pro nezasvěcené, polovička je obrovský úspěch). Při maturitě jsme z toho udělali jakousi show, když měl zkoušený poslat jménem zástupce ředitele emaily a následně si je přečíst. Předseda komise byl u vytržení a strašně se mu ta demonstrace líbila, zejména po mém vysvětlení, že úplně stejně pracuje outlook. Zástupce ředitele, zkušený síťař, nevěřícně kroutil hlavou a s údivem se mě ptal, cože jsem je to učil. Nezbylo mi než-li prásknout pravdu, že jsem je učil i související RFC, o kterých jim taktně řekli, 6e sice existují, ale že to není nic pro ně.
Docela jsme se u maturity i nasmáli, zejména když jsem nadhodil téma filtrování pošty. Z nešťastníka jsem se snažil dostat to, že by infikovaný e-mail uložil do karantény a jelikož předemnou maturovali z angličtiny, probírali i téma jako jsou zvířata v Anglii a jak na to, když si je tam chce člověk dovézt. Použil jsem analogii s pejskem, kdy daný člověk měl jet do Anglie pracovat na cca 10 let a měl si s sebou vzít i svého oblíbeného pejska. Moje otázka zněla, kdeže toho pejska nechá po nějakou určitou dobu. Ovšem prohlášení zkoušeného, že nechá svého oblíbence na poště, nás všechny dostalo.
:)
Ja si zase pamatuju, jak na me pri maturite koukal prisedici (matikar!), kdyz jsem popisoval algoritmus na prevod desitkovych cisel do dvojkove soust. :)
An SMTP server SHOULD have a timeout of at least 5 minutes while it is awaiting the next command from the sender.
openssl s_client -connect localhost:pop3s
[tsunami@vodik]$ openssl s_client -h unknown option -h usage: s_client args -host host - use -connect instead -port port - use -connect instead -connect host:port - who to connect to (default is localhost:4433)