TaskBoard is a powerful and versatile Kanban application that allows teams and organizations to track and manage tasks efficiently. In this article, we will guide you through the process of installing TaskBoard on Debian 11 with Apache as the web server and Let’s Encrypt SSL for enhanced security. By following this step-by-step tutorial, you’ll be able to set up TaskBoard and access it securely using HTTPS.
Prerequisites
Before we begin, make sure you have the following prerequisites in place:
- A server running Debian 11.
- A valid domain name pointed to your server’s IP address.
- Root access to the server.
Getting Started
Let’s start by updating the system packages to the latest versions. Open your terminal and run the following command:
apt-get update -y
This will update all the packages on your Debian 11 server, ensuring that you have the most recent versions available.
Install Apache, PHP, and Sqlite
To run TaskBoard, we need to install the Apache web server, PHP, and Sqlite. Run the following command to install these dependencies:
apt-get install apache2 sqlite3 php libapache2-mod-php php-cli php-common php-json php-readline php-sqlite3 libaio1 libapr1 libhtml-template-perl libaprutil1-dbd-sqlite3 libaprutil1-ldap libaprutil1 libdbi-perl libterm-readkey-perl curl libwrap0 unzip wget -y
This command will install all the necessary packages required to run TaskBoard smoothly. Once the installation is complete, start the Apache service and enable it to start automatically on system boot:
systemctl start apache2 systemctl enable apache2
With Apache installed and running, we can move on to the next step.
Download TaskBoard
Now, let’s download the latest version of TaskBoard. Run the following command to download TaskBoard and extract it to the Apache web root directory:
curl -s https://api.github.com/repos/kiswa/TaskBoard/releases/latest | grep browser_download_url | cut -d '"' -f 4 | wget -i unzip TaskBoard_v*.zip -d /var/www/html/taskboard
This will download TaskBoard and extract it to the /var/www/html/taskboard
directory. Next, we need to set the proper ownership and permissions for the TaskBoard directory:
chown -R www-data:www-data /var/www/html/taskboard chmod -R 775 /var/www/html/taskboard
These commands ensure that the Apache web server has the necessary permissions to access and manage the TaskBoard files and directories.
Configure Apache for TaskBoard
To configure Apache for TaskBoard, we need to create a virtual host configuration file. Run the following command to create the file:
nano /etc/apache2/sites-available/taskboard.conf
This will open the nano text editor with the taskboard.conf
file. Add the following lines to the file:
<VirtualHost *:80>
ServerAdmin test@example.com
DocumentRoot "/var/www/html/taskboard"
ServerName taskboard.example.com
<Directory "/var/www/html/taskboard">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog "/var/log/apache2/taskboard-error_log"
CustomLog "/var/log/apache2/taskboard-access_log" combined
</VirtualHost>
Make sure to replace taskboard.example.com
with your actual domain name. Save and close the file.
Next, enable the virtual host by running the following command:
a2ensite taskboard.conf
This will enable the TaskBoard virtual host in Apache. Now, we need to enable the Apache rewrite module and restart the Apache service:
a2enmod rewrite systemctl restart apache2
To verify that Apache is running without any issues, use the following command:
systemctl status apache2
If everything is working correctly, you should see the following output:
● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2021-11-06 14:46:54 UTC; 5s ago Docs: https://httpd.apache.org/docs/2.4/ Main PID: 23709 (apache2) Tasks: 6 (limit: 4679) Memory: 15.3M CPU: 110ms CGroup: /system.slice/apache2.service ├─23709 /usr/sbin/apache2 -k start ├─23710 /usr/sbin/apache2 -k start ├─23711 /usr/sbin/apache2 -k start ├─23712 /usr/sbin/apache2 -k start ├─23713 /usr/sbin/apache2 -k start └─23714 /usr/sbin/apache2 -k start Nov 06 14:46:54 debian11 systemd[1]: Starting The Apache HTTP Server...
If you see the above output, it means Apache is running successfully.
Access TaskBoard
Now that TaskBoard is installed and configured, you can access it through your web browser. Open your browser and enter the URL http://taskboard.example.com
, replacing taskboard.example.com
with your actual domain name.
You will be redirected to the TaskBoard login page. Enter the default admin username and password admin/admin
, then click on the “Sign In” button. You should now see the TaskBoard dashboard.
To change the default admin password, click on the “Settings” button and navigate to the password change page. Enter your desired new admin password and click on the “Change Password” button to apply the changes.
Secure TaskBoard with Let’s Encrypt SSL
To enhance the security of your TaskBoard installation, we can secure it with Let’s Encrypt SSL. Let’s Encrypt provides free SSL certificates that can be easily installed and managed.
To install the Certbot client package and manage the Let’s Encrypt SSL for your TaskBoard website, run the following command:
apt-get install python3-certbot-apache -y
Once the Certbot package is installed, run the following command to download and install the Let’s Encrypt SSL for your TaskBoard website:
certbot --apache -d taskboard.example.com
Replace taskboard.example.com
with your actual domain name. During the installation process, you will be prompted to provide your email address and accept the terms of service. Follow the on-screen instructions to complete the installation.
After the installation is complete, your TaskBoard website will be accessible securely via HTTPS. You can access it using the URL https://taskboard.example.com
.
Conclusion
Congratulations! You have successfully installed TaskBoard with Apache and Let’s Encrypt SSL on Debian 11. You can now start utilizing TaskBoard to manage your tasks effectively and efficiently. If you have any questions or need further assistance, please feel free to reach out.
Shape.host services At Shape.host, we provide reliable and secure cloud hosting solutions, including Linux SSD VPS. With our scalable and efficient hosting options, you can optimize your task management and streamline your workflow. Visit Shape.host to explore our hosting services and take your productivity to new heights.