Newsgroup: it.comp.os.linux.sys
Titolo: Autenticazione centralizzata ...

help. ;)
Ho un certo numero di server, tutti il LAN. Tutti Debian Etch stable.
Ho la necessità di "centralizzare" le login. Crescono sia gli utenti sia
il numero di server.
Sono giorni che "googolo", ho trovato una "miriade" di howtos e
tutorials, tutti abbastanza diversi. Alcuni apparentemente usano solo
LDAP (slapd). Altri Kerberos per l'autenticazione.
Non ho mai fatto una cosa del genere.
Quello che vorrei ottenere, in sostanza, è un server che gestisca
l'autenticazione degli utenti per i vari servizi sulle varie macchine.
Tutte Linux.
Prevalentemente, si tratta di accounts SSH, PostgreSQL, proFTPD,
subversion, samba, su vari server.
Non voletemene ... qualcosa in stile "active directory" (E' una delle
poche cose in Win che secondo me ha perfettamente senso). ;)
Idealmente, ogni "persona" (sysadmin, dba, sviluppatori, ecc.) avrebbe
UNO username e pass per TUTTI i servizi.
Non cerco "pappa pronta". Anzi, è il contrario...
Avete qualche link che mi permetta di capire - in primis concettualmente
- come (e soprattutto CON COSA) implementare quello che mi serve ?
Consigli, da chi ha già implementato una cosa simile ?
grazie !
ciao, f.

 base utenti e' INTERNA.
???
http://www.postgresql.org/docs/8.2/static/auth-methods.html#AUTH-LDAP
C.

Cujo ha scritto:

Sto iniziando anche io e direi proprio che vale la pena di usare ldap, 
poi avendo solo linux dovresti avere anche meno problemi!

 poi avendo solo linux dovresti avere anche meno problemi!
Grazie (a tutti), inizio a studiare.
Non ho "solo" linux, c'e' un dominio AD con una sessantina di clients,
ed una trentina di Mac OS X.
Le macchine linux perņ sono "accedute" da un numero ristretto di utenti
(una decina), diciamo che mi accontento di due "domini" di
autenticazione.
grazie
ciao, f.

 
Linux e OSX li puoi integrare "abbastanza" facilmente con AD.
-- 
Vide

 ah. non ero al corrente della cosa.
[..]
Ottimo, anche PostgreSQL...
Mi sto documenando, nel frattempo ho messo su due macchine virtuali per
dei test.
Perň non capisco bene una cosa ... LDAP dovrebbe essere (se ho capito
bene) una *directory*, non un servizio di autenticazione. Basta ed
avanza ? ;)
thanks
ciao, f.

Cujo wrote:

anche /etc/passwd,group,shadow sono semplicemente dei file di testo. devi
istruire pam ad usare la directory ldap per l'autenticazione.
http://www.gentoo.org/doc/en/ldap-howto.xml
questi sono scenari un po' piů complessi:
http://dokuwiki.solstice.nl/dokuwiki/doku.php?id=hannibal:start
http://www.linuxjournal.com/article/8374
http://www.linuxjournal.com/article/8375
http://www.linuxjournal.com/article/8376
http://www.linuxjournal.com/article/8377

 istruire pam ad usare la directory ldap per l'autenticazione.
[..]
Grazie !
ciao, f.

 Non ho "solo" linux, c'e' un dominio AD 
Volendo puoi usare quello.
Fatto oggi come proof-of-concept per un cliente, per l'accesso in ssh ad
un server debian utilizzando le utenze del suo dominio.
Bastano winbind, krb5-client e pam.

 ah. non ero al corrente della cosa.
Perche` e` una funzionalita` di PostgreSQL 8.2.x . Per ottenere qualcosa di
simile con le versioni precedenti, l'unica e` andare via PAM (supportato
sicuramente nella serie 8.0 e nella serie 8.1)
Enrico

 Tutte Linux.
Posto che LDAP _e`_ la soluzione, ti consiglio di tenere bene in mente cio`
che vuoi ottenere e come. Considerando che hai:
- Active Directory (che e` LDAP);
- Debian;
- varie ed eventuali;
La scelta migliore, personalmente, e` di mantenere il dominio AD e di
istruire i server in modo che prendano i dati dalla directory messa a
disposizione dai server Microsoft (come tra l'altro suggeritoti da
whiplash). Se poi vuoi smontare il servizio AD, prima di scegliere ti
consiglio di provare le varie implementazioni di LDAP in circolazione
tenendo conto che:
- OpenLDAP e` piu` o meno uno standard, ovvero trovi molta piu`
  documentazione specifica rispetto agli altri server LDAP;
- Durante la sua campagna acquisti, Red Hat ha comprato il server LDAP
  implementato all'epoca da Netscape, e l'ha rilasciato open source con il
  nome di Fedora Directory Server che, da quello che si dice in giro, e` uno
  dei migliori server LDAP in circolazione (una su tutte, FDS supporta il
  multimaster, cosa che OpenLDAP non ha). Una implementazione simile e` data
  anche da Sun Java Directory Server, in quanto, assieme al prodotto
  sviluppato all'epoca da Netscape, ha le stesse origini;
- In circolazione ci sono anche le implementazioni di server LDAP scritti in
  Java, tra cui quella sviluppata dalla fondazione Apache (Apache Directory
  Server) e quella sponsorizzata da Sun (OpenDS). Sinceramente non so come
  sono, ma un'occhiata glie la darei, se non altro per farti un'idea se ne
  vale la pena o meno.
HTH
Enrico

 autenticazione.
qualche post più indietro avevo trovato la soluzione migliore per la MIA
situazione, ovvero trovare il modo di autenticare gli utenti senza dover
modificare lo schema LDAP di AD o aggiungere demoni aggiuntivi come
Samba o Openldap Server...insomma se vuoi solamente che gli utenti usino
la stessa login su tutte le piattaforme (unix e windows) la soluzione
migliore IMHO è nss_ldap ed pam_ldap pochi moduli che ti garantiscono
ottimi risultati e con minimo impatto (praticamente nullo) su entrambe
le piattaforme.
Se però hai necessità di utilizzare altri attributi o risorse ldap (tipo
anche le home centralizzate) allora è necessario implementare qualcosa
d'altro, ovvero modificare lo schema AD o aggiungere OpenLdap/Samba in NFS.
prima definisci quello che vuoi esattamente ottenere e poi si può
discutere dei dettagli..
Ciao
Andrea

 sicuramente nella serie 8.0 e nella serie 8.1)
[..]
Per le cose "critiche" cmq. compilo da sorgente. Ho la 8.2.5. ;)
ciao, f.

> base utenti e' INTERNA.
c> 
http://www.postgresql.org/docs/8.2/static/auth-methods.html#AUTH-LDAP
...quella è l'autenticazione, e la possibilità di usare pam con
postgres è presente dalla 7.qualcosa...
Gli utenti in postgres però te li devi creare a mano... ad ogni modo
funziona perfettamente.
-- 
  Chi crede che una crescita esponenziale possa continuare all'infinito in
  un mondo finito ? un folle, oppure un economista.
							(?!)

 Per le cose "critiche" cmq. compilo da sorgente. Ho la 8.2.5.
Sorgente preso da sito o sorgente preso da distribuzione? No, perche` il
secondo lo capisco (ottimizzo, personalizzo, e integro nella
distribuzione), il primo mi ha lasciato sempre un po' perplesso...
Enrico

 distribuzione), il primo mi ha lasciato sempre un po' perplesso...
Sorgente preso dal sito ufficiale.
Faccio così in genere con PostgreSQL, php, apache e poco altro.
Forse ha poco senso, ma ho il controllo *totale* della versione che ho
su. Non "integro" affatto nella distribuzione, anzi faccio il contrario.
;) L'unica cosa che integro sono gli scripts in "init.d". Quelli me li
riscrivo partendo da quelli della distribuzione.
Per il resto installo in /usr/local, e metto le config in /etc/conf.
Supponiamo che si parli di php. Ho la 5.2.4 in /usr/local/php-5.2.4, con
un symlink che ci punta in /usr/local/php. In tutto il sistema mi
riferisco sempre a /usr/local/php.
Quando esce la 5.2.5, la compilo (tengo la stringa dei parametri di
./configure in un file di testo, ad es. in
/etc/conf/confargs/php-5.2.x), quindi in genere cambio solo il prefix
nel file di testo e lancio:
# ./configure `cat /etc/conf/confargs/php-5.2.x`
# make && make install
Poi aggiorno il symlink. Se qualcosa si rompe o non va più, la vecchia è
ancora lì, risposto il symlink e tutto torna come prima.
Per alcuni è uno sbattimento. ;) Avendo iniziato con slack compilandomi
praticamente tutto (beh, meno il sistema base), per me non lo è più di
tanto.
ciao, f.

Cujo ha scritto:

Accidenti complimenti per la pazienza :)
Io proprio per il software di base non mi sognerei mai di fare una cosa 
del genere, ma non mi sono ben chiari i vantaggi di questo approccio..

  ma non mi sono ben chiari i vantaggi di questo approccio..
Esigo di conoscere al meglio il software "primario" delle macchine che
gestisco. Il fatto è che mi sono accorto che spesso quando sei alle
prime armi con un software particolare, non è chiaro che cosa sia
catatteristico di quel software e che cosa sia caratteristico della
distribuzione.
Quindi quando ho a che fare con qualcosa che non conosco (e ho tempo),
in genere me lo compilo. A quel punto già me lo sono "ottimizzato", e
tanto vale compilarlo in futuro. Se ti salvi la stringa che passi a
configure, e col tempo te la "rifinisci", davvero la fatica è la stessa
che fai usando apt-get. ;)
Non credo cmq. affatto di "avere ragione"... è il mio modo "personale"
di fare le cose, non ho nulla contro chi usa i pacchetti per tutto. ;)
Infine ... per slapd ho usato il pacchetto, ma sto ancora testando. ;)
Non sono mica troppo coerente. O forse sto invecchiando. ;)
ciao, f.


sull'ultimo nulero di linux&c ci sono 2 articoli:
- integrazione di client/server linux in AD
- single point of auth in linux
Ciao
Stefano 

 su. Non "integro" affatto nella distribuzione, anzi faccio il contrario.
Personalmente l'hai appena detto, non ha senso, soprattutto considerando che
con un `apt-get source pacchetto` hai:
- i sorgenti dell'applicazione;
- le patch aggiunte dal mantainer del pacchetto (con l'ovvia possibilita` di
  aggiungerne delle tue, anche se c'e` da sbatterci un poco);
- gli script di creazione del pacchetto.
In un contesto del genere, scaricare il sorgente dell'applicazione
originale, applicarvi delle patch, ed installarlo su di un percorso
specifico lo vedo abbastanza macchinoso e rognoso (e.g. se installo
PostgreSQL via sorgente, tutte le applicazioni che lo richiedono devono
essere installate alla stessa maniera, in quanto via pacchetto non potrei
soddisfare le dipendenze se non installando la libreria libpq, con
conseguente spreco di spazio e creazione di possibili problemi). L'unico
motivo per cui un'operazione del genere ha senso e` se non esiste il
pacchetto per la distribuzione (e.g. il pacchetto FedoraDS non esiste in
Debian) o se la politica della distribuzione non crea piu` complicazioni
del necessario (e.g. il pacchetto di Tomcat su Debian e` un delirio)
Enrico

 Personalmente l'hai appena detto, non ha senso
[..]
Ni. ;)
root@deb01 ~ # apt-cache search postgresql-8
postgresql-8.1 - object-relational SQL database, version 8.1 server
[..]
root@deb01 ~ # psql --version
psql (PostgreSQL) 8.2.5
Ora **POTREI** andare a prendermi il pacchetto singolo dalla testing (ma
non mi piace l'idea), o **POTREI** cercare un pacchetto 8.2.5 compilato
per debian stable, ma ci metterei il quadruplo del tempo, e sarebbe
disponibile parecchio tempo dopo.
ciao, f.

 pacchetto per la distribuzione (e.g. il pacchetto FedoraDS non esiste in
... o se il pacchetto della tua distribuzione non e' per la versione
del software che ti serve. O se il lavoro di customizzazione del src
della distro e' piu' oneroso che non fare tutto da zero dai sorgenti
originali.
Fabio

Cujo ha scritto:

Secondo me ha senso solo a scopo didattico, per scoprire meglio un 
software complesso compilarlo è già un buon inizio.
Ma piuttosto di farlo per il software che devo poi mantenere e che 
interagisce col resto del sistema mi creo il pacchetto io per la mia 
distribuzione dopo averlo testato o ritestato, o se proprio non c'è 
verso cambio distribuzione :D
Ti voglio vedere fra 6 mesi quando non ti ricorderai più nulla e un 
aggiornamento di qualcosa renderà un inferno la tua vita di sysadmin :D

 disponibile parecchio tempo dopo.
http://packages.debian.org/search
?
keywords=postgres&searchon=names&section=all&suite=etch-backports
;)
Bye.

 ciao, f.
-- 
Rebbe on bmw r1150r dark blue (2006)

 LDAP (slapd). Altri Kerberos per l'autenticazione.
Io ho Kerberos + LDAP, prima avevo nis (e in alcune installazioni ancora
c'è, a casa ad esempio, per pigrizia semplicemente). Non posso affatto
lamentarmi, con pam praticamente tutti i servizi accettano
autenticazione via LDAP, Kerberos l'ho messo per il single sign on e
perché è certamente più sicuro di LDAP standard, unica rogna se una
delle macchine ha l'orologio sballato Kerberos non ti fa autenticare.
Per iniziare ho letto: 
http://www.ba.infn.it/calcolo/documenti/autaut.html
 
Ciao, Micky
-- 
What's this hash prompt on my terminal mean?
Micky Del Favero  -  System Manager  &  BOFH

 sarebbe disponibile parecchio tempo dopo.
Credo sia certamente più sicuro e semplice fare apt-get source -b da
testing che compilare a manina, il mantainer del pacchetto segue lo
sviluppo e patcha i sorgenti con più attenzione di quanto non possa
farlo tu.


 per debian stable
Come ti ha fatto notare Alesandro, esistono i repository denominati
backports, nati apposta per dotare stable di tutti quei software che si
sono aggiornati da un rilascio ad un altro (e PostgreSQL e` uno di questi).
Ovviamente, come hai detto, le cose bisogna saperle, ma la storia dei
backports e` nota e stranota, e quindi bastava una mezza ricerca per
conoscerne l'esistenza
Enrico
P.S. una domanda a tutti gli altri: ma backports prende i sorgenti da
testing o da unstable?

 del software che ti serve.
Questo e` un non problema, se ti serve una versione specifica basta cercare
nei maggiori repository non ufficiali (e.g. Debian backports), sicuramente
c'e` qualcosa. Teniamo inoltre a precisare una cosa: un software preso da
un repository non ufficiale, o compilato da una versione della
distribuzione in sviluppo, non significa cercarsi dei problemi
insormontabili. Quel software e` e sara` sempre testato da un numero
maggiore di persone di quelle che immaginiamo
Enrico

 testing o da unstable?
c'è scritto nella terza riga dell'home page.

 c'è scritto nella terza riga dell'home page.
DOH!
Enrico

 farlo tu.
Non siamo su icoli.
Fabio