Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.
V pořadí šestou knihou autora Martina Malého, která vychází v Edici CZ.NIC, správce české národní domény, je titul Kity, bity, neurony. Kniha s podtitulem Moderní technologie pro hobby elektroniku přináší ucelený pohled na svět současných technologií a jejich praktické využití v domácích elektronických projektech. Tento knižní průvodce je ideální pro každého, kdo se chce podívat na současné trendy v oblasti hobby elektroniky, od
… více »Linux Foundation zveřejnila Výroční zprávu za rok 2025 (pdf). Příjmy Linux Foundation byly 311 miliónů dolarů. Výdaje 285 miliónů dolarů. Na podporu linuxového jádra (Linux Kernel Project) šlo 8,4 miliónu dolarů. Linux Foundation podporuje téměř 1 500 open source projektů.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.12.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.4.0.
Kriminalisté z NCTEKK společně s českými i zahraničními kolegy objasnili mimořádně rozsáhlou trestnou činnost z oblasti kybernetické kriminality. V rámci operací OCTOPUS a CONNECT ukončili činnost čtyř call center na Ukrajině. V prvním případě se jednalo o podvodné investice, v případě druhém o podvodné telefonáty, při kterých se zločinci vydávali za policisty a pod legendou napadeného bankovního účtu okrádali své oběti o vysoké finanční částky.
Na lepší pokrytí mobilním signálem a dostupnější mobilní internet se mohou těšit cestující v Pendolinech, railjetech a InterPanterech Českých drah. Konsorcium firem ČD - Telematika a.s. a Kontron Transportation s.r.o. dokončilo instalaci 5G opakovačů mobilního signálu do jednotek Pendolino a InterPanter. Tento krok navazuje na zavedení této technologie v jednotkách Railjet z letošního jara.
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 debugsmtp-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. :)
To chtel mermomoci vysvetlit jak to delam, ale kdyz jsem zacal "ze sve zkusenosti vim, ze FF je 255 anebo 1111 1111", tak se hrozne rozciloval, ze to nema zadny rad a system, ze operuju na bazi tureckych konstant ..... Musel jsem mu vysvetlit, ze CVUT je skoro cele o tureckych konstantach
. Hračky => plačky.
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)
nojo, vím, žádný SSL, zabezpečenej tunel, nic takovýho, čistě čistej plain text
ale radost jsem z toh měl. Dneska, kdy všechno POP3, IMAP, SMTP a OPenVPN jede přes TLS, kódovaný AES-256 a ověřuje se certifikáty, CAčkem, 2048bitovym Diffie Hellmanem, člověk už nemá ten super pocit, že po drátech skutečně jedou ty písmenka, co zadává v terminále telnetu...