From: Wil C. <wc...@na...> - 2001-11-29 01:28:07
|
Hi,=20 I've written a little module to teach myself about the internals of Webmin, especially the RPC stuff. So, I wrote one that presents the user with a list of users (from user-lib.pl:list_users) and a list of configured Webmin hosts and allows him to create a home directory for the user, based on the configuration on the remote host (user's GID, home directory path, skel path, etc). But rather than being useful just as a user module, I thought it might also be useful to other module writers. (Me, in particular.) You can pull it down from here: http://nakedape.cc/~wcooley/src/create_homedir.wbm I'd like to get other people's input on what I could improve. ACLs are what I'm planning to implement next. I'm planning a fairly ambitious module I'm calling "Directory Manager", which will allow one to administer users, groups, hosts, and other things managed through the name-service switch. Initially, I'm going to make it work just with LDAP, since that's what I'm interested in, but I'm hoping to make it modular enough that people will add db, postgres, mysql support as necessary. (I'm planning to reuse some of the work that's already gone into creating ldap-user utilities.) Wil --=20 W. Reilly Cooley wc...@na... Naked Ape Consulting http://nakedape.cc irc.linux.com #orlug,#pdxlug,#lnxs The most costly of all follies is to believe passionately in the palpably not true. It is the chief occupation of mankind. -- H.L. Mencken |
From: Joe C. <jo...@sw...> - 2001-11-29 02:11:29
|
Cool. I'd like to follow development of the LDAP stuff, if you don't mind posting occasional updates here. I was going to do LDAP integration for my virtual hosting module but if you do the hard work first, I'll be happy to borrow ideas. ;-) Wil Cooley wrote: > Hi, > > I've written a little module to teach myself about the internals of > Webmin, especially the RPC stuff. So, I wrote one that presents > the user with a list of users (from user-lib.pl:list_users) and > a list of configured Webmin hosts and allows him to create a home > directory for the user, based on the configuration on the remote > host (user's GID, home directory path, skel path, etc). But rather > than being useful just as a user module, I thought it might also > be useful to other module writers. (Me, in particular.) > > You can pull it down from here: > > http://nakedape.cc/~wcooley/src/create_homedir.wbm > > I'd like to get other people's input on what I could improve. > ACLs are what I'm planning to implement next. > > I'm planning a fairly ambitious module I'm calling "Directory > Manager", which will allow one to administer users, groups, > hosts, and other things managed through the name-service switch. > Initially, I'm going to make it work just with LDAP, since that's > what I'm interested in, but I'm hoping to make it modular enough > that people will add db, postgres, mysql support as necessary. > (I'm planning to reuse some of the work that's already gone into > creating ldap-user utilities.) > > Wil -- Joe Cooper <jo...@sw...> http://www.swelltech.com Web Caching Appliances and Support |
From: Wil C. <wc...@na...> - 2001-11-29 06:08:29
|
Also Sprach Joe Cooper: > Cool. I'd like to follow development of the LDAP stuff, if you don't=20 > mind posting occasional updates here. I was going to do LDAP=20 > integration for my virtual hosting module but if you do the hard work=20 > first, I'll be happy to borrow ideas. ;-) Well, I've been communicating with Fernando Lozano about his LDAP users module, which actually does about 90% of what's needed, so I'm hoping to just help with what he's done, but make a more general framework. (One of the things I wanted was the ability to remotely create home directories...) I haven't done nearly enough LDAP or Webmin programming to say that I can certainly pull this off, but I'm hopeful. What sort of things are you looking for for your virtual hosting? I've thought for a long time that it would be very cool if someone would write a mod_config_ldap, where Apache would pull configuration from an LDAP server. I don't think it would be terribly hard to map the Apache configuration directives into LDAP objects & attributes, but it'd be a hell of a lot of work considering how many there are. Wil --=20 W. Reilly Cooley wc...@na... Naked Ape Consulting http://nakedape.cc irc.linux.com #orlug,#pdxlug,#lnxs "There was a vague, unpleasant manginess about his appearence; he somehow seemed dirty, though a close glance showed him as carefully shaven as an actor, and clad in immaculate linen." -- H.L. Mencken, on the death of William Jennings Bryan |
From: Joe C. <jo...@sw...> - 2001-11-29 06:26:39
|
Wil Cooley wrote: > Also Sprach Joe Cooper: > >>Cool. I'd like to follow development of the LDAP stuff, if you don't >>mind posting occasional updates here. I was going to do LDAP >>integration for my virtual hosting module but if you do the hard work >>first, I'll be happy to borrow ideas. ;-) >> > > Well, I've been communicating with Fernando Lozano about his LDAP > users module, which actually does about 90% of what's needed, > so I'm hoping to just help with what he's done, but make a more > general framework. (One of the things I wanted was the ability to > remotely create home directories...) I haven't done nearly enough > LDAP or Webmin programming to say that I can certainly pull this off, > but I'm hopeful. > > What sort of things are you looking for for your virtual hosting? > I've thought for a long time that it would be very cool if someone > would write a mod_config_ldap, where Apache would pull configuration > from an LDAP server. I don't think it would be terribly hard to map > the Apache configuration directives into LDAP objects & attributes, > but it'd be a hell of a lot of work considering how many there are. I haven't mapped out all of the data that will go into LDAP yet, but I expect quite a lot of it will--for the first 'useful' version I'd like to simply do things in the traditional way (with a few additions): Apache virts, BIND records in normal flat-files, users in the flat-file passwd, and Sendmail/Postfix aliases set up also in a flat-file. For performance reasons and easier maintainability and mobility (because we'll hopefully be managing quite large hosting environments from a single master server) I'd like to be able to freely migrate between flat-files and a database back-end, and LDAP is a quite suitable form of database for this purpose. It will be more than user information, but that's a good start--we'll be attaching to each username (where username==hosting customer name) virtual host info for all of their sites, DNS info, mail aliases, backup schedule and targets, monthly recurring service costs, maintenence schedule, redundancy and failover rules, /their/ virtual customers, etc. It's all very complicated, and I haven't enough hours in the day to even get a start on this stuff, but it'll happen sometime... -- Joe Cooper <jo...@sw...> http://www.swelltech.com Web Caching Appliances and Support |
From: Wil C. <wc...@na...> - 2001-11-29 06:54:41
|
Also Sprach Joe Cooper: >=20 > I haven't mapped out all of the data that will go into LDAP yet, but I=20 > expect quite a lot of it will--for the first 'useful' version I'd like=20 > to simply do things in the traditional way (with a few additions):=20 > Apache virts, BIND records in normal flat-files, users in the flat-file= =20 > passwd, and Sendmail/Postfix aliases set up also in a flat-file. For the users & aliases, it should be fairly trivial to interface with LDAP--You just enable LDAP in /etc/nsswitch.conf and run 'getent' (assuming you're using a Linux/glibc-based system) and you've got your files. The Apache virts and BIND stuff would be more difficult, but probably not terribly hard. I don't even configure Apache anymore for virtual hosts; I use mod_vhost_alias and mod_rewrite and it's done; this works for all but about 3% of our clients. For BIND, I basically share one zone file between all zones, so when I have to renumber or change something, I have fewer changes to make. That shouldn't be hard to do in LDAP either. >=20 > For performance reasons and easier maintainability and mobility (because= =20 > we'll hopefully be managing quite large hosting environments from a=20 > single master server) I'd like to be able to freely migrate between=20 > flat-files and a database back-end, and LDAP is a quite suitable form of= =20 > database for this purpose. It will be more than user information, but=20 > that's a good start--we'll be attaching to each username (where=20 > username=3D=3Dhosting customer name) virtual host info for all of their= =20 > sites, DNS info, mail aliases, backup schedule and targets, monthly=20 > recurring service costs, maintenence schedule, redundancy and failover=20 > rules, /their/ virtual customers, etc. >=20 > It's all very complicated, and I haven't enough hours in the day to even= =20 > get a start on this stuff, but it'll happen sometime... Yeah, I can imagine. I've been meaning to take a look at similar stuff myself for a while. Getting users & groups out of flat files and into LDAP is a big first step (I've set it up before at other companies, but before I've managed those things directly. Now I have other people who will be managing it, so I need a easier interface than GQ or LDAP_Explorer for them.) I'm hoping to actually be able to consolidate some of our existing accounting functions with LDAP, although I suspect our accounting software won't handle it. Wil --=20 W. Reilly Cooley wc...@na... Naked Ape Consulting http://nakedape.cc irc.linux.com #orlug,#pdxlug,#lnxs "There was a vague, unpleasant manginess about his appearence; he somehow seemed dirty, though a close glance showed him as carefully shaven as an actor, and clad in immaculate linen." -- H.L. Mencken, on the death of William Jennings Bryan |