Commit Graph
100 Commits
Author SHA1 Message Date
Simo Sorce 2255479ef0 Refactor some replication code
This simplifies or rationalizes some code in order to make it easier to change
it to fix bug #690
2011-01-14 14:06:56 -05:00
Simo Sorce abf4dde3e3 Restrict anonymous tgts
Fixes: https://fedorahosted.org/freeipa/ticket/432
2011-01-12 17:20:09 -05:00
Simo Sorce 21bf175e0c Allow ipa-dns-install to install with just admin credentials
Do this by creating a common way to attach to the ldap server for each
instance.

Fixes: https://fedorahosted.org/freeipa/ticket/686
2011-01-07 04:54:17 -05:00
Simo Sorce 56f000e9a9 Allow ipa-dns-install to configure DNS on a replica.
Fixes: https://fedorahosted.org/freeipa/ticket/645
2011-01-07 04:53:50 -05:00
Simo Sorce 671c070050 Fix ipa-replica-manage man page to reflect current status
Fixes: https://fedorahosted.org/freeipa/ticket/627
2010-12-22 10:26:00 -05:00
Simo Sorce c40303bcc1 Temporary fix for 'connect' operations
Currently the code depends on using a password to create replication
agreements. so this patch forces the request of the dirmgr password until we
can fix the internal issues that prevent using the amdin user with SASL/GSSAPI
to create replication agreements.
2010-12-21 17:54:42 -05:00
Simo Sorce 3f3de618ae Make ipa-replica-manage del actually remove all replication agreements
The previous code was removing only one agreement, leaving all other in place.
This would leave dangling replication agreements once the replica is
uninstalled.

Fixes: https://fedorahosted.org/freeipa/ticket/624
2010-12-21 17:54:42 -05:00
Simo Sorce 613f5feb0e Rework old init and synch commands and use better names.
These commands can now be run exclusively o the replica that needs to be
resynced or reinitialized and the --from command must be used to tell from
which other replica it can will pull data.

Fixes: https://fedorahosted.org/freeipa/ticket/626
2010-12-21 17:28:13 -05:00
Simo Sorce 91f3e79d81 Remove referrals when removing agreements
Part of this fix requires also giving proper permission to change the
replication agreements root.
While there also fix replica-related permissions to have the classic
add/modify/remove triplet of permissions.

Fixes: https://fedorahosted.org/freeipa/ticket/630
2010-12-21 17:28:13 -05:00
Simo Sorce efd8b03ccf Make ipa-replica-manage list return all known masters
if ipa-replica-manage list is given a master name as argument then the tool
has the old behavior of listing that specific master replication agreements

Fixes: https://fedorahosted.org/freeipa/ticket/625
2010-12-21 17:28:13 -05:00
Simo Sorce 6bbd4eed9f Rename add command to connect in ipa-replica-manage
This change also improves command syntax parsing

Fixes: https://fedorahosted.org/freeipa/ticket/623
2010-12-21 17:28:13 -05:00
Simo Sorce a21d91c003 Add disconnect command to ipa-replica-manage
Can remove replication agreements between 2 replicas as long as it is
not the last agreement (except for Ad replication agreements, which can
always be removed).

Fixes: https://fedorahosted.org/freeipa/ticket/551
2010-12-21 17:28:13 -05:00
Simo Sorce 1cf67fe850 Remove common entries when deleting a master.
Fixes: https://fedorahosted.org/freeipa/ticket/550
2010-12-21 17:28:13 -05:00
Simo Sorce 5884fdf0f8 Add replication related acis to all replicas
Fixes: https://fedorahosted.org/freeipa/ticket/617
2010-12-21 17:28:13 -05:00
Simo Sorce 0fbe1f944f Fix race condition in installation due to use of asynchronous search.
Fixes: https://fedorahosted.org/freeipa/ticket/640
2010-12-21 00:23:03 -05:00
Simo Sorce fbe72a4521 Use nsContainer and not extensibleObject for masters entries 2010-12-15 10:58:03 -05:00
Simo Sorce 918ceca087 Fixes for ipactl script
Fixes: https://fedorahosted.org/freeipa/ticket/613
2010-12-10 23:09:45 -05:00
Simo Sorce 95c4b894f9 Fix Install using dogtag.
The CA is installed before DS so we need to wait until DS is actually installed
to be able to ldap_enable the CA instance.

Fixes: https://fedorahosted.org/freeipa/ticket/612
2010-12-10 23:09:41 -05:00
Simo Sorce bfaea1dd78 Move Selfsigned CA creation out of dsinstance
This allows us to have the CA ready to serve out certs for any operation even
before the dsinstance is created. The CA is independent of the dsinstance
anyway.

Also fixes: https://fedorahosted.org/freeipa/ticket/544
2010-12-10 12:28:38 -05:00
Simo Sorce 2efc08a6fc Introduce ipa control script that reads configuration off ldap
This replace the former ipactl script, as well as replace the current way ipa
components are started.

Instead of enabling each service in the system init scripts, enable only the
ipa script, and then let it start all components based on the configuration
read from the LDAP tree.

resolves: https://fedorahosted.org/freeipa/ticket/294
2010-12-10 12:28:38 -05:00
Simo Sorce ded15c72ff Split dsinstance configuration
This is so that master and replica creation can perform different operations as
they need slightly diffeent settings to be applied.
2010-12-10 12:28:38 -05:00
Simo Sorce dea2167afa Move ntp configuration up top.
Also move down some dsinstance related operation close to other dsinstance
operations.

Fixes: https://fedorahosted.org/freeipa/ticket/595
2010-12-09 08:29:29 -05:00
Simo Sorce e1d6f9c6b9 Make pkinit setup optional in ipa-replica-prepare too.
Also add fixes for ipa-replica-install as that had issues too.

Fixes: https://fedorahosted.org/freeipa/ticket/527
2010-12-08 09:54:13 -05:00
Simo Sorce a1edfe8c51 Give back smaller and more readable ranges by default.
Instead of allocating a completely random start between 1M and 2G and a range
of 1M values, give 10000 possible 200k ranges. They all start at a 200k
boundary so they generate more readable IDs, at least until there arent't too
many users/replicas involved.
2010-12-07 08:35:42 -05:00
Simo Sorce 37f48c0019 Make use of mozldap vs openldap for plugins selectable 2010-12-06 12:23:09 -05:00
Simo Sorce 20b1e0a75e Enable EntryUSN plugin by default, with global scope
This will allow clients to use entryusn values to track what changed in the
directory regardles of replication delays.

Fixes: https://fedorahosted.org/freeipa/ticket/526
2010-11-30 18:26:40 -05:00
Simo Sorce aa70959f16 Fix modrdn plugin crash bug.
Constant values were assigned to variables gthat would later be freed
with slapi_ch_free_string(). Make copies instead so the free doesn't
blow. Also remove useless tests, as these functions already check for
NULL on their own.

Fixes: https://fedorahosted.org/freeipa/ticket/529
2010-11-23 11:40:38 -05:00
Simo Sorce c53c0ca1ad Autotune directory server to use a greater number of files
This changes the system limits for the dirsrv user as well as
configuring DS to allow by default 8192 max files and 64 reserved
files (for replication indexes, etc..).

Fixes: https://fedorahosted.org/freeipa/ticket/464
2010-11-22 12:42:16 -05:00
Simo Sorce 733dc89f75 Save and restore on uninstall ds related config files 2010-11-22 12:42:16 -05:00
Simo Sorce 6a5c4763af id ranges: change DNA configuration
Change the way we specify the id ranges to force uid and gid ranges to always
be the same. Add option to specify a maximum id.

Change DNA configuration to use shared ranges so that masters and replicas can
actually share the same overall range in a safe way.

Configure replicas so that their default range is depleted. This will force
them to fetch a range portion from the master on the first install.

fixes: https://fedorahosted.org/freeipa/ticket/198
2010-11-22 12:42:16 -05:00
Simo Sorce b67df045be Configure KDC to use multiple workers
Only if more than one CPU is available
Only if supported by the installed krb5kdc
2010-11-22 11:57:19 -05:00
Simo Sorce 5d5ec15ee5 Automatically disable pkinit when not supported 2010-11-19 14:49:49 -05:00
Simo Sorce 42f9ee14b6 Exclude Krb lockout attributes from replication
Fixes: https://fedorahosted.org/freeipa/ticket/440
2010-11-18 20:43:18 -05:00
Simo Sorce 151059b0e7 Use distutil.version to check for min version 2010-11-18 15:13:22 -05:00
Simo Sorce 345fc79f03 pkinit-replica: create certificates for replicas too
altough the kdc certificate name is not tied to the fqdn we create separate
certs for each KDC so that renewal of each of them is done separately.
2010-11-18 15:09:57 -05:00
Simo Sorce 8c616eb10a add plugin to enable/disable anonymous pkinit 2010-11-18 15:09:51 -05:00
Simo Sorce e05c247490 anon-pkinit: add well known principal
leave it disabled for now
we can change this default once we will have some restriction on what services
this principal can get tickets for.
2010-11-18 15:09:45 -05:00
Simo Sorce 59cf6f8619 pkinit: always configure pkinit_anchors in krb5.conf 2010-11-18 15:09:40 -05:00
Simo Sorce 52a46d121b Add support for configuring KDC certs for PKINIT
This patch adds support only for the selfsign case.
Replica support is also still missing at this stage.
2010-11-18 15:09:36 -05:00
Simo Sorce 74ba0cc7c1 Use Realm as certs subject base name
Also use the realm name as nickname for the CA certificate
2010-11-18 15:09:31 -05:00
Simo Sorce 629e9520e0 Revert tests code to use the old uuid format. 2010-11-15 11:47:27 -05:00
Simo Sorce 23f03251e0 uuid plugin: convert the plugin to use the libuuid library
The DS guys decided not to expose the DS inetrnal functions used to generate
UUIDs for DS. This means the interface is not guaranteed to be available.
Switch the ipa_uuid plugin to use the system libuuid plugin instead.

NOTE: This causes once again a change in the tring format used for UUIDs.

fixes: https://fedorahosted.org/freeipa/ticket/465
2010-11-15 11:47:27 -05:00
Simo Sorce edf0f9b901 Fix test.po errors in make test
Fixes: https://fedorahosted.org/freeipa/ticket/401
2010-11-15 11:46:42 -05:00
Simo Sorce 7aae58fd2d uuid-plugin: Fix control access bug on replication
Fixes: https://fedorahosted.org/freeipa/ticket/468
2010-11-10 15:34:58 -05:00
Simo Sorce caa3f843da Use strongest keytype for master key 2010-11-09 15:01:43 -05:00
Simo Sorce 4f8e4482b3 pwd-plugin: Always use a special salt by default.
This should make renamed users able to keep using old credentials as the salt
is not derived from the principal name but is always a random quantity.

https://fedorahosted.org/freeipa/ticket/412
2010-10-28 17:18:03 -04:00
Simo Sorce 79c39339da pwd-plugin: fix slapi log target in logging functions 2010-10-28 17:17:59 -04:00
Simo Sorce c51ce61e4d UUIDs: remove uuid python plugin and let DS always autogenerate
merge in remove uuid
2010-10-28 07:58:31 -04:00
Simo Sorce 1bfd0f8791 ipa_uuid: prevent false positives on modifies
If a modify operation does not specify our attribute then we need to short
circuit the loop, otherwise on enforcing we will return an error by mistake if
we are not Directory Manager because generate is false if the attr is not
found.
2010-10-28 07:58:31 -04:00
Simo Sorce 99a7f83c3c ipa_uuid: Handle generation of the uuid when it is a RDN 2010-10-28 07:58:31 -04:00
Simo Sorce 2a141bf2c1 ipa-uuid: Add enforce mode
By setting the enforce flag in the configuration we prevent anyone from storing
arbitrary values and allow only Directory Manager to override the plugin.
Users can only set the value to the magic value (usually 0) to have the uuid
regenerated, and nothing else.
2010-10-28 07:58:31 -04:00
Simo Sorce 7fc6dfbcac ipa-uuid: Code cleanups
Remove one level of indentation from the main function by jumping
to the end immediately if the configuration list is empty.
Other minor style cleanups.
2010-10-28 07:58:31 -04:00
Simo Sorce 1233a7aff3 ipa-uuid: safer unlock handling
This allows the code in the for loop to error out without worrying of
forgetting to unlock the config entries.
2010-10-28 07:58:31 -04:00
Simo Sorce 2d63522d48 ipa-uuid: Reset generate flag at every cycle
Avoid false positives if more than one uuid attribute is generated
in the same entry.
2010-10-28 07:58:31 -04:00
Simo Sorce 56724fa024 ipa-uuid: Remove unused functions 2010-10-28 07:58:31 -04:00
Simo Sorce 3f1293582f ipa-modrdn: Remove unused functions 2010-10-28 07:58:31 -04:00
Simo Sorce 874dc15c5d ipa-modrdn: Enable plugin to handle krbPrincipalName on renames 2010-10-28 07:58:31 -04:00
Simo Sorce 984942ee49 Add new plugin used to modify related attributes after a modrdn operation. 2010-10-28 07:58:31 -04:00
Simo Sorce 9018b601cd ipa-uuid: enable plugin in IPA 2010-10-22 17:22:46 -04:00
Simo Sorce 3a05149201 ipa-uuid: DNA-like plugin that generates uuids 2010-10-22 17:22:40 -04:00
Simo Sorce f6a50c49ad Handle cases where ntpd options are scattered on multiple lines 2010-10-22 17:22:34 -04:00
Simo Sorce c2a2ffbe69 ntpdinstance: Do not replace the config files, just add needed options 2010-10-18 13:54:17 -04:00
Simo Sorce 00217308c5 Ignore useless stuff by default 2010-10-18 13:25:20 -04:00
Simo Sorce 2165182492 dsinstance: Fix ldappasswd invocation to specify the server name
Apparently on some machines if this is not done SSL validation will fail.
Fixes bug #394
2010-10-18 12:00:33 -04:00
Simo Sorce 8f82db0e99 Fix build after file was removed but not eliminated from Makefile.am 2010-10-18 10:53:52 -04:00
Simo Sorce 0c6980bed6 Remove ipa-memberof, memberof plugin is now included in 389 DS 2010-10-15 18:05:56 -04:00
Simo Sorce e304f0436b Avoid writing customized perl scripts in /usr
Keep instance specific data in /var/lib/dirsrv
2010-10-14 14:10:32 -04:00
Simo Sorce 7a14767f1a dsinstance: avoid exposing passwords when invoking ldappaswd
Pass passwords to ldappasswd by using files.
Replace use of mozldap's ldappaswd with openldap's one.
2010-10-14 14:10:32 -04:00
Simo Sorce 2e17649aae Update .po/.pot files and add Spanish and Polish transalations 2010-10-13 14:35:35 -04:00
Simo Sorce cf21396345 Update .po[t] files after adding C files for translation 2010-10-12 15:46:27 -04:00
Simo Sorce b735fc8d17 Initial gettext support for C utils
Add automatic creation of python an C file lists for potfiles
Deletes useless copy of Makefile in install/po
Remove duplicate maintainer-clean target
Add debug target that prints file lists
Unbreak update-po target, merges in patch from John
2010-10-12 15:46:27 -04:00
Simo Sorce f9c0eb5222 Remove Makefile from git, this file is autogenerated 2010-10-12 15:46:27 -04:00
Simo Sorce 016f889a51 Improve logging facilities
Provide simplified logging macros that appropriately use __func__ __FILE__,
__LINE__, or the plugin name depending on the log level.
2010-10-07 11:23:51 -04:00
Simo Sorce ec33e38e9a pwd-plugin: Fix unresolve symbol
This fixes a har crash when someone tries to fetch a keytab
2010-10-07 11:16:19 -04:00
Simo Sorce 3e98d8ddad install-script: Do not ask to remove DNS data
When we uninstall we wipe out the entire LDAP database, so it doesn't really
make mush sense to try to also remove single entries from it.
This avoids the --uninstall procedure to fail because the DM password is not
available or the LDAP server is down, and we are just trying to cleanup
everything.
2010-10-07 07:54:06 -04:00
Simo Sorce 475c064227 When dealing with samba password set also the sambaPwdLastSet
This attribute is required for samba to properly identify a user has changed
it's password and doesn't need to change it again at next login.

At the same time, if we are forcing a pssword reset we also need to let samba
know the user must change its password.
2010-10-07 07:53:36 -04:00
Simo Sorce ceb91a3f71 Always detect openldap and mozldap at the same time
Slapi plugins must use mozldap because 389 ds is compiled against that.
ipa_kpasswd, instead, should be linked against openldap.
So always make sure both are available.
2010-10-07 07:53:36 -04:00
Simo Sorce 6682b63438 pwd-plugin: Remove the correct password from the history
We were mistakenly removeing the latest password from the passwordHistory
once the max history values were reached. Make sure we remove the oldest one
instead.
2010-10-05 08:54:08 -04:00
Simo Sorce 9cd0330e5d Fix ipapwd_start() style
Trun tabs into quartets of spaces. Fit lines to not exceed 80 columns.
2010-10-05 08:54:08 -04:00
Simo Sorce c594ab88ba Add options to control NTLM hashes
By default LM hash is disabled.
Of course generation still depends on whether the SamAccount objectclass is
present in the user object.
2010-10-05 08:54:08 -04:00
Simo Sorce 3b38e74da5 Add Generic config class.
Helps when you need to add random snippets of config that really do not deserve
a full atttribute, but are still something you want to put in LDAP and have
replicated.
2010-10-05 08:54:07 -04:00
Simo Sorce b9c02a50c2 Fix descriptions 2010-10-05 08:54:06 -04:00
Simo Sorce 19d3ba9733 pwd-plugin: format/style changes
Use __func__ in log functions instead of the explicit function name
so that if the function need to be renamed later logs reflect the
change automatically w/o the need to change all occurrences.

Also makes a grep for the function name less noisy avoiding tons of
false positives.
2010-10-05 08:52:43 -04:00
Simo Sorce fea9181eaf pwd-plugin: Remove 14 chars limitation from the NT hash 2010-10-05 08:52:43 -04:00
Simo Sorce 3127df2aee Split ipa_pwd_extop plugin in multiple files
The plugin was getting difficult to read and maintain.
Split it (and apply cosmetic cleanups to some functions) in smaller
pieces that perform specific tasks.
2010-10-01 11:17:40 -04:00
Simo Sorce 4262358111 Fix SASL mappings 2009-11-18 14:26:29 -05:00
Simo Sorce 9fe707a3f2 Basic changes to get a default principal for DNS
Also moves delagation layout installation in dsinstance.
This is needed to allow us to set default membership in
other modules like bindinstance.

Signed-off-by: Martin Nagy <mnagy@redhat.com>
2009-07-10 09:42:22 -04:00
Simo Sorce 24089821fb Check error in kpasswd 2009-07-10 09:42:21 -04:00
Simo Sorce c4ed025001 Fix delegation using the special python-kerberos patch. 2009-01-26 14:44:49 -05:00
Simo Sorce 077d6a0d35 Make KDC listen to TCP port as well by default 2009-01-26 14:44:40 -05:00
Simo Sorce 0fb3f394a5 read_file() was a remnant of the conversion of ldapupdate.py to a library and
is not accessible directly. Use ipautil.template_file, this works.
2009-01-26 14:44:34 -05:00
Simo Sorce 2b8b87b4d6 memberof was not indexed in older versions of fedora-ds, keep it around
as an update so that if it is not there it will be added
2008-12-05 18:18:14 -05:00
Simo Sorce 7c5ae7f402 Fix stupid typo in update file 2008-12-03 12:03:04 -05:00
Simo Sorce 80cc2c3715 Change ipa-compat-manage to work on older python versions too. Break try,except,finally into a try,try,finally,except Add also checks for LDAPError, errors. 2008-12-03 11:17:55 -05:00
Simo Sorce b3b4435d0e One line fix for ipa-server spec file 2008-12-03 11:17:51 -05:00
Simo Sorce d006587937 Adding an index for memberuid. Alsthough we do not use this attribute, many clients still ask for it so let's index it and make stuff faster. 2008-12-02 19:28:51 -05:00
Simo Sorce 0e6928dd1b Forgot to add ipa-compat-manage to the sbin programs 2008-12-02 16:50:21 -05:00
Simo Sorce e0e784f77f Add man page for ipa-compat-manage 2008-12-02 16:39:57 -05:00
Simo Sorce 3fb6343149 Fix makefiles after schema compat changes 2008-12-02 16:39:57 -05:00
Simo Sorce ef0bb46923 Fix typo, thanks to Michele for pointing it out 2008-12-01 17:19:10 -05:00