Skip to content

cynegeirus/freeipa-server-setup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ FreeIPA Server Setup (Docker & Manual)

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

📦 Option 1: Docker-Based Installation

A fast and reproducible way to deploy FreeIPA using Docker Compose.

✅ Features

  • 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

📂 Directory

docker/docker-compose.yml contains the service definition.

⚙️ Configuration Overview

  • 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!)

🚀 Run the Container

cd docker
docker-compose up -d

🔁 Exposed Ports

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)

📝 Optional: Add to /etc/hosts

123.123.123.123 ipa.example.local

🧰 Option 2: Manual Installation Script

A bash script (install.sh) for installing FreeIPA directly on a CentOS/RHEL-based system.

✅ Features

  • 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

🖥️ Requirements

  • RHEL/CentOS/Rocky Linux
  • Root privileges
  • Network connectivity

🚀 Usage

chmod +x install.sh
sudo ./install.sh

The 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

🔐 Security Notice

⚠️ Change the default admin password before deploying to production. This project is designed for educational, testing, or lab environments.

📜 License

This project is licensed under the MIT License. See the license file for details.

🙌 Issues, Feature Requests or Support

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.

About

This project, provides a quick and reproducible way to deploy a FreeIPA server using Docker Compose or Bash Script on **Rocky Linux 9** with additional features like DNS, AD trust support, and KRA.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages