Simple visual task board based on Kanban methodology – Kanboard

If you are in project management or simply want to get well organized, you may know the Kanban methodology, it’s a visual process management system that allow you to categorize and follow your task in a structured manner, usually on a board.

Such systems are usually made with stickers on a board, but could also be installed on a server and this is what I’m going to present through this tutorial.

kanban funny board

Kanboard is a simple visual task board, open source inspired by the Kanban methodology. It provides a clear view on your projects and allows you to customized the board based on your business activities. Like for software development you can categorize your tasks as Backlog/Ready/Work-in-progress/done, … or for Sales as, Leads/Meeting/Proposal, etc…

You can actually flag your tasks in different colors, move them through Drag&Drop, have multi-users on the same instance (Accept LDAP and even Google Authentication), define automatic actions, etc…

kanboard screenshotKanboard requires a dabatase (default as SQLite, but could also use MySQL/MariaDB)

A demo can be found here. (demo/demo123)



As usual, I suppose you have a working Apache and PHP server (Could even use MySQL), if not, please follow my previous guide on how to install a Linux Apache, MySQL PHP server (LAMP)

1) Clone the Kanboard git repository in your /var/www

cd /var/www
git clone git://

(PS: you will need to install git, if not done)

2) Database set up

– If you want to use the default SQL database (SQLite), which is in that case even easier to configure, you need to install php5-sqlite. Simply run in root:

apt-get install php5-sqlite

– If you prefer to use MySQL database, you need to create a dedicated database and user first, you can use PHPMyAdmin to do so. And then simply create/modify the config file per official website info.

3) Change kanboard folder owner to www-data to provide access rights to apache

chown -R www-data:www-data /var/www/kanboard/

4) Simply go to http://YourIP/kanboard and log in using admin/admin credentials.

Kanboard sign-inDon’t forget to change the admin password in Users–>edit (admin)

Kanboard - change passwordHowever, before to move forward and start to use it, you need to ensure the data folder is not accessible (Contains the SQLite database with all the info…). Make sure http://YourIP/kanboard/data is not accessible. If it is, you need to create a .htaccess or directly block the access from a dedicated virtualhost.


Virtualhost configuration

If you want to secure a bit more your Kanboard installation by blocking data/ folder access and at the same time having a better URL (more easyfriendly) such as kan.domain.tld, I suggest you to create a dedicated virtualhost for this service. And you can even add SSL certificate and force the access through HTTPS.

You will need to:

1) Create a A redirection in your DNS server/registrar

2) Have SSL certificate ready. If not you can read this tutorial.

3) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called kanboard (In root):

nano /etc/apache2/sites-enabled/kanboard

and paste the following content:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.tld
        ServerName kan.domain.tld
        Redirect / https://kan.domain.tld


<IfModule mod_ssl.c>
<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/myblog.pem
        SSLCertificateKeyFile /etc/ssl/private/myblog.key

        ServerAdmin webmaster@domain.tld
        ServerName kan.domain.tld

        DocumentRoot /var/www/kanboard
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        <Directory /var/www/kanboard>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all

        <Directory /var/www/kanboard/data>
                Order deny,allow
                deny from all


Adapt the content (Servername, webmaster, SSL certificate and directory, …).

As you need to deny access to the data folder (Where is store the SQLite database), the last part of the shared virtualhost is made for that.

When done, save the file (CTRL+X then Yes) and reload apache: (In root)

/etc/init.d/apache2 reload

You should now be all set and ready to use Kanboard!


Loves to discover web-based apps to install on his own server@home and write articles about it


Add a comment