Commit Graph
84 Commits
Author SHA1 Message Date
Rob Crittenden 04cccd4426 Improve the error message when an entry is not found.
We used to return the entire argument string ala:

('dc=freeipa,dc=org', 2, 'uid=foo', ['*'])

This adds a regex to try to print anything after = in the filter.
Not perfect but better.
2007-12-06 16:48:26 -05:00
Karl MacMillan 90d6fefe32 Fix errors with ipautil.CalledProcessError and cleanup some imports. -
Simo Sorce 86c78cbe75 minor typos 2007-11-30 16:58:02 -05:00
rcritten@redhat.com c32a960cae Compatibility changes to work on RHEL 5 with python 2.4 2007-11-30 15:53:02 -05:00
Karl MacMillan edc7af1446 Add xml-rpc interface for getting keytabs.
Warning: this lacks any sort of authorization.
-
Karl MacMillan 67cddce4d4 Generate master password from Simo. -
Karl MacMillan 7ce4df7038 Added replication.py -
Karl MacMillan c373ed5c5c Initial replication setup.
This add replication setup through two new commands: ipa-replica-prepare
and ipa-replica-install. The procedure is to run ipa-replica-prepare
on an existing master. This will collect information about the realm
and the current master and create a file storing all of the information.
After copying that file to the new replica, ipa-replica-install is
run (with -r to create a read-only replica).

This version of the patch also includes fixes for the sasl mappings
on the replicas.

Remaining features:
- ssl for replication.
- automatic configuration of mesh topology for
  master (or a simpler way to replicate multiple
  masters.
- tool for view / configuring current replication.
-
Rob Crittenden f42f1f44c8 Enable group inactivation by using the Class of Service plugin.
This adds 2 new groups: activated and inactivated.

If you, or a group you are a member of, is in inactivated then you are too.

If you, or a group you are a member of, is in the activated group, then you
are too.

In a fight between activated and inactivated, activated wins.

The DNs for doing this matching is case and white space sensitive.

The goal is to never have to actually set nsAccountLock in a user directly
but move them between these groups.

We need to decide where in the CLI this will happen. Right it is split
between ipa-deluser and ipa-usermod. To inactivate groups for now just
add the group to inactivate or active.
2007-11-20 22:45:29 -05:00
Simo Sorce 44f9f13e17 Remove default SASL mappings if any to avoid conflicts with IPA SASL mappings 2007-11-19 19:34:10 -05:00
Karl MacMillan 6d3fa7f892 Minor fixes. -
Simo Sorce a0d8d87b97 Fix installation
Add missing schema for GUI Config, and missing objectclass for cn=accounts
container
2007-11-18 15:02:26 -05:00
Simo Sorce ae97fcf94d - Store Master Key in Ldap (Makes it easier to set up replicas)
- Does not require dirsrv access to stash file
- Finalize password history support
- Fix strict password length default in pwd_extop (fix install sctript too)
- fix plugin configuration

- Introduce 3 kind of password change: normal, admin, and ds manager
   - normal require adherence to policies
   - admin does not but password is immediately expired
   - ds manager can just change the password any way he likes.

Initial code to read the Kerberos Master Key from the Directory
2007-11-16 20:16:11 -05:00
Rob Crittenden 949b4a0bf7 Check for existance of of the target file in update_file. It used to silently
fail if the file it was to update didn't exist.
2007-11-15 11:09:17 -05:00
Karl MacMillan 4d96b37de1 Initialize memberof patch from Pete Rowley. -
Rob Crittenden 02e5a6599b Forgot to include FQDN in the substitition list 2007-11-13 17:51:29 -05:00
Rob Crittenden cd489f0a73 Allow a user or group to change an attribute in its RDN
Add secretary to the list of indexes otherwise RDN changing could be slow
Port --addattr, --setattr and --delattr from usermod to groupmod
2007-11-12 23:11:55 -05:00
Pete Rowley 24d5777bd6 Add posix auto gen for single master case 2007-11-06 15:57:15 -08:00
John Dennis 22493d9b9f remove offensive use of rpm
add the radiusprofile to the list of objectclasses used when creating a user
2007-11-06 16:26:10 -05:00
Karl MacMillan 8e48393c61 Introduce service base class and clean up ipa-server-install
1) Add a base class for all of the instance objects.
2) Normalize usage of logging.
3) General cleanups of ipa-server-install.
4) Make better use of httpinstance.
5) Add webguiinstance.
6) Improve progress reporting during installation.

Works Here (TM), but it would be nice to get someone else
to test since this moves code around a bit.
-
John Dennis 8cfd270f34 merge initial radius work 2007-11-03 12:22:20 -04:00
Karl MacMillan 8f4362f2f2 Enable referential integrity plugin. -
Karl MacMillan 36e43aed1b NTP configuration for client and server.
Configure ipa servers as an ntp server and clients
to (by default) us the ipa server as an ntp server.

Also corrected the messages about which ports should
be opened.
-
Simo Sorce 77a105688c Fix ticket #70 2007-11-01 13:56:03 -04:00
Rob Crittenden 3c8cfd94bd Create LDAP indeces on installation for fields the web GUI searches against 2007-10-30 13:41:41 -04:00
Rob Crittenden e40c583b12 Create configuration for MIT Windows kerberos client and install into
http://hostname/config so users can point their MIT client at the IPA
server and automatically fetch the configuration.
2007-10-29 12:00:48 -04:00
Karl MacMillan 086193af0a Remove the use of uuid in the directory server instance name.
The use of a uuid for the DS instance name is overkill and it is a real
pain. This patch will use ipa-realm-name instead (resulting in something
like slapd-EXAMPLE-COM). All periods are converted to "-" because the DS
can't handle periods in server ids.
-
Rob Crittenden 3eba5d3b8d Add httpinstance.py 2007-10-18 16:20:00 -04:00
Karl MacMillan f8fba3b7dd Autotool ipa-server - patch from William Jon McCann <mccann@jhu.edu>. -
Rob Crittenden ed8f506b0f First step in enabling SSL in the IPA web server 2007-10-15 15:42:12 -04:00
Rob Crittenden dac58ee693 Enabled memberof plugin 2007-10-16 10:17:39 -04:00
Simo Sorce beba92bca0 Don't print error on fresh install 2007-10-12 12:03:02 -04:00
Kevin McCarthy 06b107ed5f Add inetUser objectclass. Remove test-users ldif. 2007-10-11 12:19:42 -07:00
Karl MacMillan d2a19b2009 Karl MacMillan wrote:
> > This largish patch makes the build and installation work on 64bit
> > machines. The only catch here is that to get a 64bit build you need to
> > set LIBDIR on make:
> >
> > make install LIBDIR=/usr/lib64
> >
> > The spec file does this correctly. I couldn't find any reliable way to
> > guess this that works both on real systems and in the almost entirely
> > empty rpm build root (you can't, for example, check for the existence
> > of /usr/lib64).
-
Kevin McCarthy 3f271a875f DELETEs have to come first, in order for "case change" operations to work. 2007-10-08 13:35:41 -07:00
Rob Crittenden eddc5d4e42 New LDAP connection pool that does locking 2007-10-08 16:18:38 -04:00
Karl MacMillan cfaa18a1cf On 10/4/07, Rob Crittenden <rcritten@redhat.com> wrote:
> William Jon McCann wrote:
> > Hi,
> >
> > After playing with the install (repeatedly) I ended up with a lot of
> > duplicate values in:
> > /etc/sysconfig/dirsrv
> > /etc/sysconfig/ipa-kpasswd
> >
> > Here is a patch that should fix this.  It modifies the file "in-place"
> > and removes lines that matching the key (or commented key) and then
> > appends the new key=value.
> >
> > Jon
>
> Cool, I've wanted to fix this for a while (and recently aborted a switch
> from open with "a" to "w").
>
> What happens if the file doesn't exist yet? Do we need to wrap the
> fileinput loop in either a try/except or just look to see if the file
> exists first (my vote)?
>
> Something like:
>
> def update_key_val_in_file(filename, key, val):
>      if os.path.exists(filename):
>          pattern = "^[\s#]*%s\s*=" % re.escape(key)
>          p = re.compile(pattern)
>          for line in fileinput.input(filename, inplace=1):
>              if not p.search(line):
>                  sys.stdout.write(line)
>          fileinput.close()
>      f = open(filename, "a")
>      f.write("%s=%s\n" % (key, val))
>      f.close()

Good point.  In genera,l I prefer doing a try because it is a little
less racy but in this case it doesn't make a difference.

Updated patch attached.

Thanks,
Jon
-
rcritten@redhat.com 53e872fb72 Try to catch more error conditions during installation
Modify the way we detect SELinux to use selinuxenabled instead of using
  a try/except.
Handle SASL/GSSAPI authentication failures when getting a connection
2007-10-03 17:37:13 -04:00
Karl MacMillan 50d12d6d2e Misc small fixes
* Remove the rpmbuild tree with the dist-clean target.
* Move ipa-server-setupssl from /usr/sbin to /usr/share/ipa
* Check in requirement change for generated freeipa-python.spec
* Fix interactive hostname in ipa-server-install.
-
Kevin McCarthy 24c22a2ebc Misc small fixes:
- Members of groups are clickable
- Combine name and uid into a single column in find users
- Remove license plate from searching
- Mailto links on user emails
- Add timelimit to finds.  This is experimental...
- Fix usersearch to only search on objectClass=Person
- Change search to use get parameter
2007-09-25 11:25:48 -07:00
Kevin McCarthy 1725397a53 Adds methods to manipulate groups by dns.
Renamed some of the user_group parameters to be self-evident.
Binary wrapping isn't necessary on strings, so removed from xmlrpc calls.
2007-09-26 15:47:34 -07:00
rcritten@redhat.com 2fec56d679 Enable LDAP debugging using the mod_python Apache configuration directive
PythonOption IPADebug On/Off
2007-09-21 14:39:52 -04:00
Simo Sorce e16e215cdd Merge with upstream 2007-09-20 17:11:01 -04:00
Simo Sorce 3fd4b9ba2c Initial support for confiuguring a DNS Server during installation.
It's not perfect yet but good enough to include it.
2007-09-20 15:10:21 -04:00
rcritten@redhat.com b85668579e Use ticket forwarding with TurboGears. mod_proxy forwards the principal
name and location of the keytab. In order for this keytab to be usable
 TurboGears and Apache will need to run as the same user. We will also need
 to listen only on localhost in TG.
2007-09-14 17:19:02 -04:00
rcritten@redhat.com ed6ab17c9c Add function to allow user's to set/reset their kerberos password
Remove some unused calls to retrieve the current realm
2007-09-11 02:48:53 -04:00
Karl MacMillan ab0f69891d Overwrite ldappwd file to fix bug when reinstalling IPA. -
Kevin McCarthy 945713ca30 Fix dsinstance.py and krbinstance.py imports 2007-09-06 16:21:07 -07:00
rcritten@redhat.com 9b30f46744 Enable LDAP SASL authentication using a forwarded kerberos ticket
Handle both SASL auth and proxied authentication
Refactor LDAP connection code to be simpler
Other small bug fixes
2007-09-05 13:14:23 -04:00
Simo Sorce 584baa7ee2 merge ipa-server/ipaserver/util.py into ipa-python/ipautil.py
this way freeipa-client does not depend on freeipa-server
2007-09-04 16:13:15 -04:00