How To Install OpenProject on Fedora 43

Managing projects across distributed teams without the right tool is painful. Deadlines slip, tasks fall through the cracks, and context gets buried in endless email threads. OpenProject is a powerful, open-source project management platform that solves exactly this — and installing it on your own server puts you in complete control of your data and workflow.
In this guide, you will learn how to install OpenProject on Fedora 43 from scratch. Whether you are a sysadmin spinning up a new server for your team, a developer self-hosting project tools, or a beginner learning Linux server administration, this tutorial gives you every command, every explanation, and every expected output you need to succeed. We will walk through system preparation, dependency setup, PostgreSQL configuration, repository installation, the OpenProject configuration wizard, firewall rules, and post-installation steps — all optimized for Fedora 43’s modern stack.
Fedora 43, released on October 27, 2025, ships with PostgreSQL 18, RPM 6.0, DNF5, and GCC 15.2 — making it one of the most up-to-date open-source server platforms available today. That cutting-edge stack pairs excellently with OpenProject’s requirements, giving you a stable, secure, and high-performance environment right out of the box.
By the end of this guide, your Fedora 43 server will be running a fully functional OpenProject instance accessible through a web browser, ready for real project work.
Prerequisites
Before you begin, confirm you have the following in place. Skipping these will cause avoidable errors mid-installation.
Hardware & OS:
- A 64-bit Fedora 43 server (bare metal, virtual machine, or VPS)
- Minimum 2 CPU cores, 4 GB RAM, and 20 GB of available disk space
- Internet connectivity from the server
Access & Permissions:
- A user account with
sudoprivileges or direct root access - SSH access to the server (if managing remotely)
Software & Tools:
curlandwgetinstalled (we’ll install these if missing)- A domain name or static IP address for the server (required for the FQDN step)
- Basic familiarity with Linux terminal commands
Optional but Recommended:
- A registered domain name if you plan to enable SSL/HTTPS
- SMTP credentials if you want OpenProject to send email notifications
Step 1: Update Your System
Every reliable Linux server tutorial starts here. Running an update before installing anything prevents dependency conflicts — situations where a new package expects a library version that your system hasn’t downloaded yet.
Run the following command to upgrade all installed packages to their latest versions using Fedora 43’s default DNF5 package manager:
sudo dnf update -y
DNF5, the default in Fedora 43, is significantly faster than the older DNF4 used in previous releases. It resolves dependencies more efficiently and gives cleaner output, so you’ll notice the update finishes quicker than on older systems.
After the update completes, reboot your system to apply any kernel updates:
sudo reboot
Once back online, verify you are running Fedora 43:
cat /etc/fedora-release
Expected output:
Fedora release 43 (Forty Three)
Also confirm your system is 64-bit before proceeding:
uname -m
Expected output:
x86_64
If your output says anything other than x86_64, stop here — OpenProject’s packaged installer only supports 64-bit systems.
Step 1.1: Configure SELinux
SELinux (Security-Enhanced Linux) is a mandatory access control system built into Fedora. By default it runs in Enforcing mode, which can block OpenProject’s web server and database connections if specific policies are not configured.
For most users following this guide, setting SELinux to Permissive mode is the safest path. Permissive mode logs policy violations instead of blocking them, meaning your system remains monitored without OpenProject breaking mid-setup.
sudo setenforce 0
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
Reboot again for the change to persist:
sudo reboot
Verify SELinux is now in permissive mode:
sestatus
Expected output:
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
Current mode: permissive
Mode from config file: permissive
Production note: For hardened production environments, configure dedicated SELinux policies for OpenProject instead of disabling enforcement. The OpenProject FAQ provides guidance on policy files for this use case.
Step 2: Install Required Dependencies
OpenProject needs three core components to run: a Ruby runtime, a PostgreSQL database, and a web server (Apache or Nginx). On Fedora 43, all of these are available directly from the official DNF repositories, which makes this step clean and straightforward.
Install Ruby, PostgreSQL, Apache, and essential tools in one command:
sudo dnf install ruby postgresql postgresql-server httpd wget curl -y
Here is what each package does:
- ruby — OpenProject’s backend application runs on Ruby
- postgresql + postgresql-server — The database engine that stores all project data
- httpd — Apache web server, which acts as a reverse proxy for OpenProject
- wget / curl — Used to download repository files and GPG keys
Verify the key installations after the command completes:
ruby --version
psql --version
httpd -v
Expected output (approximate versions on Fedora 43):
ruby 3.3.x
psql (PostgreSQL) 18.x
Server version: Apache/2.4.x
If any command returns “command not found,” re-run the install command and check your internet connection before continuing.
Step 2.1: Initialize and Configure PostgreSQL
PostgreSQL on Fedora/RHEL-based systems requires an explicit initialization step before the database service can start. This is different from Debian/Ubuntu systems, where initialization happens automatically on install.
Initialize the PostgreSQL data directory:
sudo postgresql-setup --initdb
Expected output:
* Initializing database in '/var/lib/pgsql/data'
* Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
Now start the service and enable it to launch automatically at boot:
sudo systemctl start postgresql
sudo systemctl enable postgresql
Verify PostgreSQL is running:
sudo systemctl status postgresql
Look for Active: active (running) in green. If you see failed, check the initialization logs at /var/lib/pgsql/initdb_postgresql.log.
Next, create a dedicated PostgreSQL user and database for OpenProject. Using a dedicated user follows the principle of least privilege — the OpenProject app gets access to only what it needs, and nothing more.
sudo -u postgres createuser -P openproject
You will be prompted to set and confirm a password. Choose a strong password and save it — you will need it during the OpenProject configuration wizard.
Now create the database, owned by the new user:
sudo -u postgres createdb -O openproject openproject
Verify the database was created:
sudo -u postgres psql -c "\l"
You should see openproject listed in the output table with openproject as its owner.
Step 3: Add the OpenProject RPM Repository
OpenProject distributes its packages through a dedicated hosted repository at packages.openproject.com. On Fedora 43, you use the EL9 (Enterprise Linux 9) repository, which is the closest RHEL-compatible repo for Fedora.
First, import the OpenProject GPG signing key. This ensures your system verifies the integrity and authenticity of every package you download from OpenProject:
sudo rpm --import https://packages.openproject.com/srv/rpm/opf/openproject/gpg-key.asc
Next, enable EPEL (Extra Packages for Enterprise Linux), which provides additional dependencies that OpenProject requires:
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm -y
Now add the OpenProject stable repository for EL9:
sudo curl -fsSL \
"https://packages.openproject.com/srv/opf/openproject/stable/17/installer/el/9.repo" \
-o /etc/yum.repos.d/openproject.repo
Verify the repository is active and visible to DNF:
sudo dnf repolist | grep openproject
Expected output:
openproject OpenProject stable/17 (el/9)
If the repo does not appear, double-check your internet connection and re-run the curl command.
Step 4: Install OpenProject on Fedora 43
With the repository configured, installing the OpenProject package itself is a single command. This is the core step to install OpenProject on Fedora 43 — the package downloads the application files, configuration scripts, and the interactive installer wizard.
sudo dnf install openproject -y
This will pull down the OpenProject package along with any remaining dependencies. Depending on your connection speed, this may take a few minutes.
After installation completes, confirm the openproject binary is available:
which openproject
Expected output:
/usr/bin/openproject
Step 5: Run the OpenProject Configuration Wizard
This is the most important step in the entire OpenProject on Fedora 43 setup process. The configuration wizard walks you through every major component — database, web server, domain, SSL, and email.
Run the wizard:
sudo openproject reconfigure
The wizard runs interactively in your terminal. Here is exactly what each prompt means and what to select:
Prompt 1 — OpenProject Edition:
Choose default for general project management. Choose bim only if you work in the construction industry.
Prompt 2 — PostgreSQL Database:
Select Use an existing PostgreSQL database. Enter the following:
- Hostname:
localhost - Port:
5432 - Database name:
openproject - Username:
openproject - Password: (the password you set in Step 2.1)
Prompt 3 — Web Server:
Select Install Apache2 web server (recommended).
Prompt 4 — Domain name (FQDN):
Enter your server’s IP address or domain name, e.g., openproject.example.com or 192.168.1.100.
Prompt 5 — Server path prefix:
Press ENTER to leave blank for a root install. Enter /openproject for a subpath install.
Prompt 6 — SSL/TLS:
Select No for testing. Select Yes for production and provide your certificate, key, and CA bundle paths.
Prompt 7 — SVN/Git integration:
Skip this unless you need repository hosting. You can always reconfigure later with sudo openproject reconfigure.
Prompt 8 — Administrator email:
Enter your email address. OpenProject will create the admin account using this address.
Prompt 9 — Memcached:
Select Install. OpenProject relies heavily on caching, and Memcached dramatically improves response times.
After you confirm the final prompt, the wizard applies all settings, starts the application server, and configures Apache automatically. This may take 2–5 minutes.
Your choices are saved to /etc/openproject/installer.dat, so future runs of sudo openproject reconfigure will reuse them.
Step 5.1: Configure the Firewall
Fedora 43 uses firewalld by default. Without opening ports 80 (HTTP) and 443 (HTTPS), incoming browser traffic will be blocked regardless of whether OpenProject is running.
Open both ports permanently:
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
Verify the rules are active:
sudo firewall-cmd --list-all
Look for services: http https in the output. If you are running on a cloud provider (AWS, DigitalOcean, Hetzner, etc.), also open ports 80 and 443 in your provider’s security group or firewall panel.
Step 6: Start OpenProject and Access the Web Interface
Start the OpenProject service and enable it at boot:
sudo systemctl start openproject
sudo systemctl enable openproject
Check that the service is running:
sudo systemctl status openproject
Expected output (key line):
Active: active (running) since ...
If you see failed, jump to the Troubleshooting section below.
Now open a browser and navigate to:
http://YOUR_SERVER_IP
or if you configured a domain:
http://openproject.example.com
You will see the OpenProject login screen. Use these default credentials:
- Username:
admin - Password:
admin
OpenProject will immediately force you to change the admin password on first login. Choose a strong password and store it securely.
After logging in, you will land on the OpenProject dashboard — your central hub for projects, task boards, Gantt charts, and team collaboration. Take a few minutes to explore the Administration panel at the top-right, where you can configure modules, add users, and set up email notifications.

Post-Installation Configuration Tips
Getting OpenProject running is the first milestone. Here are the key next steps to make it production-ready for your configure OpenProject on Fedora 43 setup:
- Enable HTTPS with Let’s Encrypt: Run
sudo dnf install certbot python3-certbot-apache -ythensudo certbot --apacheto get a free SSL certificate. Reconfigure OpenProject withsudo openproject reconfigureafterward to register the new SSL settings. - Set up outgoing email: Go to Administration → Email and enter your SMTP server details. This enables task notifications, password resets, and project update emails.
- Enable modules: OpenProject ships with optional modules for Time & Costs, Agile boards, Budgets, and Wiki. Enable them per project under Project Settings → Modules.
- Schedule regular backups: Back up
/etc/openproject/(configuration) and your PostgreSQL database withpg_dump openproject > openproject_backup.sqlon a recurring cron job. - Set up LDAP/Active Directory integration: If your team uses LDAP, configure it under Administration → Authentication → LDAP.
Troubleshooting Common Issues
Even with a clean installation, you can hit problems. Here are the five most common issues encountered when you install OpenProject on Fedora 43, along with their fixes.
1. OpenProject service fails to start
Run sudo journalctl -u openproject -f to read live logs. The most common cause is a database connection failure — verify your PostgreSQL credentials match what you entered in the wizard. Re-run sudo openproject reconfigure to correct database settings.
2. 502 Bad Gateway in the browser
This means Apache is running but OpenProject’s internal app server (which listens on port 6000) is not. Restart OpenProject:
sudo systemctl restart openproject
Then check sudo systemctl status openproject again.
3. SELinux blocking connections
If the web interface never loads and logs show permission denials, SELinux is blocking the connection. Confirm permissive mode is active:
sudo setenforce 0
getenforce
Output should read Permissive. If it still reads Enforcing, re-run the sed command from Step 1.1 and reboot.
4. DNF cannot find the OpenProject package
This usually means the repository file was not saved correctly. Re-run the curl command from Step 3 and then run:
sudo dnf clean all && sudo dnf makecache
5. PostgreSQL initialization error
If PostgreSQL refuses to start with an error about an empty data directory, the --initdb step was not completed. Run:
sudo postgresql-setup --initdb
sudo systemctl start postgresql
This is a common miss on Fedora/RHEL systems for users coming from Debian/Ubuntu backgrounds.
Congratulations! You have successfully installed OpenProject. Thanks for using this tutorial for installing the OpenProject task management on Fedora 43 Linux system. For additional help or useful information, we recommend you check the official OpenProject website.