Kanboard

Материал из Rosalab Wiki
Перейти к: навигация, поиск

Kanboard

Введение

Kanboard — это система управления задачами (веб-приложение), размещаемая на своём сервере (https://kanboard.org). Доступно в репозитории дистрибутивов ROSA Fresh/Хром.

Установка и запуск

Установка:

sudo dnf install kanboard

Конфигурационный файл находится по адресу /var/www/kanboard/config.php. Его можно не править, однако в нем можно настроить, например, соединение с базой данных. По умолчанию используется SQLite в файле по адресу /var/lib/kanboard/db.sqlite. Также доступны MySQL/MariaDB (необходимо установить пакет php-pdo_mysql) и PostgreSQL (php-pdo_pgsql).

В качестве зависимости автоматически установится веб-сервер Apache HTTPD. Конфигурационный файл для веб-сервера находится по адресу /etc/httpd/conf.d/kanboard.conf. Его можно не править.

Запустите веб-сервер и добавьте его в автозапуск:

sudo systemctl enable --now httpd

Зайдите в браузере по адресу http://localhost/kanboard, где вместо localhost может быть адрес сервера. Откроется окно входа:

Screenshot 20230906 165130.png

Данные для входа по умолчанию:

  • логин: admin
  • пароль: admin

После входа обязательно смените пароль!

Screenshot 20230906 165712.png

Kanboard с MySQL в качестве базы данных

Установите Kanboard, сервер MySQL (MariaDB) и модуль PHP:

sudo dnf install kanboard mariadb php-pdo_mysql

Произведите тестовый запуск базы данных:

systemctl start mariadb

Убедитесь, что она запустилась без ошибок:

systemctl status mariadb

При ее первом запуске будут созданы файлы в /var/lib/mysql.

Добавьте базу данных в автозапуск:

systemctl enable mariadb

Запустите скрипт первоначальной настройки БД:

mysql_secure_installation

Ниже приведен вывод скрипта с комментариями к задаваемым им вопросам. Для ответа на вопросы нужно ввести Y для утвердительного или N для отрицательного ответа и нажать Enter.

[root@rosa-2019 ~]# /usr/bin/mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Просто нажмите Enter.

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] y

У нас спросили, нужно ли на время первоначальной настройки запретить авторизацию для подключений по сети. Соглашаемся.

Enabled successfully!
Reloading privilege tables..
 ... Success!


You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] 

У нас спросили, хотим ли мы поставить root-пароль MySQL. Обратите внимание, что это пароль пользователя root внутри MySQL, но не в ОС. Соглашаемся.

New password: 
Re-enter new password: 

2 раза вводим придуманный пароль, создать случайный пароль можно, например, так:

head -c 100 /dev/random | base64 | head -c 20

Запишите установленный пароль в безопасное место, например, в базу данных Keepass с помощью доступной в репозиториях ROSA графической программы KeepassXC (пакет keepassxc).

Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y

Предлагается удалить существующего из коробки анонимного пользователя. Он не нужен. Соглашаемся.

 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y

Предлагается запретить входить в MySQL под root по сети. Соглашаемся.

 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y

из коробки существует пустая база данных с публичным доступом. Предлагается ее удалить. Соглашаемся.

 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y

Предлагается перезагрузить таблицы привелегий, чтобы гарантировать вступление изменений в силу. Соглашаемся.

 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Работа скрипта первоначальной настройки MySQL закончена.

Войдем в консоль MySQL под пользователем root:

mysql -uroot -p

Запросит пароль, введите ранее установленный пароль root MySQL.

Создадим базу данных для Kanboard:

create database kanboard character set utf8 collate utf8_bin;

Теперь создадим пользователя базы данных и дадим ему доступ к ней:

grant all privileges on kanboard.* to kanboard@localhost identified by 'пароль';

Пароль можно создать так:

head -c 100 /dev/random | base64 | head -c 20

Сохраните созданный пароль.

Выйдите из консоли MySQL:

quit;

Импортируйте дамп базы данных:

mysql -ukanboard -p'пароль' kanboard < /var/www/kanboard/app/Schema/Sql/mysql.sql

Отредактируйте файл /var/www/kanboard/config.php. Замените в нем

define('DB_DRIVER', 'sqlite');

на:

define('DB_DRIVER', 'mysql');

Далее в конфиге идут настройки подключения к базе данных. Задайте их:

// имя пользователя в БД
define('DB_USERNAME', 'kanboard');
// ранее установленный пароль от БД
define('DB_PASSWORD', 'пароль');

Зайдите по адресу http://localhost/kanboard и обязательно смените стандартные логин и пароль (admin:admin)!