FedoraRHEL Based

How To Install Kanboard on Fedora 42

Install Kanboard on Fedora 42

Project management has evolved significantly in the digital age, and Kanban methodology stands at the forefront of efficient task organization. Kanboard, a powerful open-source project management tool, brings the visual simplicity of Kanban boards to teams seeking streamlined workflow management. This comprehensive guide walks you through installing Kanboard on Fedora 42, ensuring your team can leverage this robust platform for enhanced productivity.

Fedora 42 provides an excellent foundation for hosting Kanboard with its cutting-edge packages and strong security features. Whether you’re managing a small development team or coordinating complex projects, this installation guide ensures a smooth deployment process from start to finish.

Understanding Kanboard and Its Benefits

Kanboard represents a minimalist approach to project management software, focusing on the core principles that make Kanban methodology so effective. Unlike bloated alternatives, Kanboard prioritizes simplicity without sacrificing functionality, making it ideal for small to medium-sized teams.

The platform’s visual task management system transforms complex projects into digestible workflows. Users can create boards, lists, and cards that represent projects, stages, and individual tasks respectively. This visual representation helps teams identify bottlenecks, track progress, and maintain momentum across multiple projects simultaneously.

Self-hosting advantages over cloud-based solutions include complete data control, enhanced security, and cost-effectiveness for growing teams. Organizations maintain full ownership of their project data while avoiding recurring subscription fees that can become substantial over time.

Kanboard’s integration capabilities extend its functionality through plugins and external authentication systems. The platform supports LDAP integration, custom themes, and various notification systems, allowing teams to tailor their project management experience to specific organizational needs.

The lightweight architecture ensures fast performance even on modest server hardware. Unlike resource-intensive alternatives, Kanboard operates efficiently while delivering comprehensive project management features including task assignments, due dates, file attachments, and detailed activity tracking.

System Requirements and Prerequisites

Hardware Requirements

Successful Kanboard deployment requires adequate system resources to ensure optimal performance. Minimum hardware specifications include 1GB RAM, 1 CPU core, and 2GB available storage space. These requirements accommodate small teams managing basic projects effectively.

Recommended hardware configurations for optimal performance include 2GB RAM, 2 CPU cores, and 10GB storage space. Larger teams or complex projects benefit from additional resources, particularly increased RAM for database operations and concurrent user sessions.

Storage considerations extend beyond initial installation requirements. Project attachments, activity logs, and database growth demand scalable storage solutions. Plan for approximately 100MB monthly growth per active user to accommodate long-term expansion.

Software Requirements

Fedora 42 system requirements align perfectly with modern server standards. The distribution requires 64-bit architecture, minimum 2GB RAM for GUI installations, and current hardware support for optimal security updates.

PHP version compatibility demands PHP 8.1 or newer for Kanboard functionality. Fedora 42 repositories include PHP 8.3, providing excellent compatibility and performance improvements over older versions. Essential PHP extensions include mbstring, xml, gd, and database-specific modules.

Database options offer flexibility based on team size and performance requirements. SQLite works excellently for small teams, while MySQL or PostgreSQL provide superior performance for larger deployments. Each database system offers unique advantages regarding scalability and maintenance overhead.

Web server requirements support both Apache and Nginx configurations. Apache provides simpler setup procedures for beginners, while Nginx offers superior performance for high-traffic installations. Both servers integrate seamlessly with PHP-FPM for enhanced performance.

Network and Security Prerequisites

Firewall configuration requirements ensure secure access while maintaining system protection. Standard web traffic requires ports 80 and 443 open for HTTP and HTTPS connections respectively. Additional ports may be necessary for database access or remote administration.

Domain name setup considerations improve user experience and enable SSL certificate installation. While IP addresses work for testing, production deployments benefit from proper DNS configuration and certificate-based encryption.

SSL certificate planning protects sensitive project data during transmission. Let’s Encrypt provides free certificates suitable for most installations, while commercial certificates offer extended validation for enterprise deployments.

Pre-Installation System Preparation

System Updates and Package Management

Updating Fedora 42 packages ensures system security and compatibility with latest software versions. Execute comprehensive system updates before beginning Kanboard installation to prevent conflicts and security vulnerabilities.

sudo dnf update -y
sudo dnf upgrade -y

Repository management may require enabling additional package sources for specific components. Fedora 42 includes comprehensive default repositories, but certain PHP extensions or database systems might need additional sources.

Essential system tools installation prepares the environment for smooth Kanboard deployment. These tools include development packages, compression utilities, and network diagnostic tools that facilitate troubleshooting.

sudo dnf install wget curl unzip git nano htop -y

User Account and Permissions Setup

Dedicated user accounts enhance security by isolating Kanboard processes from system-level operations. Create specific users for web server and database operations to minimize security risks.

Sudo privileges configuration enables administrative tasks without constant root access. Properly configured sudo access maintains security while providing necessary permissions for system management.

Security best practices include strong password policies, SSH key authentication, and regular access reviews. These measures protect against unauthorized access and maintain system integrity throughout the deployment lifecycle.

Firewall and SELinux Configuration

Firewall configuration using firewalld provides robust protection while enabling necessary services. Configure rules specifically for web traffic, database connections, and administrative access.

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

SELinux policy adjustments accommodate web application requirements without compromising system security. Modern SELinux policies include comprehensive support for web applications, requiring minimal manual intervention.

Port management ensures services operate on standard ports while maintaining security. Document port assignments for future reference and maintenance procedures.

Installing and Configuring Apache Web Server

Apache Installation

Apache installation through Fedora’s package manager provides a stable, well-integrated web server foundation. The dnf package manager handles dependencies automatically, ensuring all required components install correctly.

sudo dnf install httpd httpd-tools -y

Service management ensures Apache starts automatically and operates reliably. Enable the service for automatic startup and verify initial configuration before proceeding with Kanboard-specific settings.

sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl status httpd

Initial configuration verification confirms Apache operates correctly before adding application-specific settings. Test basic functionality by accessing the default Apache welcome page through a web browser.

Apache Configuration for Kanboard

Virtual host configuration creates dedicated server blocks for Kanboard, enabling multiple applications on single servers while maintaining proper isolation. Virtual hosts provide flexibility for future expansion and improved organization.

Create a new virtual host configuration file for Kanboard:

sudo nano /etc/httpd/conf.d/kanboard.conf

Document root configuration establishes the web-accessible directory structure for Kanboard files. Proper configuration ensures security while providing necessary access for web operations.

<VirtualHost *:80>
    ServerName your-domain.com
    DocumentRoot /var/www/html/kanboard
    DirectoryIndex index.php
    
    <Directory /var/www/html/kanboard>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog /var/log/httpd/kanboard_error.log
    CustomLog /var/log/httpd/kanboard_access.log combined
</VirtualHost>

Module enablement ensures Apache supports necessary features for Kanboard operation. The mod_rewrite module enables clean URLs and proper routing functionality essential for modern web applications.

sudo dnf install httpd-devel -y

Testing Apache Installation

Service verification confirms Apache operates correctly with new configuration settings. Check service status and review log files for potential issues before proceeding with PHP installation.

Web server functionality testing validates basic HTTP operations through browser access or command-line tools. Successful tests indicate proper network configuration and firewall settings.

Troubleshooting common issues addresses typical problems including permission errors, configuration syntax problems, and port conflicts. Systematic troubleshooting prevents delays in subsequent installation steps.

PHP Installation and Configuration

PHP Core Installation

PHP 8.2 installation provides modern language features and improved performance for Kanboard operations. Fedora 42 repositories include current PHP versions with comprehensive extension support.

sudo dnf install php php-cli php-fpm php-common -y

Essential PHP modules enable core Kanboard functionality including database connectivity, string manipulation, and image processing. Install all required extensions simultaneously to avoid dependency issues.

sudo dnf install php-mbstring php-xml php-gd php-zip php-curl php-ldap -y

PHP-FPM configuration improves performance through dedicated process management and resource optimization. This configuration enhances response times and system resource utilization compared to traditional Apache PHP modules.

Required PHP Extensions

Mandatory extensions provide essential functionality for Kanboard operations. These extensions handle database operations, string processing, XML parsing, and image manipulation required for full feature support.

Database-specific extensions enable connectivity to various database systems. Install extensions for your chosen database platform to ensure proper connectivity and optimal performance.

# For MySQL/MariaDB
sudo dnf install php-mysqlnd php-pdo -y

# For PostgreSQL
sudo dnf install php-pgsql -y

Optional extensions enhance functionality and provide additional features for advanced use cases. These extensions support LDAP authentication, enhanced security, and improved file handling capabilities.

PHP Configuration Optimization

PHP.ini modifications optimize performance and security for web application hosting. Adjust memory limits, execution times, and upload restrictions based on expected usage patterns.

sudo nano /etc/php.ini

Key configuration adjustments:

  • memory_limit = 256M
  • max_execution_time = 300
  • upload_max_filesize = 16M
  • post_max_size = 16M

Security configurations protect against common vulnerabilities while maintaining necessary functionality. Disable dangerous functions and enable security-focused settings without breaking application compatibility.

Performance optimization settings improve response times and resource utilization. Configure opcache, session handling, and other performance-related settings for optimal user experience.

Database Setup and Configuration

Choosing the Right Database

Database comparison helps select the optimal storage solution based on team size, performance requirements, and maintenance capabilities. Each database system offers distinct advantages for different deployment scenarios.

SQLite advantages include zero configuration, file-based storage, and excellent performance for small teams. This embedded database eliminates server administration overhead while providing full SQL functionality.

MySQL/PostgreSQL benefits support larger teams, concurrent connections, and advanced database features. These systems require more configuration but provide superior scalability and professional database management tools.

MySQL/MariaDB Installation and Setup

MariaDB installation provides enterprise-grade database functionality with excellent compatibility and performance characteristics. Fedora 42 includes current MariaDB versions through default repositories.

sudo dnf install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb

Security configuration protects database operations through proper authentication, access controls, and network restrictions. Run the security script to establish baseline protection.

sudo mysql_secure_installation

Database creation establishes dedicated storage for Kanboard data with appropriate user permissions and access controls.

CREATE DATABASE kanboard CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'kanboard'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboard'@'localhost';
FLUSH PRIVILEGES;

Database Security and Optimization

Password policies ensure strong authentication while maintaining usability for administrative tasks. Implement complex passwords and regular rotation schedules for database accounts.

User privilege management limits access rights to necessary operations only. Create specific database users for Kanboard with minimal required permissions rather than using administrative accounts.

Performance tuning optimizes database operations for Kanboard’s usage patterns. Adjust buffer sizes, connection limits, and query cache settings based on expected load and system resources.

Downloading and Installing Kanboard

Obtaining Kanboard Source Code

GitHub repository access provides the most current Kanboard releases with complete version history and documentation. Official repositories ensure authentic, unmodified source code for secure installations.

cd /var/www/html
sudo git clone https://github.com/kanboard/kanboard.git

Download verification confirms file integrity and authenticity through checksums or digital signatures. This verification prevents corrupted downloads and ensures security against tampering.

Alternative download methods include release archives, package managers, and containerized deployments. Choose methods appropriate for your infrastructure and maintenance preferences.

File Placement and Permissions

Directory structure organization ensures proper separation between application files, data storage, and system configurations. Logical organization facilitates maintenance, backups, and security management.

Ownership configuration establishes proper file ownership for web server operation while maintaining security boundaries. Set ownership to web server user accounts for operational files while protecting sensitive configurations.

sudo chown -R apache:apache /var/www/html/kanboard
sudo find /var/www/html/kanboard -type f -exec chmod 644 {} \;
sudo find /var/www/html/kanboard -type d -exec chmod 755 {} \;

Permission optimization balances security requirements with operational functionality. Apply minimal necessary permissions while ensuring all application features operate correctly.

Initial Configuration File Setup

Configuration file creation establishes application-specific settings for database connectivity, logging, and feature enablement. Copy the default configuration template to create customized settings.

cd /var/www/html/kanboard
sudo cp config.default.php config.php

Basic parameter configuration sets essential application settings including database connectivity, logging levels, and storage paths. Review all settings to ensure compatibility with your deployment environment.

Environment-specific settings accommodate development, staging, and production environments with appropriate configurations for each deployment context.

Kanboard Configuration and Database Setup

Database Configuration

Connection parameters establish secure, reliable database connectivity for Kanboard operations. Configure appropriate settings for your chosen database system with proper authentication credentials.

Edit the configuration file to include database settings:

// Database driver: sqlite, mysql or postgres
define('DB_DRIVER', 'mysql');
define('DB_USERNAME', 'kanboard');
define('DB_PASSWORD', 'secure_password');
define('DB_HOSTNAME', 'localhost');
define('DB_NAME', 'kanboard');

Connection testing validates database connectivity before proceeding with application initialization. Proper testing prevents deployment issues and identifies configuration problems early.

Performance optimization includes connection pooling, query optimization, and cache configuration appropriate for expected usage patterns.

Application Settings Configuration

Logging configuration enables proper monitoring and troubleshooting capabilities for production deployments. Configure appropriate log levels and storage locations for operational visibility.

File storage settings establish secure, accessible locations for uploaded attachments and generated content. Configure paths with appropriate permissions and sufficient storage capacity.

Security parameter configuration includes session management, encryption keys, and authentication settings that protect user data and prevent unauthorized access.

Database Schema Installation

Schema deployment creates necessary database tables and structures for Kanboard operation. The application automatically creates required tables during initial access.

Initial data population establishes default settings, user accounts, and system configurations necessary for application operation.

Verification procedures confirm proper database initialization and table creation without errors or missing components.

Web Server Final Configuration

Apache Virtual Host Setup

Production virtual host configuration includes SSL settings, security headers, and performance optimizations for live deployments. Comprehensive configuration ensures security and performance.

<VirtualHost *:443>
    ServerName your-domain.com
    DocumentRoot /var/www/html/kanboard
    DirectoryIndex index.php
    
    SSLEngine on
    SSLCertificateFile /path/to/certificate.crt
    SSLCertificateKeyFile /path/to/private.key
    
    <Directory /var/www/html/kanboard>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog /var/log/httpd/kanboard_ssl_error.log
    CustomLog /var/log/httpd/kanboard_ssl_access.log combined
</VirtualHost>

SSL certificate installation protects data transmission and enables HTTPS access for enhanced security. Let’s Encrypt provides free certificates suitable for most deployments.

HTTP to HTTPS redirection ensures secure connections while maintaining compatibility with existing bookmarks and links.

Testing Web Server Configuration

Configuration syntax validation prevents service failures due to configuration errors. Apache includes built-in syntax checking tools for comprehensive validation.

sudo httpd -t
sudo systemctl restart httpd

Service functionality testing confirms proper operation with new configuration settings. Test both HTTP and HTTPS access to ensure complete functionality.

Performance baseline establishment provides reference measurements for ongoing monitoring and optimization efforts.

Initial Kanboard Setup and Configuration

First-Time Access

Web interface access initiates the Kanboard setup process through browser-based configuration. Navigate to your configured domain or IP address to begin initial setup.

Default authentication uses standard administrator credentials for initial access. The default username and password are both “admin” – change these immediately for security.

Initial security configuration includes password changes, user account creation, and basic security setting establishment during first login.

Administrative Configuration

Administrator account security requires immediate password changes and account information updates. Create strong passwords and configure personal information for proper user identification.

User management setup includes creating additional user accounts, setting permissions, and establishing organizational structure. Plan user roles and access levels before creating accounts.

Project initialization involves creating initial project boards, establishing team assignments, and configuring basic workflow structures for immediate productivity.

Security Hardening

Default account removal eliminates unnecessary administrative access points that could pose security risks. Disable or remove default accounts after creating personalized administrator access.

Two-factor authentication provides additional security layers for administrator and user accounts. Configure 2FA for critical accounts to prevent unauthorized access.

Security Hardening and Best Practices

Application Security

Configuration file protection prevents unauthorized access to sensitive database credentials and application settings. Set restrictive file permissions on configuration files while maintaining web server access.

Backup strategy implementation ensures data protection and recovery capabilities for critical project information. Establish automated backup procedures for both application files and database content.

Update procedures maintain current security patches and feature improvements. Establish regular update schedules and testing procedures for safe application maintenance.

Server Security

Firewall optimization refines access rules to permit only necessary traffic while blocking potential threats. Regular rule reviews ensure continued protection against evolving security challenges.

SSL/TLS configuration implements strong encryption protocols and cipher suites for maximum data protection. Configure modern TLS versions while maintaining reasonable client compatibility.

Monitoring implementation establishes logging and alerting systems for security events and performance issues. Comprehensive monitoring enables proactive issue resolution and security incident response.

Ongoing Maintenance

Regular update schedules ensure continued security and functionality improvements. Plan update windows and testing procedures to minimize operational disruption.

Backup automation protects against data loss through scheduled, tested backup procedures. Verify backup integrity and restoration procedures regularly.

Performance monitoring tracks system resource utilization, response times, and user experience metrics for ongoing optimization.

Troubleshooting Common Issues

Installation Problems

Permission-related errors often result from incorrect file ownership or restrictive permissions. Verify web server user ownership and appropriate access permissions for all Kanboard directories.

Database connection failures typically indicate configuration errors or network connectivity issues. Review connection parameters, test database accessibility, and verify user permissions.

PHP extension problems prevent proper application functionality. Confirm all required extensions are installed and properly configured in PHP settings.

Performance Issues

Slow page loading may indicate server resource constraints or configuration problems. Monitor system resources, optimize database queries, and review web server configuration settings.

Database optimization improves response times through proper indexing, query optimization, and cache configuration. Regular database maintenance ensures continued performance.

Memory-related problems require PHP configuration adjustments or server resource increases. Monitor memory usage patterns and adjust limits accordingly.

Configuration Errors

Apache configuration issues prevent proper web server operation and application access. Use configuration testing tools to identify and resolve syntax errors.

SSL certificate problems block secure connections and may trigger browser security warnings. Verify certificate installation, configuration, and renewal procedures.

File path corrections resolve application errors related to storage locations and resource access. Ensure consistent path configuration throughout application settings.

Advanced Configuration and Customization

Plugin Installation

Plugin management extends Kanboard functionality through community-developed extensions. Install plugins through the web interface or manual file placement based on plugin requirements.

Manual installation procedures accommodate custom plugins or specialized installations. Follow security best practices when installing third-party extensions.

Popular plugin recommendations include calendar views, reporting tools, and integration extensions that enhance team productivity and workflow management.

Theme and Appearance Customization

Visual customization options include custom themes, logos, and color schemes that match organizational branding. Modify appearance while maintaining usability and accessibility standards.

Logo and branding integration personalizes the application interface for organizational identity. Upload custom logos and configure color schemes appropriately.

User interface modifications can accommodate specific workflow requirements or accessibility needs through careful customization.

Integration Options

LDAP integration enables centralized user management and authentication through existing directory services. Configure LDAP settings for seamless organizational integration.

Email configuration supports notification systems and user communication features. Configure SMTP settings for reliable email delivery.

External authentication systems provide single sign-on capabilities and enhanced security through established identity providers.

Congratulations! You have successfully installed Kanboard. Thanks for using this tutorial for installing Kanboard open source project management on your Fedora 42 Linux. For additional help or useful information, we recommend you check the official Kanboard website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!

r00t

r00t is an experienced Linux enthusiast and technical writer with a passion for open-source software. With years of hands-on experience in various Linux distributions, r00t has developed a deep understanding of the Linux ecosystem and its powerful tools. He holds certifications in SCE and has contributed to several open-source projects. r00t is dedicated to sharing her knowledge and expertise through well-researched and informative articles, helping others navigate the world of Linux with confidence.
Back to top button