Toon posts:

[auth] users in een database

Pagina: 1
Acties:

Verwijderd

Topicstarter
Om m'n mail&ftp users (linux) via een webpagina te kunnen editen wil ik graag m'n users in een mysql database. Mijn virtusertable heb ik al in een database, maar een stapje verder kan geen kwaad. Ook ftpusers mogen wel in die database.

Ik kan het (mijns insziens) op drie manieren aanpakken:
• pam_mysql gebruiken. hiervoor moet ik echter nog steeds ook /etc/passwd aanpassen per user geloof ik
• nss_mysql gebruiken
• plain files (/etc/passwd, /etc/shadow) met een cronscript regelmatig updaten met de info uit een database

Alle mogelijkheden spreken me niet echt aan. Zijn er nog andere mogelijkheden om een stukje database bijin de normale authenticatie-sequence te frotten? Het gebruikt nu pam enz.

Nog een andere vraag: waar in het systeem wordt eigenlijk bepaald hoe de authenticatie verloopt, als in, of het pam gebruikt of nis of nog iets anders..

Verwijderd

Topicstarter
• of alles op ldap en ldap_mysql gebruiken

Verwijderd

Daemons moeten ondersteuning hebben voor een database (mysql, pgsql, ldap) om die te gebruiken, ook voor pam. Pas als je bijv. ssh met pam compiled kan die pam gebruiken, het zelfde geld voor je ftp en je mailserver. Vaak kunnen daemons zonder pam ook in ldap of mysql kijken, ze hebben dan native ldap/mysql/pgsql ondersteuning.

Ik gebruik bijv. ldap om mijn shell, mail, imap, ftp en web users te beheren. Voor openssh gebruik ik pam_ldap en nss_ldap. Apache werkt met auth_ldap, pure-ftpd en postfix hebben native ldap, cyrus-imap doet via een patch ook ldap. Werkt allemaal erg prettig.

Verwijderd

Ik zou /etc/passwd en /etc/shadow genereren uit de database. Er komt een moment dat je database backend niet draait om wat voor reden dan ook, en dan ben je genaaid. Als je files genereert, is het ergste wat je kan overkomen dat de files niet meer worden geupdate, op bestaande accounts kun je dan nog steeds inloggen en mail wordt netjes afgeleverd ipv gebounced.

  • luc
  • Registratie: Maart 2000
  • Niet online

luc

Dit heb ik gistereavond exact zo gefixt, ik gebruik postfix, courier imap (+pop3) en proftpd.
Je compiled ze alle drie met mysql support, proftpd was erg makkelijk te configgen, dit staat goed gedocumenteerd. Voor postfix en courier heb 'k een paar howto's
http://www.sweeney.demon.co.uk/pfix_imap_virtual.html
http://kummefryser.dk/HOWTO/mail/postfix_mysql.html

  • Onno
  • Registratie: Juni 1999
  • Niet online
Op zondag 24 maart 2002 23:12 schreef fladder het volgende:
Ik kan het (mijns insziens) op drie manieren aanpakken:
• pam_mysql gebruiken. hiervoor moet ik echter nog steeds ook /etc/passwd aanpassen per user geloof ik
• nss_mysql gebruiken<li> plain files (/etc/passwd, /etc/shadow) met een cronscript regelmatig updaten met de info uit een database
</li>
PAM en NSS vervangen elkaar niet, ze vullen elkaar aan. Je noemt hier dus twee mogelijkheden. :)
Alle mogelijkheden spreken me niet echt aan.
Wat is je bezwaar tegen pam_mysql & nss_mysql?
Op maandag 25 maart 2002 07:58 schreef Grasvezel het volgende:
Ik zou /etc/passwd en /etc/shadow genereren uit de database. Er komt een moment dat je database backend niet draait om wat voor reden dan ook, en dan ben je genaaid.
Welnee. Zolang je root maar in /etc/passwd laat staan is er niets aan de hand. Dat is nou juist zo leuk aan PAM/NSS, je kunt verschillende bronnen tegelijk gebruiken, en als de ene down is, blijft de andere gewoon werken.

Verwijderd

Topicstarter
Op maandag 25 maart 2002 15:03 schreef Onno het volgende:
PAM en NSS vervangen elkaar niet, ze vullen elkaar aan. Je noemt hier dus twee mogelijkheden. :)
Om dat te doen compile ik een app met pam en nss support?
Wat is je bezwaar tegen pam_mysql & nss_mysql?
Nou de mogelijkheid dat het uitvalt blijft bestaan. Hoewel ik me de laatste keer niet kan herinneren dat de database down was.

Verwijderd

Topicstarter
Ok, for the record: ga zooi gebruiken met native ldap ondersteuning en wat zut via pam_ldap. Met php kun je ook weer fijn ldap editen enzo.

• openLDAP
• Cyrus (imap/pop3)
• Postfix (mta)
• Bind
• pam_ldap

  • Onno
  • Registratie: Juni 1999
  • Niet online
Op maandag 25 maart 2002 15:58 schreef fladder het volgende:
Om dat te doen compile ik een app met pam en nss support?
Een programma hoeft niet voor NSS gecompileerd te worden, dat is iets wat binnen glibc geregeld wordt. PAM moet een programma wel ondersteunen, maar dat doet tegenwoordig eigenlijk elk programma.
Nou de mogelijkheid dat het uitvalt blijft bestaan.
Die mogelijkheid bestaat ook bij LDAP. :)

(alhoewel ik LDAP wel een betere oplossing dan MySQL vind hoor)

  • metaal
  • Registratie: Juli 2001
  • Laatst online: 31-01-2025
Op maandag 25 maart 2002 16:11 schreef fladder het volgende:
Ok, for the record: ga zooi gebruiken met native ldap ondersteuning en wat zut via pam_ldap. Met php kun je ook weer fijn ldap editen enzo.

• openLDAP
• Cyrus (imap/pop3)
• Postfix (mta)
• Bind
• pam_ldap
LDAP is een goeie keuze lijkt me. libnss_ldap zou ik ook gebruiken als ik jouw was. Ik heb het thuis ook draaien (pam_ldap en nss_ldap). Het is makkelijk op te zetten. (Ldap server bouwen, users er in, pam_ldap regeltjes toevoegen op de client, idem voor nss, klaar)

Voordeel van ldap is dat je er ook meer dan alleen users in kan zetten. Je had het over bind: je kan de hostnames ook in een ldap directory zetten. Ook kan je per user dingen opslaan voor bijvoorbeeld mailrouting (je had het ook over een mta)

Meer weten: http://www.linuxdoc.org/HOWTO/LDAP-Implementation-HOWTO/index.html
Pagina: 1