Installation Guide — RHEL 8+ / CentOS / Rocky Linux¶
This guide covers installing Faraday Pro or Corporate edition on Red Hat-based distributions using .rpm packages.
Prerequisites¶
- RHEL 8+, CentOS Stream 8+, Rocky Linux 8+, or AlmaLinux 8+ (64-bit)
- Root or sudo access
- PostgreSQL 12+ (14+ recommended)
- Redis 6.0+ (7.x recommended)
Step 1 — Install EPEL Repository¶
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
For RHEL 9 / Rocky 9:
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
Step 2 — Install PostgreSQL¶
Install PostgreSQL from the distribution repositories:
sudo dnf install -y postgresql-server postgresql
PostgreSQL version
Faraday requires PostgreSQL 12 or higher. PostgreSQL 9.6–11 are end-of-life and unsupported. RHEL 8's default PostgreSQL module stream is 10, which is too old. Use the PostgreSQL module stream or the PGDG repository:
# Option A: Use module stream (RHEL 8)
sudo dnf module enable postgresql:14
sudo dnf install -y postgresql-server postgresql
# Option B: Use PGDG repository
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo dnf install -y postgresql14-server postgresql14
Initialize and start PostgreSQL:
sudo postgresql-setup --initdb
sudo systemctl start postgresql
sudo systemctl enable postgresql
Configure PostgreSQL Authentication¶
Edit /var/lib/pgsql/data/pg_hba.conf and set the local authentication method to scram-sha-256 (or md5 for older clients):
# IPv4 local connections:
host all all 127.0.0.1/32 scram-sha-256
# IPv6 local connections:
host all all ::1/128 scram-sha-256
Restart PostgreSQL to apply changes:
sudo systemctl restart postgresql
Step 3 — Install Redis¶
sudo dnf install -y redis
sudo systemctl start redis
sudo systemctl enable redis
Verify Redis is running:
sudo systemctl status redis
Redis version
Faraday requires Redis 6.0 or higher. Check your version with redis-server --version.
Step 4 — Configure SELinux¶
If SELinux is enforcing, you need to allow Faraday to connect to PostgreSQL and Redis:
sudo setsebool -P httpd_can_network_connect_db 1
sudo setsebool -P httpd_can_network_connect 1
Warning
Avoid using setenforce 0 (permissive mode) in production. Instead, configure the appropriate SELinux booleans as shown above, or create a custom SELinux policy module.
Step 5 — Download and Install Faraday¶
Download the .rpm package from portal.faradaysec.com:
sudo dnf install -y ./faraday-server.x86_64.rpm
Step 6 — Initialize the Database¶
sudo faraday-manage initdb
This creates the database schema, admin user, and applies migrations. Save the generated password — you will need it to log in.
The initdb command is a convenience wrapper that runs:
faraday-manage create-tables— Creates the database schemafaraday-manage create-superuser— Creates the admin userfaraday-manage migrate— Applies pending database migrations
Step 7 — Import License (Pro/Corp only)¶
sudo faraday-manage import-license
Or manually extract the license:
tar xvf license-file.tar.gz -C /home/faraday/.faraday/doc/
Step 8 — Start Services¶
# Start and enable the main API server
sudo systemctl start faraday-server
sudo systemctl enable faraday-server
# Start and enable the background task worker
sudo systemctl start faraday-worker
sudo systemctl enable faraday-worker
# Start and enable the reports worker
sudo systemctl start faraday-worker-reports
sudo systemctl enable faraday-worker-reports
All three services are required
The faraday-worker service processes background tasks including vulnerability ingestion via Celery. Without it, data imports and scan processing will not work.
Verify Installation¶
sudo systemctl status faraday-server
sudo systemctl status faraday-worker
sudo systemctl status faraday-worker-reports
Open http://localhost:5985 in your browser and log in with the credentials from Step 6.
Configuration¶
The server configuration file is located at:
/home/faraday/.faraday/config/server.ini
See the Linux Installation Guide for configuration details.
Next Steps¶
- First Steps — Create your first workspace and import scan data
- NGINX / SSL Setup — Configure reverse proxy with TLS
- Troubleshooting — Common installation issues