Zimbra

 ( mogorva | 2017. október 12., csütörtök - 7:54 )

Hi,

Van egy Debian 7-es szerver, amin saját összekalapált mail fut (postfix+dovecot+spamassassin+clamav+roundcube+mysql+saját admin scriptek).

Lassan le frissíteni kellene és vagy újrahúzom Debian 9-re és akkor a migráció viszonylag egyszerű, de kezdődhet a D7->D9 váltás miatti konfig reszelés (+a már elfelejtett és nem dokumentált custom feature-ök miatti szívás), vagy az egészet átrakom pl. Zimbrára (ekkor a migráció kevésbé egyszerű, de működik és legalább van admin felület is) és akkor lesz egy OOTB megoldásom.

Kb. 10-15 domain levelezéséről van szó (50-60 mailcím), a többség local delivery, van pár forward és van pár virtual cím, szóval semmi extra, a nagy reszelgetések kora meg már lejárt, tehát nem valószínű, hogy valaki extra igénnyel jönne.

A POC-olt Zimbra (Ubi 16.04 + Zimbra 8.7.10) egyelőre tetszik de látom, hogy saját repo-ból hoz gyakorlatilag mindent (postfix, clamav, stb.) és nem tudom, mennyire egyszerű a karbantartása (főleg a frissítésekre gondolok).

Kérdések:
- aki Zimbrázik az elégedett, vagy váltana inkább másra? Ha váltana, akkor miért?
- a karbantartás (frissítés, patch-ek felrakása, stb.) mennyire macerás? A patch-ek elfogadható tempóban jönnek?
- megoldható Let's encrypt tanúsítvány berakása webmail, az imap és az smtp alá?
- van bármi trükk, amiről jó tudni, vagy tényleg annyira OOTB, mint amennyire látszik?

Tehát röviden a cél az, hogy működjön legalább úgy mint eddig, az üzemeltetése ne okozzon több feladatot mint eddig és átláthatóbb legyen (pár funkciót le tudjak adni másoknak).

Köszi.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Az utóbbi fél-1 évben több szerveren is megléptem ugyanezzel a kombóval (+dovecot sieve) a D7-D9, sőt vhol D6-ról való váltást. Ezek néhány domain pár tucat mail címtől 500 domain 1500 címes mail szerverig minden volt.
A postfixben néhány sort kell módosítani, kivenni. Ezt indításkor elsírja, fél perc.
A dovecot-ot kicsit jobban kell maszírozni, de az sem vészes.
A többivel nincs gáz, ne parázz tőle. Szerintem jobban tudod uralni/üzemeltetni a technológiát, mint a Zimbrás megoldásnál. Nem beszélve a maildirek rendes backupolásáról. Én használtam mindkettőt. Nem váltanék Zimbrára.

"pár funkciót le tudjak adni másoknak"

Nem tudom ezek mik lennének, de szerintem a leggyakoribb feladatok egy Postfixadmin belövésével átadható. A "domain owner" látja a maga alá tartozó mail címeket, azok kvóta értékét, fiók telítettségek, jelszó módosítás, új cim/alis felvétel, ideiglenes offolása. Mi kell még?
Én tavaly megcsináltam egy cégnél, a fontosabb domainek kezelése kiadva az érintett cégeknek, maszírozzák ők Rozika mail címét. Azóta csak az apt-get upgrade a dolgom meg néha a spamassassin módosítása. Az utóbbi tanítását, per user configolását a user megoldja roundcube modulon keresztül.

Köszi, ez hasznos volt.

A Zimbra egy szoftver, amely több komponensből áll. Nem a komponenseket frissíted, hanem a Zimbrát. Ha a Zimbra ad ki frissítést, akkor felrakod, nem kell foglalkoznod a külön-külön komponensekkel.

A Let's encrypt-tel nincs tapasztalatom, de a Zimbra Network Edition-nél nem volt egyszerű a certificate csere, szóval nem számítok arra, hogy egyszerű lenne. Valamint nem az smtp/imap/pop3/egyébprotokol alá pakolod be, hanem a Zimbrába, ami saját hatáskörben kezeli ezt.

> hanem a Zimbrába, ami saját hatáskörben kezeli ezt

Elvileg annál jobb.

Nem, sajnos annál rosszabb, ugyanis elég bonyolultan kezeli a certeket.

Mondjuk erre kíváncsi lennék én is, hogy hogyan oldható meg, több domain ( nem aldomain) esetében bármilyen cert telepítése és használata Zimbra OSE esetében. Jelenleg 1db self signed cert van, amely a zimbra saját certje, és az vonatkozik az összes domainre. Kicsit kényelmetlen mindig elfogadni a klienseknél a certeket.

Azaz milyen certet, certeket kell venni, hogy ne kavarodjanak össze a zimbrában.

Mindegyik domainre elég lenne egy ilyen pl?: https://www.ssl.com/certificates/basicssl/

Nem én kezelem ezeket a dolgokat, de kicsit jobb lenne rendbe tenni. Hátha tudtok ebben segíteni.

Miért nem jó sima SAN-os certificate-et betölteni?

Igazából nekem mindegy, ha jön a patch és fekete kakas feláldozása nélkül felrakható/felmegy.

Ha a háttérben nem gányolsz bele semmit, akkor minden probléma nélkül felmegy a javítás, ami gyakorlatilag nem patch, hanem a teljes javított állomány.

"- aki Zimbrázik az elégedett, vagy váltana inkább másra? Ha váltana, akkor miért?"
Több éve Zimbrázom, nem váltanék. Ellenben folyamatosan váltok egyéb épített/fizetős rendszerekről ingyenes Zimbrákra. Üzemeltetek ezer+ felhasználós rendszert is.

"- a karbantartás (frissítés, patch-ek felrakása, stb.) mennyire macerás?"
Korábban volt szívás leginkább főverzió váltásnál, de egyre kevésbé jellemző.

"A patch-ek elfogadható tempóban jönnek?"
Attól függ kinek mi az elfogadható. Főverzió megjelenéskor kicsit sűrűbben, mondjuk havonta, később két-három havonta jönnek a frissítések.

"- megoldható Let's encrypt tanúsítvány berakása webmail, az imap és az smtp alá?"
Van rá működő megoldás, de nekem egyszerűbb volt beruház(tat)ni éves tanúsítványokra 3e Ft/db/év-ért.
A cert csere tényleg nem egy parancs(hanem három), de azért nem egy nagyon bonyolult történet.

"- van bármi trükk, amiről jó tudni, vagy tényleg annyira OOTB, mint amennyire látszik?"
Teljesen OOTB, de azért érdemes pár dologra figyelni telepítéskor. Nagyon erőforrás igényes főleg a spam és víruskereső része, ezért 100+ felhasználó felett érdemes azokat kikapcsolni és külön szerverekre rakni.

Nagy erőssége a webes felület(ami sajnos szintén erőforrás igényes): mappák megosztása, osztott naptár, feladatok, több identitás, vakációs üzenetek, erőforrás kezelés, chat, szűrők, közös címtár, külső postaládák behúzása, csoportok/listák kezelése stb.

Az ingyenes verzióban nincs mentési megoldás, de Maildir formátumban tárolja a leveleket, így egy napi rsync alapú mentés+ldap export+mysql dump után már azért lehet nyugodtan aludni.

Építhető hozzá(külön szerveren/vps-en) mobiltelefonos PUSH alapú mail/címtár/naptár/feladat szinkronizáció is.

Ha egyéb kérdésed van, akkor írj bátran:-)

Mióta tárolja Maildir formátumban? Legutoljára, mikor néztem, még a saját speciális single-instance store metódus volt használva.

A webnek sincs egetverően nagy erőforrás-igénye, 200 useres környezetben egy 16G ramos gép simán vitte, igaz spam/virusszures nelkul.

Bocs, azt valóban elírtam, pontosítok: a Maildir formátumhoz hasonlóan külön fájlokban tárol minden levelet, így könnyen készíthető hozzá egy rsync alapú mentési megoldás.

Amivel 1 user esetén nem sokra mész. Ha Mancika kéri, hogy állitsd vissza a tegnapi leveleit, attól tartok vakarnád a fejed. Valahol tuti letárolja, hogy melyik UUID mappa tartozik hozzá, de legutóbb, mikor néztem, X GB mappa méret felett még új UUID mappát is nyit _mellette_. Szóval simán van 50 usered és ennek 70 UUID nevű "maildir" mappája. Azon belül az almappák is UUID, szóval onnan leveleket mazsolázni szép történet :)

Az ingyenes Zimbrában is megvan a lehetőség, hogy per user menteni, de ehhez neked kell összedobnod a scriptet. Rá lehet keresni, működőképes.

edit: pl ez: Backing up and restoring Zimbra (Open Source Version)

Gondolod, hogy nem találkoztam még ilyen kéréssel, sőt sokkal cifrábbakkal is és nem kellett vakarnom a fejemet(sokáig biztosan nem;-).
Egy userhez egy könyvtár tartozik amit a "zmprov getMailboxInfo cim@domain" ki is ír.
Annyi, hogy a visszaállításhoz egy külön VPS kell, arra kell visszatenni adatbázissal és az adott felhasználóhoz kapcsolódó könyvtárral. Ezután azt a levelet kapja vissza amelyiket kéri, akár az egész postaládát is.
+1 iron válaszához, de az rsync/dirvish alapú mentés szerintem jóval kevesebb tárhelyet foglal.

Ha Mancika kéri, hogy állitsd vissza a tegnapi leveleit, attól tartok vakarnád a fejed.

a megoldas email archivalas...

--
t-systems-es it architect allast keres. Jelige: csak webshopot ne kelljen...

Egynek pl. igen, az a korrektebb. De egy klasszikus rsync + (esetleg) zfs snapshot,dedup,compress a backup szerveren nem játszik sajnos Zimbra esetében.

Az erőforrásigényt láttam, 8G RAM-ba be kell férnie. :)
Extra fícsörök (drive, chat, naptár, közös címtár) nem kell, a vacation lehet jó ötlet, bár manapság már mindenki telóról nyomja, tehát mindenki folyton elérhető. :)
Mentés: most sincs. :)

Köszi a válaszokat.

+1, egy tök jó szoftver a Zimbra. Őszintén már se kedv. sem idő (postfix+dovecot+spamassassin+clamav+roundcube+mysql+saját admin scriptek) összekalapálására.

Még nem tettem le teljesen a Zimbráról, viszont csináltam egy próba migrációt és gondban vagyok a jelszavak áthozásával.
MD5 hash-selt jelszavak vannak az eredeti rendszer alatt ezeket szeretném változatlanul áthozni.

zmprov-val próbálom felvenni a júzereket és beállítani a jelszavukat, de ha megadom jelszónak, hogy "{MD5}A" (ahol "A" az eredeti hash), akkor nem az eredeti jelszó lesz a jelszó, hanem az, hogy "{MD5}A".

Feltúrtam a netet, próbáltam mindenhogy de nem működik az eredeti jelszó áthozása.

Mi a trükk?

Köszi!

Nem értem, hogy ezt hogyan képzelted el.
Az eredeti jelszavad nincs meg, csak az arról készült MD5 lenyomat. Mégis mit szeretnél ezzel a lenyomattal kezdeni?

Pontosan ezt.
User migráció jelszóval.
Több leírás van erről, hogy fogod a jelszó hash-ét és ezt a hash string-et beimportálod Zimbra alá így jelszó csere nélkül megoldható a migráció. Elvileg.
Ebben nem kellene semmi extrának lennie, csak éppen nem működik.

A hash úgy kezdődik, hogy $1$? Szimpla idézőjelet használsz?

Hali,

A hash 32 karakter hosszú és nincs előtte semmi prefix (a dovecot konfigban amúgy is "default_pass_scheme = PLAIN-MD5" van).

A következőket próbáltam

zmprov ma  userPassword 'HASH'
zmprov ma  userPassword "HASH"
zmprov ma  userPassword HASH

zmprov ma  userPassword {md5}HASH
zmprov ma  userPassword "{md5}HASH"
zmprov ma  userPassword '{md5}HASH'

zmprov ma  userPassword {MD5}HASH
zmprov ma  userPassword "{MD5}HASH"
zmprov ma  userPassword '{MD5}HASH'

zmprov sp  'HASH'
zmprov sp  "HASH"
zmprov sp  HASH

zmprov sp  {md5}HASH
zmprov sp  "{md5}HASH"
zmprov sp  '{md5}HASH'

zmprov sp  {MD5}HASH
zmprov sp  "{MD5}HASH"
zmprov sp  '{MD5}HASH'

Két eredménye lett a próbálkozásnak:
1) a jelszó mindig az aktuálisan megadott string volt és nem az a jelszó, amiből a hash készült
2) elég sok próbálkozással sikerült "Network service error"-ba kergetni a Zimbrát és nyomhattam rá egy restartot (ami annyira azért nem jó hír).

"és nem az a jelszó, amiből a hash készült"
Ilyet nem is fogsz soha megkapni. A hasht nem fogja neked visszafejteni senki.

De én nem akarom visszafejteni.
Ezek MD5 hash-ek.
Ha berakom a PW mezőbe és a Zimbra tudja, hogy ott MD5 hash van, akkor tudnia kellene használni.
Pl: https://wiki.zimbra.com/wiki/Password_Migration

> A hasht nem fogja neked visszafejteni senki.
https://en.wikipedia.org/wiki/Rainbow_table

1. Rainbow table sem megoldás mindenre.
2. Úgy tudom, hogy a Zimbra OpenLDAP-ot használ. OpenLDAP-nál az {MD5} szekció után nem maga a hash, hanem a hash Base64 kódolt változata kell, hogy szerepeljen eszerint:
http://www.openldap.org/faq/data/cache/418.html

Ez jó tipp köszi, kipróbálom.

Első körben én nem közvetlenül a zimbra saját openldap-jába tölteném a jelszavakat, nagyon jól használható a zimbra külső LDAP azonosítással is. Ha egy külső openldap-ba be tudod tölteni a jelszavakat akkor már nyert ügyed van, ráadásul ott sokkal szabadabban lehet próbálkozni.

Gondoltam semmi cicó, játék user játék pass-szal:

PASSPLAIN="c"
PASSMD5=$(echo -n ${PASSPLAIN} | md5sum | awk '{print $1}')
PASSB64=$(echo -n ${PASSMD5} | base64)
zmprov ma  userPassword "{MD5}${PASSB64}"
zmprov sp  "{MD5}${PASSB64}"

És sajnos továbbra sem jó:

SoapEngine - handler exception: authentication failed for [user@domain.sys], invalid password

De azt hiszem hagyom az egészet a fenébe, mert kb. 6-8 hibás próba után beüt a "network service error has occurred" és a júzer még az admin felületről átütött jelszóval sem tud belépni.
Ezt én meg így nem fogom üzemeltetni élesben.

A jelszó nincs saltolva véletlenül? Ha van, akkor az OpenLDAP más hasht számolna ki egy plaintext password alapján, mint amit te kiszámolsz, hiszen hozzáveszi a saltot.

A 6-8 hibás próbálkozás utáni hibaüzenet és letiltás miatt én nem dobnám a zimbrát. Bár tény, hogy értelmesebb hibaüzenetet is kiírhatna:
https://wiki.zimbra.com/wiki/Network_Service_Error_has_occurred

Ez?

zmprov ma user1@domain userPassword '{crypt}$1$WAOIgPB$skcX.nKYV9JSctTR60uat/'

Innen copyztam:
https://wiki.zimbra.com/wiki/Password_Migration

Megnéztem, ez sem nyert, de köszi.

nem is nyerhetett volna, mivel nem crypt-tel, hanem MD5-tel vannak tárolva a jelszavaid.

Tudom, de ez a fél perc nem került semmibe.

Kérdések:
- aki Zimbrázik az elégedett, vagy váltana inkább másra? Ha váltana, akkor miért?

valtanek, de a tobbi se jobb. mert egy osszeganyolt foshalom, azert.

- a karbantartás (frissítés, patch-ek felrakása, stb.) mennyire macerás? A patch-ek elfogadható tempóban jönnek?

nem maceras, kiveve ha vannak sajat ldap schemaid is (pl integralsz hozza sambat vagy mas szolgaltatast, amihez a posix user attributumok kellenek). vagy ha hasznalsz 3rd party zimleteket (plugineket).

na meg ubuntun eleg macera tud lenni a frisistes, akar az ubit akar a zimbrat akarod foverzioban valtani.

gyakorisag: hat anno az ssl2/ssl3 bugokra baromira nem kapkodtak javitani, igaz a java-ra fogtak. kellett reszelni ele egy nginx proxyt es ott kezelni az ssl-t, mint workaround.

- megoldható Let's encrypt tanúsítvány berakása webmail, az imap és az smtp alá?

persze, de sok kezimunka, a java keystoreba kezzel kell beleimadkozni, nem nagyon van hasznalhato leiras hozza (pl. jelsozval vedett a store, de a fix bedrotozott jelszot nem reklamozzak)

- van bármi trükk, amiről jó tudni, vagy tényleg annyira OOTB, mint amennyire látszik?

ootb, amig nem jonnek elo bugok, extra igenyek, integracio mas rendszerekkel stb. szoval amig csak nezegeted addig szep es jo :) ha elkezded production kornyezteben hasznalni, akkor jon a szivas resze, de addigra mar keso...

vannak nyugjei, korlatai, bugjai, amikkel meg kell tanulni egyutt elni, mert a fejlesztok nagy ivben tojnak ra.

A'rpi

Köszi!
Egyre kevésbé van kedvem Zimbrára váltani.

Nem akarom nagyon reklámozni és a topic is a Zimbrára lett kihegyezve, de esetleg az opensource Kopano-val futhatsz egy kört.
Igaz csillivilli admin GUI nincsen, de gyakorlatilag el lehet managelni openldap esetén egy phpldapadminnal, vagy akár AD-hez is kötheted és akkor AD Users and Computers-en keresztül lehet adminolni.
https://www.kopano.io

Köszi a tippet, de a community Kopano az a nightly-t jelenti, ahogy látom.
Az sem egy életbiztosítás.
A pimpelt UI meg most jól jönne.

"nem maceras, kiveve ha vannak sajat ldap schemaid is" na ezért is használnék hozzá külső ldap azonosítást

amin saját összekalapált mail fut (postfix+dovecot+spamassassin+clamav+roundcube+mysql+saját admin scriptek).

gyakorlatilag a zimbra is ez: egy csomo open source komponens fole huztak egy sajat gui-t (kb. mint a te admin scriptjeid) + van hozza egy sajat webmail felulet.

a már elfelejtett és nem dokumentált custom feature-ök miatti szívás

hat igen. Ha van mashol is levelezesed, akkor erdemes ebbol 'termeket' csinalni, mondjuk egy jol osszerakott ansible playbook, whatever...

--
t-systems-es it architect allast keres. Jelige: csak webshopot ne kelljen...

> gyakorlatilag a zimbra is ez: egy csomo open source komponens fole huztak egy sajat gui-t

Nem. A Zimbra lelke is custom, nemcsak a gui. Valoban van benne minden katyvasz, mint postfix, nginx, openldap stb., de aztan azok atpasszoljak egy java-ban irt basznak a leveleket es a requesteket.

ok, thx az infot. Ez igy meg felelmetesebb...

--
t-systems-es it architect allast keres. Jelige: csak webshopot ne kelljen...

a mailboxd van javaban, ami a levelek adatbazis szeru kezeleset (ms exchange mailstore-hoz hasonloan) vegzi, ez implementalja az imap-ot es lmtp-t is. a leveleket fileokban tarolja valami hashelt strukturaban (nem userenkent!) es mysql-ben van hozza a metadata. elvileg egy levelet amit tobb user is megkapott csak 1x tarolja le. a nagy leveleket tomoriti is. ez a resze amugy nem rossz, eleg gyors foleg ha sok user es sok level van, es ezzel nem is szokott problema lenni, bar ha keves a ram (<16G) alatta akkor neha belassul.

valamint van egy webmailje (es egy webes admin guija is) szinten javaban irva (tomcat webapp asszem), ezzel vannak bajok, nem minden bongeszovel megy normalisan, nem kezeli mindig jol az ekezetes karaktereket (foleg attacs fileneveben nem), meghulyul ha idezojel van a from: headerben stb.

a konfigokat es usereket is ldap-ban (openldap) tarolja sajat specko schema-kban, az smtp-t postfix+spamassassin kezeli. az nginx opcionalis, memcached szinten. mi mondjuk a zimbra postfixjet se hasznaljuk, hanem sajat spamszures megy egy kulon vason, de azzal is van macera mert a zimbra ldapjabol egy csomo mindent (pl. forward beallitasok, account status, mail aliasok, distrib listek) nekem kell akkor kiolvasni es lekezelni...

ja persze az osszes integralt opensource cucc (postfix openldap mysql stb) amit hasznal benne van a zimbraban /opt/zimbra/bin/ alatt, tehat nem az oprendszeret/disztroet hasznalja, de a portok miatt utkozik azzal. tehat kb egy szuz linuxra megy csak fel normalisan.

A'rpi

Gyakorlatilag pont emiatt irtam a Kopano-t, mert bar hasonlo ehhez, de pl postfixet nem akar az os helyett implementalni es nem java, hanem C (h melyik abba ne menjunk bele :))