This repository provides two methods for installing a FreeIPA identity management server:
- 🐳 Docker-based installation using
docker-compose - 🧰 Manual installation using a parameterized Bash script
A fast and reproducible way to deploy FreeIPA using Docker Compose.
- Based on
freeipa/freeipa-server:rocky-9-4.10.1 - Includes DNS, KRA, and AD trust setup
- Persistent data with named Docker volume
- Suitable for local environments or isolated lab setups
docker/docker-compose.yml contains the service definition.
- Hostname:
ipa.example.local(change this!) - IP Address:
123.123.123.123(change this!) - Domain:
example.local(change this!) - Realm:
EXAMPLE.LOCAL(change this!) - Admin Password:
123qweasdzxc123(change this!)
cd docker
docker-compose up -d| Port | Protocol | Service |
|---|---|---|
| 53 | TCP/UDP | DNS |
| 80 | TCP | HTTP |
| 443 | TCP | HTTPS |
| 389 | TCP | LDAP |
| 636 | TCP | LDAPS |
| 88 | TCP/UDP | Kerberos |
| 464 | TCP/UDP | Kerberos Password |
| 749 | TCP | Kadmin |
| 123 | UDP | NTP (if enabled) |
123.123.123.123 ipa.example.localA bash script (install.sh) for installing FreeIPA directly on a CentOS/RHEL-based system.
- Interactive input for domain, realm, hostname, and passwords
- Automatically sets reverse DNS zone
- Installs and configures DNS and AD trust support
- Fully unattended FreeIPA installation
- RHEL/CentOS/Rocky Linux
- Root privileges
- Network connectivity
chmod +x install.sh
sudo ./install.shThe script will prompt you for:
- Domain name (e.g.,
example.local) - Realm (e.g.,
EXAMPLE.LOCAL) - Directory Server and Admin passwords
- Hostname and network interface
⚠️ Change the default admin password before deploying to production. This project is designed for educational, testing, or lab environments.
This project is licensed under the MIT License. See the license file for details.
Please use the Issue > New Issue button to submit issues, feature requests or support issues directly to me. You can also send an e-mail to akin.bicer@outlook.com.tr.