Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.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 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Pod tímto tajemným názvem (zkracovaným jako MSA) se skrývá věc, která formálně existuje už hodně dlouho, nicméně v praxi na ni člověk moc nenarazí. Jde o klasický problém „slepice-vejce“. Protože to nikdo nepoužívá, nikdo to nezavádí. A protože to nikdo nezavádí, nikdo to nepoužívá.
Snad i malé dítě už dnes ví, že SMTP služba běží standardně na portu 25. Na tento port se připojují serverové i klientské programy a jeho prostřednictvím probíhá veškerá e-mailová komunikace. Jenže to má některé nepříjemné důsledky, proto vznikl nápad, že se to rozdělí. Port 25 bude sloužit jen pro doručování pošty (tedy komunikace mezi servery, vystupování jako Mail Transfer Agent), kdežto pro odesílání z klientů se použije port jiný, konkrétně 587. Zabývá se tím RFC 2476, nově také draft RFC 4409.
Právě v čísle portu spočívá onen problém s „nepoužíváním“. V poštovních klientech je jako výchozí port nastaven téměř vždy 25 a změna na 587 mnohdy znamená, že se uživatel musí zanořit do hloubi nastavení poštovního účtu a číslo portu tam změnit. Na druhou stranu, pokud by tam bylo 587, u většiny poskytovatelů by to nyní nefungovalo a uživatel by byl opět nucen trápit se s nastavováním. Je otázkou, do jaké míry je vhodným řešením „automatická konfigurace“ použitá například v programu Mozilla Thunderbird 3.
Za „normálních“ okolností, tedy tak, jak je většina poštovních serverů nastavena, se tentýž server chová nejen jako Mail Transfer Agent, ale de facto také jako Mail Submission Agent, byť ne se všemi specifiky. To přináší různé problémy, související s ochranou proti spamu a s konfigurací serveru.
Pokud se však role oddělí, situace se zjednoduší. MTA běžící na portu 25 se bude starat jen o vlastní doručování – nebude tedy přijímat jinou poštu, než kterou přímo doručí do místních schránek. Odpadá tím potřeba řešit předávání dál (relaying), protože nic takového se prostě nekoná.
Naopak samostatný MSA nebude obsluhovat žádné schránky, bude se starat jen a pouze o příjem pošty od klientů a její předávání cílovým MTA. Proto bude také vždy vyžadovat autentizaci klientů, čímž se eliminuje nelegitimní přístup (jak od spammerů jako takových, tak i od primitivnějších spambotů na ovládnutých počítačích; chytřejší spamboty samozřejmě mohou v některých případech získat a používat autentizační údaje).
S tím souvisí možnost bezproblémového přístupu na MSA i ze sítí, kde je blokován port 25, jakkoli jde taková blokace proti podstatě Internetu. Dále může MSA řešit některé drobné problémy klientů (například absenci některých hlaviček). Principiální výhodou separace je pak samostatná konfigurace MSA a MTA, bez nutnosti dělat kompromisy a hledat styčné body mezi požadavky jednotlivých rolí. Každá ze služeb se konfiguruje zcela samostatně, změna v MTA většinou nemá žádné dopady na MSA a naopak.
Postfix může být nakonfigurován tak, aby plnil kteroukoli z oddělených rolí (MSA a MTA). Může to fungovat tak, že bude Postfix figurovat v obou rolích, ať již na stejném, nebo na různých strojích. Jiným řešením je použít Postfix jen pro jednu z rolí a na druhou nasadit jiný software. Záleží čistě na volbě správce, jakou cestou se vydá.
Pokud obě role sdílí stejný stroj, nastává problém, jak nakonfigurovat dvě služby odlišně, přestože jsou poskytovány stejným modulem Postfixu. Řešení je dvojí. Buď se použije služba postmulti
, která je přímo určena ke spouštění více instancí s různou konfigurací. Služba je ovšem obsažena až ve verzi 2.6, která není k dispozici v repozitářích řady distribucí. Navíc je konfigurace poměrně složitá, takže přesahuje rámec tohoto článku (využití postmulti
bude náplní jednoho z pozdějších dílů seriálu).
Druhou možností je předání potřebných parametrů přes příkazovou řádku služby. Toto řešení je velmi jednoduché na konfiguraci a lze ho používat i se staršími verzemi Postfixu, byť není až tak úplně čisté a systematické.
Toto řešení spočívá v tom, že bude základní konfigurace v main.cf
připravena pro MTA a v master.cf
se přímo u služby submission
použijí takové parametry příkazové řádky, aby byla konfigurace přizpůsobena funkci MSA. Soubor main.cf
může mít například následující obsah:
myhostname = postak.moje.domena myorigin = $mydomain alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases virtual_mailbox_base = /var/mail/virtual virtual_mailbox_domains = ldap:/etc/postfix/ldap/vdomains.cf virtual_mailbox_maps = ldap:/etc/postfix/ldap/vmailbox.cf virtual_alias_maps = ldap:/etc/postfix/ldap/virtual.cf virtual_minimum_uid = 100 virtual_uid_maps = static:100 virtual_gid_maps = static:100 smtpd_client_restrictions = permit smtpd_sender_restrictions = permit_mynetworks, reject_non_fqdn_sender, reject_unknown_sender_domain, check_sender_access hash:/etc/postfix/access, permit smtpd_recipient_restrictions = reject_non_fqdn_recipient, permit_sasl_authenticated, reject_unauth_destination, permit smtpd_helo_required = yes disable_vrfy_command = yes smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = no broken_sasl_auth_clients = yes content_filter = smtp-amavis:[127.0.0.1]:10024
Všimněte si, že se definují parametry SASL, přestože je autentizace vypnutá (smtpd_sasl_auth_enable = no
). To je proto, aby se co nejméně parametrů muselo definovat přes příkazovou řádku služby submission
. Takto nakonfigurovaný MTA bude přijímat poštu pouze pro místní schránky, což je zajištěno pravidlem reject_unauth_destination
v sadě smtpd_recipient_restrictions
. Pravidlo permit_sasl_authenticated
se neuplatní, protože je autentizace vyřazena z činnosti (nicméně se uplatní po jejím zapnutí – viz dále).
Teď je potřeba nakonfigurovat MSA. Příslušný řádek master.cf
, který je potřeba přidat, bude vypadat takto:
submission inet n – – – – smtpd -o smtpd_sasl_auth_enable=yes -o virtual_mailbox_domains= -o content_filter=
První řádek je úplně stejný jako u situace, kdy MSA a MTA běží na samostatných strojích. Aktivuje se jím služba submission
pro MSA. Na dalších řádcích jsou již zmiňované parametry příkazové řádky. První říká, že se zapne autentizace SASL (u MTA je zcela logicky vypnutá, nepoužívá se). Další řádek vypíná domény pro virtuální doručování (tím je zajištěno, že se nebude nikam doručovat) a konečně poslední parametr vypne filtr obsahu (zde je zbytečný).
Toto vše je samozřejmě jen velmi jednoduché využití rozdělení rolí MTA a MSA. Lze pokročit ještě dále a například definovat rozdílné politiky šifrování TLS (pokud se používá), rozdílnou přísnost na syntaktickou validitu (u MTA se bude pouze hodnotit filtrem obsahu, kdežto u MSA lze dát striktní pravidla, která zajistí odmítnutí zprávy ještě před převzetím). Lze také pomocí MSA kontrolovat shodu obálkového odesílatele (příkaz MAIL FROM
) s povolenými adresami autentizovaného uživatele a/nebo nastavovat identifikaci odesílatele (Sender-ID
).
Pokud běží každá ze služeb na vlastním stroji, ať už fyzickém či virtuálním, stačí na daném stroji brát v úvahu jen jeho vlastní roli a na tu druhou se neohlížet. Jako první přijde na řadu MTA, tedy server doručující do schránek.
Soubor master.cf
lze ponechat v té podobě, v jaké byl v minulém dílu, čili žádná služba submission
, která přibyla v případě společného stroje, zde není. Soubor main.cf
lze naopak použít v podobě uvedené výše, byť parametry okolo autentizace (smtpd_sasl_type
apod.) jsou zde zbytečné a lze je vynechat.
Dalším krokem je připravit konfigurační soubory pro MSA. V souboru master.cf
se smaže/zakomentuje internetová služba smtp
, místo ní bude služba submisssion
:
#smtp inet n – – – – smtpd submission inet n – – – – smtpd
Tím se aktivuje služba běžící na portu 587 (submission
) namísto původní služby na portu 25 (smtp
). Port 25 zůstane uzavřený, nic na něm nepoběží.
Dále se musí zajistit přístup k autentizaci, protože Dovecot běží jinde (tam, kde jsou umístěny schránky, tj. například na MTA). Možnosti jsou v zásadě dvě – buď se spustí samostatná instance programu Dovecot, která bude pracovat se stejnou databází jako instance poskytující přístup k poště (použitelné u databáze MySQL apod. nebo LDAP), anebo se umožní vzdálený přístup pro autentizaci na jediné instanci.
První možnost je jednodušší, spočívá pouze v tom, že se Dovecot nainstaluje na stroj určený pro MSA a nadefinuje se mu speciální konfigurace. Tato konfigurace nebude obsahovat komunikaci pomocí protokolů pro přístup k poště (čili Dovecot nebude naslouchat na příslušných portech ani nepoběží služby, které komunikaci zajišťují), Dovecot bude poskytovat pouze autentizační služby. Konfigurační soubor dovecot.conf
bude vypadat například takto:
protocols = none disable_plaintext_auth = no auth default { mechanisms = plain login cram-md5 digest-md5 ntlm passdb ldap { args = /etc/dovecot/ldap.conf } userdb ldap { args = /etc/dovecot/ldap.conf } user = dovecot-auth socket listen { client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = postfix } } }
Příklad je samozřejmě určen pro řešení s uživateli v adresáři LDAP. Parametr protocols
je nastaven na none
(žádné protokoly) a ze sekcí zůstala pouze auth default
, která konfiguruje autentizaci.
Kdo nechce instalovat Dovecot na MSA, může zvolit metodu druhou, tedy vzdálenou autentizaci. Problém je však v tom, že Dovecot poskytuje autentizační služby pouze přes lokální (unixový) socket, nikoli přes internetový. Jedinou možností je tedy využít programy typu socat, které dokáží tento nedostatek obejít vytvořením internetového spoje mj. mezi lokálními sockety. Netřeba snad dodávat, že komunikace by měla být vždy nastavena jako šifrovaná a náležitě ověřovaná (server i klient), aby nebylo možné se neoprávněně dostat k uživatelským heslům.
Zejména v posledních letech se šifrování komunikace stává vysloveně nutností, protože zvědavé uši mohou číhat kdekoliv. A když už se nešifrují jednotlivé zprávy, je žádoucí šifrovat alespoň komunikace mezi klientem a serverem i mezi jednotlivými servery. Celý příští díl seriálu proto bude zaměřen na záležitosti související se šifrováním poštovní komunikace, a to jak SMTP, tak POP3 a IMAP.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
vetsina spamu jde z pár lokací.
vazne? jak moc je to spolehlive? ja mel za to, ze vetsina spamu jde z botnetu takze jsou ty zdrojove ip tak nejak "normalne" rozdeleny :)
nevyhody greylistingu kompenzuji autowhitelisintgem. Pokud server uspesne poslechne, a zareaguje na greylisting tak jak ma, je na predem urcenou dobu zarazen do whitelistu. Treba na 14 dni.To je například u Postgreye standardní chování a zmiňuji ho, i když ne přesně takhle. Nicméně to nekompenzuje nevýhody greylistingu. Hlavní nevýhodou je to, že první zpráva dojde vždycky pozdě, není-li greylisting přímo vyřazen (například pro konkrétní doménu odesílatele).
A nechce to spis trochu osvety ? Odkdy je mail garantovana sluzba ? Od kdy maji maily chodit v radu vterin ?Osveta by mela byt v tom, ze by uzivatele meli vedet, ze e-mail muze fungovat v radu sekund a pokud tomu tak neni, tak se s tim nemusi smirit a muzou prejit k jinemu poskytovateli, u ktereho to tak fungovat bude.
Někdy také zpráva nemusí být doručena vůbec, protože je odesílající server špatně nastavenJo, například si plete chybu 4xx s 5xx (a tvrdí, že to nejde doručit), posílá odesílateli zprávu o tom, že se to doručí později (a odesílatel si následně myslí, že vůbec),...
Email byl firmou B odmítnut, protže neexistoval uživatel ve firmě A... a tu administrátor (nevieme ktorý) urobil chybu. Správne nastavený greylisting vráti 4xx kód, a správne nastavené overovanie existencie odosielateľa 4xx nepovažuje za neexistenciu, ale vráti tiež 4xx, takže A sa pokúsi za pár minút, kedy už B bude v databáze a A vráti úspech a B mail prijme. Používam obidve, aj greylisting aj overovanie, a mail medzi dvojicou takýchto serverov bez problémov prejde na tretí pokus.
smtpd_restriction_classes = postgrey_r_class postgrey_r_class = check_policy_service inet:127.0.0.1:10023restrikce příjemců
smtpd_recipient_restrictions = reject_unauth_pipelining, reject_non_fqdn_sender, reject_unknown_recipient_domain, permit_sasl_authenticated, reject_unauth_destination, check_recipient_access proxy:mysql:/etc/postfix/sql/mysql_virtual_postgrey_maps.cf, permittakhle to pravděpodobně bude hlásit že proxy není nastavená na tu tabulku, tak si jen vyjeďte postconf -d default a pridejte si ji
proxy_read_maps = $local_recipient_maps ... proxy:mysql:/etc/postfix/sql/mysql_virtual_postgrey_maps.cfa pak jeste query pro mysql takhle
SELECT IF(`postgrey` = 1,'postgrey_r_class','OK') FROM `mailbox` WHERE `username` = '%s' AND `active` = '1'takle pokud je postgrey z dtb 1 tak se zavola nově nadefinovaná třída, pokud ne tak OK a postfix skočí na další pravidlo. Mělo jit nadefinovat vypinaní/zapinání jednotlivých restriction (třeba různé externí blacklisty)