Linux szerverek adminisztrációjához (gyak. kizárólag ssh auth, ~5 user, 10+ szerver) keresnék valami egyszerű, de megbízható user management / központi authentikációs megoldást.
Keresgéltem a fórumokon, sokan ajánlják a FreeIPA-t, megnéztem, nem is rossz, de talán ágyúval verébre.
Esetleg PAM-LDAP? Az tud kulcs alapú auth-ot? - ez lényeges lenne!
Illetve, ilyen esetben mi a szokásos vész-forgatókönyv, ha valami oknál fogva épp az auth szerver áll?
Ki milyen megoldást javasolna, ami DMZ-be is biztonsággal kiengedhető?
- 2462 megtekintés
Hozzászólások
A free ipa miért annyira ágyúval verébre? Értem én, hogy komplex, de egyébként is össze kéne kalapálni a local user managementet, kulcsterítést, ldap szervert ilyesmit, és a freeipa egyébként elég strandard eszközökből rakja ezt össze -- abból, amiből jó eséllyel te is összeraknád, és nem kell vele pöcsölni, elég szög egyszerű a telepítés meg az enrollment. Enyni userre valószínűleg sokat enni nem kér.
Esetleg fogsz valami puppetet vagy ansiblet, amivel szépen tolod a useradd / userdelt, meg a helyére másolgatod mindenkinek a pub kulcsát.
- A hozzászóláshoz be kell jelentkezni
+1, hasonló méretű rendszernél simán megléptem azt, hogy két gépre aktív-aktív replikával IPA, és a többiek onnan authentikáltak. És a DNS-t sem kellett külön matatni...
A kulcstologatás és userek generálása/leszedése configmanagement felől sem rossz, de az IPA-hoz képest extrém fapad - és mire kikalapálod, a szívásfaktor is magasabb lesz.
DMZ felől lehet, hogy elég (picit szegelős, de szerintem megoldható) csak a kerberos-t engedni ("bent" kinit, és a tickettel megy ki a DMZ-s gépre), ezt még nem próbáltam megoldani.
Ha nagyon paranoid vagy, akkor lehet kétfaktorosan (OTP-vel) authentikálni - ekkor viszont a sudo csak authentikáció _nélkül_ fog működni (ismert hiba, valamikor 4.x-ben javítani fogják, elég mélyen csücsül a probléma gyökere)
- A hozzászóláshoz be kell jelentkezni
Esetleg fogsz valami puppetet vagy ansiblet, amivel szépen tolod a useradd / userdelt, meg a helyére másolgatod mindenkinek a pub kulcsát.
ansible vagy mas amugy is van a topiknyitonal. 5 usert kezelni egy bebi konnyu playbook, oszt viszonlatasra...
--
"nem tárgyszerűen nézem a dolgot, hanem a vádló szerepéből. Sok bosszúságot okoztak, örülnék ha megbüntetnék őket - tudom gyarló dolog, de hát nem vagyok tökéletes." (BehringerZoltan)
- A hozzászóláshoz be kell jelentkezni
Egészen addig, amíg valaki, valahol nem matat lokálisan bele...
- A hozzászóláshoz be kell jelentkezni
file{'/etc/passwd': source => ... }
:)
- A hozzászóláshoz be kell jelentkezni
Apró probléma, hogy a gépeken nem biztos, hogy a lokális technikai userek mindenütt azonosak, és a világ végezetéig azonosak lesznek. - ezek miatt mindenképp merge kell. Aztán ha uid-ütközés van, akkor jöhet a kézimatyi...
- A hozzászóláshoz be kell jelentkezni
Nem is gondoltam komolyan, ha komolyabban gondolnám, akkor javasolnám a /etc/pam.d/sshd -be (és egyebekbe) elhelyzett pam_listfile modult:
pam_listfile.so sense=allow file=/etc/known_users-beleírsz=>széttéplek
vagy ilyesmit
- A hozzászóláshoz be kell jelentkezni
jogos, kello elszantsaggal barmit el lehet cseszni...
--
"nem tárgyszerűen nézem a dolgot, hanem a vádló szerepéből. Sok bosszúságot okoztak, örülnék ha megbüntetnék őket - tudom gyarló dolog, de hát nem vagyok tökéletes." (BehringerZoltan)
- A hozzászóláshoz be kell jelentkezni
Miert, ha belematat lokalisan, akkor mi lesz vele? Az ansible visszairja a valtoztatast es kesz.
Egyebkent wtf valaki? Maganak tudja csak elszurni.
- A hozzászóláshoz be kell jelentkezni
És a telepített app alól kivágja a csomag által igényelt technikai usert. Úgyhogy a lokális módosítást nem lehet mindenestől eldobni, ergo kezelni kell. Mondjuk úgy, hogy UID<1000 esetén nem csapni felül, a többieknél meg kézi kikalapálás kell.
- A hozzászóláshoz be kell jelentkezni
De miert vagna ki, vagy mirol beszelsz?
User managementrol van szo:
1. jdoe letezzen, ezzel a jelszoval, ezzel a real name-mel, shell-lel..stb.
2. amalia letezzen...
3. pista legyen torolt
Miert kevered ide a technikai usereket?
Sajat maga hogy tudja elszurni?
- A hozzászóláshoz be kell jelentkezni
kérdés, hogy mi a cél. Ha alapvetően a saját életét akarja megkönnyíteni a team, nem pedig az auditálhatóság és hasonlók irányából érkezik a dolog, akkor ekkora mennyiségnél lehet egyszerűbb valami favágó lófaszt összerakni, azt jóidő, ha néha valahol eltörik, azt majd megjavítják, sokáig úgy tippre nem marad, mert be azért mászkálnak gondolom rendszeresen ennyi gépre (szóval nem az van mint nagyobb rendszereken előfordul, hogy van, ahova ha nincs gond fél évig a kutya se...)
- A hozzászóláshoz be kell jelentkezni
Nézd meg az sssd-t is.
Vészforgatókönyvnek felvehetsz egy local_admin usert.
--------------------
http://grant-it.com/
- A hozzászóláshoz be kell jelentkezni
+1, különösen FreeIPA-val (gyakorlatilag ahhoz tervezték...).
BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)
- A hozzászóláshoz be kell jelentkezni
Jól veszem ki, hogy ez "csak" a klienseken cache-eli a központi authentikációt (azaz pont a vészforgatókönyvet intézi), de a külön központi rendszer (pl. AD, vagy IPA) kell mögé?
----------------------------------^v--------------------------------------
"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"
- A hozzászóláshoz be kell jelentkezni
Igen. Viszont lehet local, AD, SamBA, IPA, LDAP usernyilvántartás _is_ mögötte akár párhuzamosan - van, aki AD-ból, van, aki LDAP-ból, meg van, aki lokális fájlokból "érkezik".
Egy nagyon-nagyon-nagyon-nagyon okos nscd-t képzelj el :-P
- A hozzászóláshoz be kell jelentkezni
Igen, jól értelmezed kell valami kiszolgáló hozzá.
A vészforgatókönyvre vész esetén lesz szükség, amíg működik az sssd addig nincs vész :) Szóval én még tolnék mellé egy local admin usert(ami nem feltétlen root, környezetttől függ), ahogy fentebb említették pupet/chef/salt/ansiblie-el vagy egy jó for ciklussal managelheted a local admin usered. Vagy vészforgatókönyvnek használhatod helyi konzolon a root-ot is, általában az szokott lenni a vészforgatókönyv :)
--------------------
http://grant-it.com/
- A hozzászóláshoz be kell jelentkezni
Néunk ezt megoldotta a Puppet, Ansible. Ugyan nem központi auth, de központilag adminisztrált. Nem muszáj a teljes szervert menedzselni velük, lehet szorítkozni a juzermenedzsmentre.
- A hozzászóláshoz be kell jelentkezni
Tobben irtuk it a FreeIPA-t es nem veletlenul. Ossze van rakva na. Nekem csak egyszer doglott le az egesz egy update-nel (tobb verziot ugrottunk), mikoris a cert storeba belegeneralt egy uj cert-et, de a regi id-jevel akart mukodni ehelyett az uj id helyett. Vagy ket hetig nyomoztuk a RedHat supportal, hogy mi a franc van. :D
De ez mar regen volt.
Amugy tenyleg minek sajat, ha ebben van 389DS, Kerberos, Cert store, meg minden egybeepitve es osszecsiszolva. El lehet molyolni ugyanennek az osszerakasaval par hetig.
- A hozzászóláshoz be kell jelentkezni
Ha kevesebb mint 2 tucat géped van én sem egyiket sem másikat nem javaslom, szerintem bőven elég egy központi config management cuccos ami tud usert létrehozni, törölni. Én a magam részéről a puppet -et javaslom
----
올드보이
- A hozzászóláshoz be kell jelentkezni
Attól függ, van-e igény audit célból olyan jellegű kérdések gyors megválaszolására, hogy Gipsz Jakab mikortól meddig, melyik gépekre, milyen extra jogokkal (sudo), milyen jelszópolicy betartásával rendelkezett userrel?
- A hozzászóláshoz be kell jelentkezni
Hashicorp Vault SSH Secret Backend, Vault-SSH-Helper a szervereken, one time password módban javasolt használni, TLS-sel.
- A hozzászóláshoz be kell jelentkezni
Hali,
en openldap-ot hasznalok ssh kulcsokkal.
Alapbol az ldap-ban nincs kulcs tarolo atributum, igy azt kerestem egyet a neten:
#
# LDAP Public Key Patch schema for use with openssh-ldappubkey
# Author: Eric AUGE
#
# Based on the proposal of : Mark Ruijter
#
# octetString SYNTAX
attributetype ( 1.3.6.1.4.1.24552.500.1.1.1.13 NAME 'sshPublicKey'
DESC 'MANDATORY: OpenSSH Public key'
EQUALITY octetStringMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
# printableString SYNTAX yes|no
objectclass ( 1.3.6.1.4.1.24552.500.1.1.2.0 NAME 'ldapPublicKey' SUP top AUXILIARY
DESC 'MANDATORY: OpenSSH LPK objectclass'
MAY ( sshPublicKey $ uid )
)
Ha jol remlik a 6-os openssh-tol mar tud kulso kulcskezelot hasznalni, igy elharult az akadaly is (AuthorizedKeysCommand, AuthorizedKeysCommandUser).
Irtam egy perl scriptet ami kiszedi a kulcsokat az ldap-bol es azt hasznalom. Mivel gitolite-hoz is kellett, ezert kicsit varialgattam rajta, hogy a git felhasznalonak az ossze kulcsot kiadja. Mukodik frankon, erdemes vele jatszadozni.
- A hozzászóláshoz be kell jelentkezni
Csak szólok, hogy ha naívan a PAM-LDAP-pal akarnál szórakozni, akkor kell mellé még valami (jellemzően NSS-LDAP) *is*. De valószínűleg valamelyik korábban emlegetett komplexebbnek látszóval jobban jársz.
- A hozzászóláshoz be kell jelentkezni
Kizarolag akkor eri meg ldap (vagy barmi mas service) hasznalata, ha a rendszeren kivul mas (szinten service) usereket is akarsz authentikalni. Pl. apache, mail szerver).
Ha csak a rendszer usereket akarod kezelni, akkor generalod magadnak a problemat.
Kulonosen az IPA-val vigyaznek a helyedben a kerberos miatt, kulonbozo cifra hibakat produkalhat.
- A hozzászóláshoz be kell jelentkezni
speciel a kerberost ha kell, akár ki is lehet vágni belőle gondolom. :)
(bár sosem próbáltam még)
- A hozzászóláshoz be kell jelentkezni
Nem.
- A hozzászóláshoz be kell jelentkezni
fene. :) hát, akkor pupettel felül lehet baszni a konfigját :D
- A hozzászóláshoz be kell jelentkezni
Miért akarod a kerberost kihajítani belőle?! Egyébként meg de, ki lehet belőle szedni - az IPA ugyanis sima LDAP backendként is működhet (ssd-n keresztül), igaz ekkor se hbac, se sudo, ha jól tudom.
- A hozzászóláshoz be kell jelentkezni
én nem akarom, tompos mondta, hogy szerinte szar. És egyébként én is arra gondoltam, hogy hát ez csak sima sssd config a hoston alapvetően, de arról fogalmam sincs, hogy ezt a standard setupján keresztül be lehet-e álltítani, vagy csak kézzel.
- A hozzászóláshoz be kell jelentkezni
Az sssd tudja az IPA-t "natívan" ipa, és az ldap-szervert direktben kérdezgetve ldap backendként is használni. Ez utóbbi eset (natívan ldap-on keresztül megszólított IPA) van akkor is, ha például 5.3-nál újabb AIX-en akarsz az IPA-ból authentikálni: sssd 5.3 fölött már (még...) nincs.
Sajnos nem tudom, tompos milyen hibákra utalt kerberos kapcsán - remélem, megosztja velünk ezt az infót :-P
- A hozzászóláshoz be kell jelentkezni
A kliensbol ki lehet. Az IPA-bol nem. Az IPA szervereken mindig lesz a kerberos, annak az osszes nyugjevel.
- A hozzászóláshoz be kell jelentkezni
~4000 userrel gyakorlatilag(*) problémamentesen működik az IPA (két szerver aktív-aktív felállásban) - igaz, néhány dolgot kellett hozzá hangolni a rendszerben.
A kerberos nekem akkor produkált hibákat (#define hiba), ha el vala mászva az idő a gépek között, méghozzá nem kicsit, hanem nagyon.
Nem 100% hibamentes, de az ssh-s userek bejelentkezésével nincs probléma, illetve egy dokuwiki is (group alapon) onnan szedi, hogy ki írhatja a wikit.
- A hozzászóláshoz be kell jelentkezni
Nekem is problemamentesen mukodik az IPA.
De neki nem 4000 user adminisztralja az 20 gepet, hanem 5(!).
Aztan valtottunk a redhat (ja igen, redhat kell neki, az ubuntu-s meg mindig ratyi - FIXME) 7.0-ban levore, aztan a a service idonkent elszallt, valoszinuleg terhelestol fuggoen. Majd talan vmikor mostanaban megprobaljuk ujra.
A fejlesztokkel neztuk, akkor epp megfoghatatlan volt.
A kerberost meg azert hoztam fel, mert egy rohadtul felesleges service oda. Nem is ertem, miert raktak be a kepbe, csak a komplexitast noveli. Legalabbis szamomra pluszt nem ad. Pl. sok sikert az ansible-vel tutujgatashoz.
Apropo, az megoldas is egy kalap szar, hogy az intranetrol elerheto legyen.
Pedig imadnam, rohadt jo cucc lenne, ha nem egetnek be az ilyen szarokat.
- A hozzászóláshoz be kell jelentkezni
CentOS is príma alá, nem kell RHEL :-P Egyébként az a méretes userszám még a RHEL6-os verzión futó "régi" IPA-ban volt/van, és nem is várható migrálás - köszöni szépen, teljesen jól érzi magát ugyanis :-P
CentOS7-en futó IPA olyan 10-12 gép meg kb. 5-8 userre lett összerakva, és ott sem tapasztaltam elhasalásokat - igaz, mindkét esetben replikált, aktív-aktív felállásban működnek.
Ha nem érted, miért kell, miért jó a kerberos, akkor javaslom, nézz utána, mert elég alap technológia.
Az utolsó bekezdésedet nem tudom értelmezni, de gondolom, az is inkább "de gustibus..." mint szakmai alapon történő érvelés lenne.
- A hozzászóláshoz be kell jelentkezni
OK, akkor igazad van.
nekem 8.
op: hasznalj ipat 5 userre, nem fogsz szopni vele, mert zellernek mukodik tobbszaz szerveren, 4000 userrel, egy IT haddal a hata mogott
- A hozzászóláshoz be kell jelentkezni
Azért a "mert szar"-on kívül érdemi kifogást, alátámasztott ellenvéleményt hallhatnánk tőled, vagy "csakmertnemtetsziktehátszar" elven folyik eme nem igazán gusztusos matéria a hozzászólásaidból?
- A hozzászóláshoz be kell jelentkezni
Leirtam, hogy elszallt a service, nem eleg?:)
En leirtam, h nalam elesben elszallt, erre te irtad, hogy nalad par szerveren nem elesben nem szallt el. Nagyszeru.
En leirtam, h a kerberos szerintem felesleges, te belinkelted, hogy miert nem az.
En leirtam, hogy csak redhaten fut, ubuntu-n nem, te elkezdtel kapalozni, hogy centos-en is.
A OP leirta, hogy 5 user + 10-20 szerverre akarja hasznalni (jobb esetben virtualizalva, ami hivatalosan nem ajanlott az IPA eseten), te meg peldalozol 4000 userrel es egy banki rendszer szerverparkjaval.
Kerlek ne legy mar ENNYIRE korlatolt.
- A hozzászóláshoz be kell jelentkezni
Nem elég - ha én minden olyan sw-re azt mondanám, hogy sz@r és ne használd, akkor számítógépet nagyjából csak fűtésre javasolnék használni...
Ezt dekódold légyszives: "Apropo, az megoldas is egy kalap szar, hogy az intranetrol elerheto legyen."
- A hozzászóláshoz be kell jelentkezni
Ha van egy privat halozatod, azon ipa, mondjuk ipa1.corp.intra hoston, akkor kemenyen szenvedni kell, ha el akarod eri az internet iranyabol ipa.corp.com cimen.
Minden azert, mert olyanja van, hogy redirect-el allandoan az intra-s cimre. Van vmi megoldas, hogy turni kell az apache-ot meg meg talan mast is, de nem tudom mennyire mukodik, ill. hogy mennyire fenntarthato.
Arrol mar nem is beszelve, ha a kulso eleresre a sajat certificate-jet akarja hasznalni a user. Minden nyogvenyelos, ha egy picit el akar terni az ember az okosok altal megalmodott rendszertol.
- A hozzászóláshoz be kell jelentkezni
Értem. Az IPA-t direktben két néven/címen elérni valóban nem egyszerű (sőt), és valóban, nem így lett kitalálva.
A megoldás egyébként nem olyan nyögvenyelős, de való igaz, hogy tervezni kell, és körülményektől függ, hogy hogy célszerű megoldani.
Az IPA-t direktben DMZ-s/külvilág lábbal "kinyitni" nem tartom jó ötletnek - belső hálózaton, egy interfész, és a dmz/nagyvilág felől proxyzva (haproxy, nginx, apache, ízlés szerint) a webes kapcsolat, ha nagyon kell (ssl-t végződtet/újracsomagol).
De mindezt az adott környezet ismeretében lehet _jól_ megcsinálni. (A két interfésze, két név nem jó megoldás, valóban)
- A hozzászóláshoz be kell jelentkezni
Sokaig az LDAP hivoje voltam, de miutan mostanaban eleg sok LDAP-os rendszert latok, szeretnem felhivni a figyelmedet egy problemara:
Ha LDAP autht hasznalsz jelszoval, akkor a jelszavad minden rendszeren keresztul fog menni, ahol bejelentkezel. Azaz ha van egy lukas webalkalmazasod, es abban be kell jelentkezni, akkor ott keresztul megy a jelszavad es elkaphato. Ha ugyanezt a jelszot hasznalod midnenhol, akkor ezzel az osszes rendszeredet meg tudjak nyomni. De ha a szarul megirt webes alkalmazas veletlenul kilogolja a jelszot fileba, maris valtoztatni kell a jelszon. Szal nem idealis.
Szerintem, nezz korul az SSO es kulcsos megoldasok teren. Ha kell, akkor Puppettel, Cheffel, vagy valamilyen masik konfiguracio-menedzsment rendszerrel rakj ki SSH kulcsokat a szerverekre es a jelszot idealis esetben maximum 1 helyen kelljen beadni.
SSO-ra vannak kulonbozo megoldasok, OAuthra vannak normalis open source implementaciok, SAML-ra kevesbe.
--
Pásztor János
Sole Proprietor @ Opsbears
Development Lead @ IXOLIT
- A hozzászóláshoz be kell jelentkezni
Na pont erre valasz a Kerberos :D (ami resze a freeIPA-nak).
De amugy nem teljesen igaz amit irsz. Alkalmazas fuggo, hogy a jelszot egy webes alkalmazas hogy kuldi a szervernek. Ugyanis az protokollon keresztul leszedheti a password algoritmust es hashelheti a kuldes elott (last a sima pam-ldap exop-jat). Igy nem fog clear text-ben kuldozgeti jelszavakat. A masik ugye, ha TLS-el van megtamogatva az egesz. Ebben az esetben sem utazik clear text jelszo a halozaton az ldap fele.
Amit te leirsz az egy nem jol beallitott ldap eseten egy rosszul megirt alkalmazassal (vagy az alkalmazas altal haszalt szar ldap lib-bel) tortenhet meg.
- A hozzászóláshoz be kell jelentkezni
"Amit te leirsz az egy nem jol beallitott ldap eseten egy rosszul megirt alkalmazassal (vagy az alkalmazas altal haszalt szar ldap lib-bel) tortenhet meg."
Szerintem pont azt akarta mondani, hogy ha olyan stratégiát választasz, ahol ilyesmi nincs, akkor kissebb eséllyel szopat meg egy ldapot szarul implementáló jöttment alkalmazás.
- A hozzászóláshoz be kell jelentkezni
Ha atmegy a lukas alkalmazason a jelszo, akkor ott problema lehet. Kerberost meg azert eleg keves webes alkalmazas tamogat.
--
Pásztor János
Sole Proprietor @ Opsbears
Development Lead @ IXOLIT
- A hozzászóláshoz be kell jelentkezni