Commit Graph

337 Commits

Author SHA1 Message Date
Jakub Hrozek
bb56285f6b IPv6 enhancements
* Make host-add, host-del and reverse zone creation IPv6 aware
* Make Bind listen on IPv6 interfaces, too

https://fedorahosted.org/freeipa/ticket/398
2011-02-02 12:39:35 -05:00
Rob Crittenden
275998f6bd Add support for tracking and counting entitlements
Adds a plugin, entitle, to register to the entitlement server, consume
entitlements and to count and track them. It is also possible to
import an entitlement certificate (if for example the remote entitlement
server is unaviailable).

This uses the candlepin server from https://fedorahosted.org/candlepin/wiki
for entitlements.

Add a cron job to validate the entitlement status and syslog the results.

tickets 28, 79, 278
2011-02-02 10:00:38 -05:00
Rob Crittenden
f3d04bfc40 Fix installing with an external CA and wait for dogtag to come up
There wasn't an exception in the "is the server already installed"
check for a two-stage CA installation.

Made the installer slightly more robust. We create a cache file of
answers so the next run won't ask all the questions again. This cache
is removed when the installation is complete. Previously nothing would work
if the installer was run more than once, this should be fixed now.
The cache is encrypted using the DM password.

The second problem is that the tomcat6 init script returns control
before the web apps are up. Add a small loop in our restart method
to wait for the 9180 port to be available.

This also adds an additional restart to ensure that nonces are disabled.

ticket 835

revise
2011-02-01 17:52:57 -05:00
Simo Sorce
5c6232e24d Force sync in both direction before changing replication agreements
Fixes: https://fedorahosted.org/freeipa/ticket/887
2011-02-01 13:49:41 -05:00
Jakub Hrozek
0dce1bc9e1 Add an address for a nameserver when a new zone is created during install
https://fedorahosted.org/freeipa/ticket/881
2011-01-31 22:15:45 -05:00
Rob Crittenden
41abde2604 Fix privilege name we are assigning to DNS principal.
This fixes an installation failure.
2011-01-31 17:43:29 -05:00
Simo Sorce
cc9abf5d38 Use a common group for all DS instances
Also remove the option to choose a user.
It is silly to keep it, when you can't choose the group nor the CA
directory user.

Fixes: https://fedorahosted.org/freeipa/ticket/851
2011-01-31 16:35:53 -05:00
Pavel Zuna
c9ab92f210 Add ldap2 method to retrieve allowed attributes for specified objectClasses.
ldap2.get_allowed_attribute(['posixuser'])

returns a list of unicode all lower case attribute names allowed
for the object class 'posixuser'
2011-01-26 11:38:58 -05:00
Jakub Hrozek
ab2ca8022e Fix assorted bugs found by pylint 2011-01-25 14:01:36 -05:00
Simo Sorce
27da394c44 Fix ipa-replica-manage regressions with winsync
Avoids ipa-replica-manage to throw up errors.

Fixes: https://fedorahosted.org/freeipa/ticket/807
2011-01-25 14:01:35 -05:00
Simo Sorce
cec3978c79 Always add DNS records when installing a replica
Even if the replica is not running a DNS server other replicas might.
So if the DNS container is present, then try to add DNS records.

Fixes: https://fedorahosted.org/freeipa/ticket/824
2011-01-25 14:01:35 -05:00
Simo Sorce
5bc7e5a9c7 Populate shared tree with replica related values
Fixes: https://fedorahosted.org/freeipa/ticket/820
2011-01-25 11:10:27 -05:00
Simo Sorce
5431d56ed4 Do not set a replication dn when using SASL/GSSAPI replication
Fixes: https://fedorahosted.org/freeipa/ticket/817
2011-01-24 16:45:31 -05:00
Rob Crittenden
cf9ec1c427 Update kerberos password policy values on LDAP binds.
On a failed bind this will update krbLoginFailedCount and krbLastFailedAuth
and will potentially fail the bind altogether.

On a successful bind it will zero krbLoginFailedCount and set
krbLastSuccessfulAuth.

This will also enforce locked-out accounts.

See http://k5wiki.kerberos.org/wiki/Projects/Lockout for details on
kerberos lockout.

ticket 343
2011-01-21 13:59:24 -05:00
Rob Crittenden
fc28fae03f Add some basic filter validation to permissions and disallow empty filters
Try a query with a filter to see if it is at least legal. This doesn't
guarantee that the filter is at all otherwise sane.

ticket 808
2011-01-21 10:47:43 -05:00
Simo Sorce
861aa9c1b8 Allow SASL/EXTERNAL authentication for the root user
This gives the root user low privileges so that when anonymous searches are
denied the init scripts can still search the directory via ldapi to get the
list of serevices to start.

Fixes: https://fedorahosted.org/freeipa/ticket/795
2011-01-20 15:49:30 -05:00
Simo Sorce
5af80a7583 Make krb5kdc use the ldapi socket to talk to dirsrv
Fixes: https://fedorahosted.org/freeipa/ticket/812
2011-01-20 15:49:30 -05:00
Simo Sorce
373455026e Add a way to print output from commands
Instead pof always capturing the output, make it possible to let
it go to the standard output pipes.
Use this in ipactl to let init scripts show their output.

Fixes: https://fedorahosted.org/freeipa/ticket/765
2011-01-18 10:04:19 -05:00
Martin Kosek
e73efb9a90 Password generation and logging in ipa-server-install
When a randomly generated password contains a space character
as the first or the last character, installation fails on
kdb5_ldap_util calling, which does not accept that. This patch
fixes the generator to generate space only on allowed position.

This patch also ensures that no password is printed to
server install log.

https://fedorahosted.org/freeipa/ticket/731
2011-01-18 10:03:55 -05:00
Simo Sorce
e1cf7b8d01 Fix replica installation warnings
We were attempting to re-add these entries on the replicas too.
Which were failing because these containers, obviously, already existed there.
2011-01-14 17:26:48 -05:00
Jakub Hrozek
3711261802 Port installer and host plugin to the new DNS plugin
* move ipa dns-resolve to the new plugin
* port the installer and the host plugin to the new interface
* remove the old plugin
2011-01-14 17:26:48 -05:00
Simo Sorce
7ee490e35c Remove radius options completely.
This has been completely abandoned since ipa v1 and is not built by default.
Instead of carrying dead weight, let's remove it for now.

Fixes: https://fedorahosted.org/freeipa/ticket/761
2011-01-14 14:06:56 -05:00
Simo Sorce
da7eb1155e Move mep templates under cn=etc
Fixes: https://fedorahosted.org/freeipa/ticket/760
2011-01-14 14:06:56 -05:00
Simo Sorce
a0bfbec19f Use GSSAPI for replication
Uses a temporary simple replication agreement over SSL to init the tree.
Then once all principals have been created switches replication to GSSAPI.

Fixes: https://fedorahosted.org/freeipa/ticket/690
2011-01-14 14:06:56 -05:00
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
Rob Crittenden
6785283568 python-ldap fails gloriously if the search time limit is 0. Don't allow it.
Don't allow the time limit to be set in the API. Also add a failsafe
in the ldap driver because such bad things happen if this value is 0.
I think it literally spends 0 time on the request and just returns
immediately.

ticket 752
2011-01-14 09:48:07 -05:00
Rob Crittenden
c7789199f9 Fix output of failed managedby hosts, allow a host to manage itself.
The output problem was a missing label for failed managedby.

This also fixes a call to print_entry that was missing the flags argument.

Add a flag to specify whether a group can be a member of itself, defaulting
to False.

ticket 708
2011-01-11 10:23:31 -05:00
Rob Crittenden
06179dc105 Exit if a DNS A or AAAA record doesn't exist for the replica we are preparing.
Without this it is possible to prepare a replica for a host that doesn't
exist in DNS. The result when this replica file is installed is that
replication will fail because the master won't be able to communicate
to the replica by name.

ticket 680
2011-01-11 10:22:33 -05:00
Rob Crittenden
371ce528fb Enable low-level LDAP debugging. 2011-01-11 10:22:09 -05:00
Rob Crittenden
aea1bc7959 Temporarily work around SSL connection issue causing installation to fail.
Not sure if this is an openldap-client, pem-nss or python-ldap problem yet
but the installation is failing.
2011-01-07 18:08:01 -05:00
Jakub Hrozek
9232a47877 Create the reverse zone by default
A new option to specify reverse zone creation for unattended installs

https://fedorahosted.org/freeipa/ticket/678
2011-01-07 05:05:54 -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
John Dennis
a7b926420f fixes CA install problem in trac ticket 682
Do not call status after pkisilent, it will return non-zero.
Instead restart server after pkisilent so configuration
changes take effect, the check the status.
2011-01-05 13:11:44 -05:00
Rob Crittenden
4f2a6e0a25 Don't use Class of Service for account activation, use attribute.
To support group-based account disablement we created a Class of Service
where group membership controlled whether an account was active or not.

Since we aren't doing group-based account locking drop that and use
nsaccountlock directly.

ticket 568
2011-01-04 17:09:56 -05:00
Rob Crittenden
d84ffd9e54 Move permissions and privileges to their own container, cn=pbac,$SUFFIX
ticket 638
2010-12-22 11:26:49 -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
Jakub Hrozek
ad25fc07a0 Do not require DNS record, just warn if one is missing 2010-12-21 17:54:19 -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
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
Jakub Hrozek
7493d781df Change FreeIPA license to GPLv3+
The changes include:
 * Change license blobs in source files to mention GPLv3+ not GPLv2 only
 * Add GPLv3+ license text
 * Package COPYING not LICENSE as the license blobs (even the old ones)
   mention COPYING specifically, it is also more common, I think

 https://fedorahosted.org/freeipa/ticket/239
2010-12-20 17:19:53 -05:00
Jakub Hrozek
ee4d2739f1 Make the IPA installer IPv6 friendly
Notable changes include:
 * parse AAAA records in dnsclient
 * also ask for AAAA records when verifying FQDN
 * do not use functions that are not IPv6 aware - notably socket.gethostbyname()
   The complete list of functions was taken from http://www.akkadia.org/drepper/userapi-ipv6.html
   section "Interface Checklist"
2010-12-20 11:27:34 -05:00
Rob Crittenden
1600146c94 Verify that the replication plugin exists before setting up replicas.
ticket 502
2010-12-17 17:31:19 -05:00
Rob Crittenden
623abc6bdf Properly quote passwords sent to pkisilent so special characters work.
Also check for url-encoded passwords before logging them.

ticket 324
2010-12-17 16:50:14 -05:00
Rob Crittenden
8f87aa1288 Add krb5-pkinit-openssl as a Requires on ipa-server package
ticket 599
2010-12-16 09:33:11 -05:00