Komplett infrastruktúra, tanácsok, vélemányek - KVM, LXC, FeeIPA, Mail, OpenVPN

 ( brokerka | 2018. március 12., hétfő - 11:52 )

Üdv mindenkinek!

Ez az első irományom, bánjatok velem kíméletesen.:) Tehát van egy darab (és nem lesz több) szerver. 12 VCPU, 12 Giga Ram..
Tudom, hogy "production"-ben ettől már kicsit combosabb hardware is elkellene, de egy kis teszteléséhez elégnek kell lennie.
Tekintsük ezt a gépet, mint egy VPS-t.
Van egy publikus IP cím, reverse DNS beállítva.
A domainek DNS bejegyzéseit a regisztrátornál lehet managelni, ez így nekem meg is felel,
nem akarok saját DNS szervert, ha nem muszály..ha kell, akkor meg kell, és telepítek azt is.

--------------------------------------------------
Feladat a következő lenne:
--------------------------------------------------

- átlag 130-150 emberke levelezésének bonyolítása, több email domain is lenne, nem csak egy domain.
leginkább telefonok, és thunderbird lenne a kliensek, távolból, mindenkinek a saját gépén.

- 4-5 kis tereheltségű website futtatása
elsősorban (mongodb, nodejs backenddel, angular5 frontenddel)

- némi fájl, naptár szinkronizációs szolgáltatás kellene még.
pl nextcloud tökéletes is lesz hozzá.

- OpenVPN: szeretném, ha a kliensek VPN-re csatlakoznának, és úgy működne a levelezés, fájlszink, stb.
Vagy ez csak egy "hamis biztonság" érzetét kelti számomra?

Nulladik kérdés: Kell-e az OpenVPN igazából vagy sem?
Mert ha jó ötlet, akkor indul a fejvakarás igazán...és bejönn a képbe a FreeIPA...
Kell-e nekem az? el lehet karistoni ilyen igények mentén nélküle?
Jobban járok, ha használok LDAP-ot, FreeIPA-t, Samba-t a felhasználók kezeléséhez?
Nem feltétlen ragaszkodok a FreeIPAhoz...de...valami azt súgja hogy nem bánnám meg hosszú távon.

Ha a válaszok, javaslatok NEMLEGESEK, akkor gyakorlatilag nincs is több kérédésem,
mert az irományom további része arra vonatkozik, ha valamelyik LDAP, Samba, stb.. mellett kellene döntenem VPNnel megtoldva.

A virtualizáció egyértelmű.

--------------------------------------------------
Host OS választása:
--------------------------------------------------
A Host még csak csak egyértelmű, mert KVM, vagy LXC-vel szeretném megugrani a feladatot.
A Host gyors reinstallja után, imagek helyreállításával defibrilálható az infrastruktúra. Ez tökéletesen megfelel, ha beüt a villám.

- Ha KVM, akkor a hostra én egy Debian 9-et, vagy bevárom az Ubuntu 18.04-et.
- Ha LXC, akkor szintén Ubuntu 18.04 LTS

Dockerben nem gondolkozom, mert az nekem kínai, nem ismerem, és igen, ki merem mondani, hogy félek tőle :D
dist, release upgrade ektől szeretnék tartózkodni amennyire, ameddig csak lehet, mert nem bízom benne, hogy probléma mentes lenne...

Kérdések:
- Ki melyiket javasolja, ki melyiket látja egyszerűbbnek, probléma mentesebbnek?
- Fedora-ban is gondolkozom KVM esetében, de az aktuális releasenek 1 év a támogatottsága, amit keveslek...

--------------------------------------------------
Guest választás:
--------------------------------------------------
- LXC esetén Ubuntu 18.04, nem kavarom meg mással. viszonylag frissek a csomagok, kivéve FreeIPA...és ez itt fájdalamas pont
jelenleg 4.4-es verziót látok a csomaglistában...
- KVM esetén szabad a gazda, tanácstalanság van teljesen...
Fedora/Centos7-ben már 4.5, 4.6os FreeIPA verziók vannak.
- Fedora: nincs long term support....
- Centos: Postfix, Dovecot...ősrégi csomagok...na ez az egy bajom a Centos7-tel / meg az hogy debianos vagyok :) /
Debian / Ubuntu
- Debian: sidben van FreeIPA 4.6...stabilban NINCS. => K.O. / eddig voltam debianos :) /
- Ubuntu: ugyanaz mint LXC esetén.

Kérdések:
- Ubuntu 18.04 kompromisszumos választásnak tűnik GuestOS számára.
- Kell-e foglalkozzak azzal, hogy 4.5, 4.6os FreeIPA-k mennek már Rhel vonalon az Ubuntu 4.4 ével szemben?
- Mennyire lehet macerás, ha mondjuk a FreeIPA server, illetve a hozzá kapcsolódó szerverek nem ugynazt a distribet futtatják?
természertesen eltérők lesznek ipa kliensek verziói ezáltal. pl. Centos 7, mert szebb a freeipa szerver verziója (4.5).
mail szervernek meg egy ubuntu, a frissebb postfix, dovecot miatt, de ott csak 4.4-es az ipa kliens.

-------------------------------------------------
Topológia, virtuális hálózat, tűzfal
-------------------------------------------------
- LXC esetén viszonylag kevés a mozgástér(vagy?). a Host végzi a tűzfal, port forward funkciókat, határvédelmet. / szerintem /
- KVM esetén lehetne egy külön VM tűzfalnak, pl OPNSense. Ezzel az LDAP auth, OpenVPN gyakorlatilag bónuszban megnyerhető.
vagy szintén a host valósítja meg a tűzfal, és port forwardot a VM-ek felé.

külön vm lenne az ipanak, külön mail szerver, külön www VM annak a 4-5 sitenak, és külön vm a filesync-nek.

Kérdések:
- ki melyiknek menne neki?
- kell-e feltétlen valamely IPS/IDS megoldás, vagy annélkül ma már "halott", egy infrastruktúra?
- érdemes-e OpenVSwitch-et beállítani, vagy sem?

A fő cél természetesen a production, és hosszú távon, tehát:
- google az én barátom => nem keresési versenyt szeretnék indítani.
Nagyon jó leírások vannak => Neked pedig lehet hogy van valós tapasztalatod.
Valós production tapasztalatokat vajnyi kevesen tesznek közzé sajnos..
- Nem a megoldást várom egy egy konkrét problémára, hanem tapasztalt emberek iránymutatásait, melyek a "helyes úton" tartanak.
- tudom hogy van Zentyal, UCS, meg ClearOS, meg különféle integrált megoldások..és biztos nagyon jók is.
- nem hitvitát kívánok kiprovokálni különböző rendszerek, vagy szoftverek között. Ezt is fontosnak tartom leszögezni.

Azt hiszem ez így első blikkre elég is lesz...A többit majd, ha már kezd kialakulni valami körvonal

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ő.

Felraksz egy Proxmox-ot, integráltan benne van az LXC és a KVM is, mindent meg tudsz benne csinálni, amit szeretnél.

Ez csak a virtualizáció hoszt, afölött azt és úgy csinálod meg, ahogy akarod.

+1 Proxmox, esetleg ingyenes esxi...
Én CentOS 7-eket használnék.
A webszervert, a levelezőszervert, sambát, nexcloud-ot mindenképpen külön-külön virtuális szerverre tenném(lehet itt a 12gb ram lesz kicsit szűkös).
Minden szervernek lenne belső IP címe, de a kifelé publikált dolgoknak lehet kell majd több külső IP is.
Esetleg külön virtuális gép tűzfalnak.
VPN-t én csak adminoknak adnék, openvpn szerver mehetne a tűzfalra.
Levelező szervernek nézzétek meg a zimbrát(van hozzá naptár, erőforrás foglalási lehetőség, levelezési mappa megosztás, közös címjegyzék, csoportmunka támogatás, chat, stb...)

VPN-nek itt nem sok értelme van szerintem, csak a felhasználóknak okoznál problémát, illetve a nem működik a levelező telefonok jönnének sorra, állandóan.
Egy sima webkiszolgálói környezetnek valamint levelezésnek szerintem felesleges virtualizált környezet, még ha az divatos. Nextcloud-ot be tudod állítani IMAP auth-ra. Sok-sok szívástól tudod magad megkímélni. Inkább a mail rate limitre, és használnék a weboldalak (nextcloud előtt is), egy nginx proxy-t, oda rakhatsz fel naxsi-t, badbot szűrést, a többi szolgáltatást pedig csak localhost-on fusson, ne is nyisson portot külső interface-re.
A biztonsági mentésről se feledkezz meg, onsite és offsite is hasznos.
A szervernél 12vCPU? ez már virtualizált környezet?

Nem virtualizált.
Egy HP DL360 G6-ról van szó, fiziaki 6 magos procival, ami 12 magot tol ki magából összesen.
A vitrualizációt, vagy lxc-t a disaster recovery, illetve backup egyszerűsítése miatt gondolnám használni.

Proxmox teljesen jó, ajánlom.
Én már virtualizáció nélkül nem építenék környezetet.
Későbbiekben nagyon meg tudja könnyíteni az életedet.
Tennék egy közös revproxy-t minden webes szolgáltatás elé és VPN-t.
VPN előnyei:

- látod ki honnan lép be (audit)
- nem kell a publikus netre kiraknod semmit ami nem feltétlen szükséges, még az ssh-kat sem.

--
Gábriel Ákos

VPN +sok. Minden szolgáltatás a belső céges hálózaton legyen csak elérhető, aki fizikailag ott van (ethernet, wifi) az úgyis hozzáfér, a távoli hozzáférőknek pedig kontrollált belépési pontot biztosít. Néhány dolgot persze ki lehet vinni, körültekintéssel (pl. levelező).

--
debian,libreelec,openmediavault,ubuntu,windows,arch,lineageOS
zbook/elitebook/rpi3/nexus5_hammerhead

Ja, első körben openvpn-t admin célra használnám.
Felépíteni egy vpn-es infrastruktúrát úgy hogy a mobilos klienseknek is kényelmes legyen már egy kicsit combosabb (de nagyon érdekes) feladat.
OpenVPN-el is meg lehet csinálni, létezik kliens iosra és androidra is.
ldap auth szerintem érdemes.

--
Gábriel Ákos

Köszönöm az eddig hozzászólóknak az infókat, javaslatokat, és mindenkinek aki elolvasta az irományomat.
Bevallom, az gondoltam nagyobb port fog kavarni majd a bejegyzés :) de így számomra annál értékesebbek a hozzászólások!
Későbbiekben estleg egy másik pl, Linux-Haladó témakörben is megjáratom majd az irományt, mert szerintem nem én vagyok az egyetlen aki hasonlókon dilemázik.

Igen, a RAM kevés lesz, ezt már biztosra vehetem, eszközölni is fogok egy bővítést.

Proxmox. Az éjjel futottam vele egy kört. Tényleg meggyőző! Én valahol a 3.xes Proxmoxnál elmaradtam, így eszembe se jutott.

A host kérdése Proxmox, illetve Ubuntu LXD/LXC-re redukálódott..
Nálam hajszállal az lxd/lxc vezet, jó lenne hallani egy LXC-s production tapasztalatot is, mire lehet számítani vele hosszabb távon,
ki miért ajánlja vagy sem. Valószínűleg az lesz, amelyik jobban elfut a vason.

A vpn kérdésről egy az egyben meggyőztetek, hogy felesleges. Jobban belegondolva tényleg csak szivatás lenne, mert lesz olyan felhasználó is akinek az bőven elég lesz, hogy a Thunderbirdöt hogy állítsa be. / autodiscover ellenére..../

Zimra (és társai) egy az egyben elkerülte a figyelmemet, köszönöm, azt is meg fogom vizsgálni.

Egy másik fórumról is kaptam pár véleményezést, ott elhangzott az "ágyúval verébre"..
A proxmox-ot ott is támogatták nagy erőkkel, illetve kicsinek lett titulálva a felhasználói létszám egy LDAP, Samba AD-hez, továbbá ugye
jelen esetben nincs lokális hálózat..

Még egyszer köszönöm az eddig hozzászólóknak!

FYI: A Proxmoxon a containerek LXC alapúak, nem kötelező VM-et használni.

A felsorolt igények alapján én azért nem kapkodnám el a ram bővítést valós tesztek nélkül. Ezt lehet, hogy ehhez a vashoz képest egy 'töredék' vps is elvinné, ezért az ágyúval verébre nem feltétlenül alaptalan.
Ne ismételd meg a krédést más kategóriában, csak rontani fogsz a dolgon.

Mi LXD-t hasznalunk poduction-ben. Jo sokat. Mukodik.
Tobbet nem tudok elmondani rola.

IMHO a proxmox egy felesleges reteg szamodra. Semmi pluszt nem hoz be, de legalabb bonyolitja az eleted.
Az OpenVPN-t a levelezes eseten felejtsd el, az meg csak a felhasznalok eletenek a bonyolitasara jo.

Ezzel vitatkoznék. Különösen egy kezdőnek (akinek nincs mindene agyonscriptelve) meg tudja könnyíteni az életét a GUI.
Teljesítmény szempontból meg a proxmox nincs útban, pont ugyanúgy lxc a konténer.
Nem mellesleg a proxmox alá kvm-be is betolhatsz bármit, legyen az egy csak így letölthető appliance (kipróbálásra) vagy egy windows vagy bármi.

--
Gábriel Ákos

> Ezzel vitatkoznék. Különösen egy kezdőnek (akinek nincs mindene agyonscriptelve) meg tudja könnyíteni az életét a GUI.

En meg ezzel vitatkozom.
A telepites idejere talan megkonnyiti (az sem feltetlenul).
Utana viszont total szivas lesz. A legritkabb esetben mukodik a gui-s stuffoknak a frissitese problemamentesen.

Az LXC-nel egyszerubben nincs virtualizacios szoftver, amit telepiteni lehetne. Az LXD kb. ket lepessel nehezebb, de meg mindig a lofasz kategoria.
Proxmox nelkul is odatehet akarmennyi kvm-et. Hozzateszem, inkabb ne tegye ekkora gepen.

2012 óta üzemeltetünk Proxmoxot. Nem volt vele igazi gondunk.
Én arról nyilatkozok amiről tapasztalatom van, aztán az OP dönti el úgyis hogy mit tesz.

--
Gábriel Ákos

Próbáltál ubuntun, lxc konténerben nfs szervert futtatni? ;)

Lehet. Proxmoxhoz szépen le van dokumentálva, hogyan kell.
--
Gábriel Ákos

Mivel az nfs kernel server nem támogatja az izolációt, előbb-utóbb nagyot lehet szopni vele. Viszont van Ganesha!

Lehet, csak mire a zember megtalálja, hogy az apparmor profil tesz neki keresztbe... :D

Proxmoxot használok 1.2 óta, most 5.1-nél tartunk.
Folyamatosan frissítem, a legnagyobb cucc amit üzemeltetek vele az 5 szerveres, shared storages-es cucc.

Problémamentes. Kezdés óta.
Szóval én meg a a ritkán működik jó a frissítés az ilyen guis cuccoknak kijelentéseddel vitatkoznék picit :)

Elfogadom.
Sosem hasznaltam. Zimbrabol, webminbol es hasonlo alkalmazasokbol indultam ki.

Biztos tok jo a proxmox. Attol meg felesleges. Privat velemeny.
LXD-t hasznalok, a legnagyobb szerverem nem tudom, mekkora. Mondjuk 100 alatti LXC/LXD csucsul rajta. A szervereket sem szamoltam ossze, de azok is 100 alatt vannak.
Csak akkor szoptam vele, ha magamnak csinaltam a bajt. Kopp-kopp.

A Proxmoxot direkt KVM és LXC szervernek reszelik sok éve. Custom kernellel, frissebb QEMU-val pl. mint ami alapból Debianban van. Szerintem teljesen jó, hogy nem kell pl. a távolról biztonságosan elérhető VM konzolt kézzel összelőni. Van saját REST API-ja is, ha túllép valaki a van 5-10 VM szinten. Ehhez képest nekem ami Ubuntuban van, az fapadnak és kézzel reszelésnek érződik, bár már évek óta nem néztem vissza, mivel a Proxmox bevált.

PS: A Web UI sokkal jobb (ExtJS-re épül), mint akár a Zimbra vagy a Webmin. Korunk egyik rejtélye, hogy a Webmin hogy tudott elterjedni, mert már 10 éve is ciki volt, ahogy kinézett és működött.

> A webmin nekem a mostanra mar letunt korban is rejtely volt, amikor esetleg hasznalhattam volna. Inkabb hatrany volt, mint elony user experience es bugossag szempontjabol is.

KVM-nek lehet, h megeri, LXC-nek szerintem nem.
A kontenerek annyira ecceruek, hogy tenyleg csak rontani lehet a helyzeten. Dehat ez van, ilyen a valtozatossag;)

Persze, egyetértek veled, csak minden feladatnál sok ismeretlen van, amit nehéz beárazni.
Pl.
idő: mennyi míg összerakod, ha frissíteni kell mennyit sz.psz vele
támogatás: mennyien használják? ha belefutsz valamibe, akkor mennyi idő alatt találsz megoldást?
fizetős támogatás: mi van, ha hivatalos support is kell?
betanulás: GUI v. konzol huszár? melyiket mennyi idő elsajátítani és működőképesen implementálni?

Én ezért vagyok a Proxmox mellett, mert viszonylag jól teljesít ezekben a műsorszámokban, akár kezdő rendszergazda kezében is.

Btw. nekem is van 30+ dockeres megoldásom ahol mindent CLI-ből csinálok, de ahhoz ketten férünk hozzá és nincs ott a fejem felett démoklész kardja h. holnap valami zöldfülűnek is kellene csinálnia egy "vm"-et :)

Akkor már inkább libvirtd mint köztes megoldás. Ha kell neki a GUI akkor meg virt-manager hozzá.

+1

Hát ja, 1 szerverhez minek Proxmox. Még jó, hogy nem OpenStack mindjárt :)

Meghát gyakorlatilag az összes guis cucc libvirtd-t használ a háttérben.

A proxmox pont nem (FIXME).

Meglehet, de mintha lett volna egy körük vele. Ovirt tuti arra épül az meg a redhat cucca.

Miért ne? Nulla overhead, a diszkhely miatt meg ne sírjunk már '18-ban. Szerintem.
--
Gábriel Ákos

0 overhead - memóriát csak zabál. CPU-t is a webes bizbaz.
De, akkor legyen mégis OpenStack, ha '18-ban emiatt nem aggódunk.

Minimálisat, mert ExtJS a UI, a szerver csak REST API-t ad. Az OpenStacket meg ne keverjük már ide, már attól elfáradok, ha elolvasom a szükséges komponensek felsorolását. :)

A Proxmox pont azért jó, mert 1 gépre is felmegy, de elég nagy clustereket lehet vele flexibilisen felépíteni, ha megnőnek az igények.

Érdemes lenne megnézned az openstack minimál követelményeit - és esetleg a proxmoxét is ha már ott vagy.
Ha megnézted, szerintem képes leszel eldönteni, hogy a kérdező hardverére melyiket lehet feltenni és melyiket nem.
--
Gábriel Ákos

Az adott feladatra mindkettő tök felesleges, de felőlem bárki azt használ, amit akar.

Bocsi, nincs energiám hosszabb választ írni :)
Előttem szólok jókat mondtak, annyi h. én a groupware funkcionalitást egyben tartanám. A levelezés dovecot, calendar meg nextcloud, x meg y vonal elég macera lehet.

Én ezzel próbálkoznék első körben:
Proxmox
felhasználók kezelésére: Univention Corporate Server v. Debian 9 +samba4 (AD oder LDAP) - Zentyalt felejtsd el, mert egy kalap kaki mostanában a dev edition
groupware, fájlmegosztás: Debian 9.0 + Kopano Community Edition + Z-Push (imap durvább firewallok mögül nem lesz barátod, activesync meg igen) + NextCloud

OpenVPN: telefonokkal meg fogod szívatni magad (vagyis inkább az userekkel)

LXC: sztem inkább KVM
IDS/IPS: ha van időd adminisztrálni, akkor jó ötlet, ha nincs akkor nagyon drága lesz :)

website: ízlés szerint kb, bármi jó rá.

Döntsd el: long term support kell, vagy a holnapi friss főverziók? A kettő együtt nem műx. Részemről CentOS, base+epel, és (szinte) minden megy. Nem a legfrissebb főverziók, de ha megnézed, hogy a CentOS7 életciklusa/támogatottasága meddig tart... Nos, közben Debian/Buguntu vonalon kell két-három dist-upgrade, ami komplett infrastruktúra esetén nem biztos, hogy olyan sima, mint ahogy elsőre kinéz. Írod is, hogy szeretnél tartózkodni ilyenektől...
Amit saját bőrömön tapasztaltam, az annyi, hogy IPA-ból kettő darab legyen minimum, _és_ a certek lejáratára nagyon figyelj oda/teszteld/csinálj kézi frissítést, mert azzal khm. nagyon rá lehet faragni. Nekem RHEL5/6/7 környezetben volt IPA a kezem alatt, az sssd verziók eltérése nem volt probléma, de jobb, ha nem csúszol nagyon szét a verziókkal (CentOS-on nem lesz főverzióban frissebb ipa a hetesben, deb/buguntu esetén meg a jó ég tudja, hogy a rövid életciklus okán meddig mennek előre...)
Frissítés/patch és konfigmenedzsmentre, illetve monitoringra is érdemes "gyúrni" - az előbbiek okán az egységes platfom felé mennék, az utóbbiban meg Zabbix felé - ez mondjuk CentOS esetén újabb repót jelent, de megint csak egy szerveren - a kliens itt is lehet régebbi, base+epel párosból érkező.

Egyáltalán van már IPA Debian / Ubuntu-ban? :) Amikor pár éve ránéztem, akkor nagyon RH találmánynak tűnt. :)

Van.
--
Gábriel Ákos