OrangeScrum installeren en instellen op Ubuntu 20.04

Orangescrum is een gratis en open-source projectbeheer en samenwerkingsprogramma. Het is ideaal voor kleine en middelgrote bedrijven en helpt je bij het maken en beheren van je projecten, teams, documenten en taken, en bij het communiceren met de andere teamleden. Het is een erg handige project management toepassing met een eenvoudige interface die je helpt bij het plannen, organiseren en beheren van je taken voor om het even welk project. Het heeft een heleboel functies, waaronder, Scrum Board, Sprint Planning en Rapporten, Story Points, Project Backlog, en nog veel meer.

In deze handleiding laten we je zien hoe je OrangeScrum Project management gereedschap op Ubuntu 20.04 server installeert.

Vereisten

  • Een server waarop Ubuntu 20.04 draait.
  • Een geldige domeinnaam die wijst naar het IP van je server.
  • Een root wachtwoord is op de server ingesteld.

Installeer Apache, MariaDB en PHP

Installeer eerst de Apache webserver en de MariaDB databaseserver met het volgende commando:

apt-get install apache2 mariadb-server -y

Na de installatie van de bovenstaande pakketten moet je PHP versie 7.2 en andere vereiste uitbreidingen in je systeem installeren. Standaard wordt Ubuntu 20.04 geleverd met de PHP versie 7.4 dus je zult de Ondrej repository in je systeem moeten toevoegen.

Installeer eerst de vereiste pakketten met het volgende commando:

apt-get install software-properties-common gnupg2 -y

Voeg vervolgens de Ondrej repository toe met het volgende commando:

add-apt-repository ppa:ondrej/php

Werk vervolgens de repository bij en installeer PHP samen met andere vereiste pakketten met het volgende commando:

apt-get install php7.2 php7.2-bcmath php7.2-cgi php7.2-cli php7.2-common php7.2-curl php7.2-dba php7.2-enchant php7.2-fpm php7.2-gd php7.2-imap php7.2-intl php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-opcache php7.2-imagick php7.2-memcache php7.2-soap php7.2-tidy php7.2-xml php7.2-zip libapache2-mod-php7.2 xvfb libfontconfig wkhtmltopdf unzip wget -y

Als alle pakketten geïnstalleerd zijn, bewerk je het php.ini bestand en verander je enkele vereiste instellingen:

nano /etc/php/7.2/apache2/php.ini

Verander de volgende waarden:

post_max_size = 200M
upload_max_filesize = 200M
max_execution_time = 300
memory_limit = 512M
max_input_vars = 5000
date.timezone = Asia/Kolkata

Sla het bestand op en sluit het af, herstart dan de Apache dienst om de veranderingen toe te passen:

systemctl restart apache2

Als je klaar bent, kun je verder gaan met de volgende stap.

Maak een databank voor OrangeScrum

Vervolgens moet je een databank en gebruiker voor OrangeScrum maken. Log eerst in in de MariaDB shell met het volgende commando:

mysql

Eenmaal ingelogd maak je een database en een gebruiker aan met het volgende commando:

MariaDB [(none)]> CREATE DATABASE orangescrumdb;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON orangescrumdb.* TO 'orangescrumuser'@'localhost' IDENTIFIED BY 'password';

Spoel vervolgens de privileges door en verlaat de MariaDB shell met het volgende commando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit;

Vervolgens moet je de strict mode voor MariaDB uitschakelen. Je kunt dit doen door het bestand disable_strict_mode.cnf aan te maken:

nano /etc/mysql/conf.d/disable_strict_mode.cnf

Voeg de volgende regels toe:

[mysqld]
sql_mode="IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

Sla het bestand op en sluit het. Herstart dan MariaDB om alle veranderingen toe te passen:

systemctl restart mariadb

Installeer OrangeScrum

Eerst moet je de nieuwste versie van OrangeScrum downloaden van hun officiële website. Pak na het downloaden het gedownloade bestand uit met het volgende commando:

unzip orangescrum-master.zip

Verplaats vervolgens de uitgepakte directory naar de Apache root directory met het volgende commando:

mv orangescrum-master /var/www/html/orangescrum

Verander vervolgens de directory in de Orangescrum en importeer de OrangeScrum database in je database:

cd /var/www/html/orangescrum
mysql -u orangescrumuser -p orangescrumdb < database.sql

Voer het wachtwoord in dat je gekozen hebt voor de ‘orangescrumuser’ MySQL gebruiker wanneer daarom gevraagd wordt door het mysql commando.

Bewerk vervolgens het bestand database.php en bepaal je database instellingen:

nano app/Config/database.php

Verander de volgende regels:

class DATABASE_CONFIG {

        public $default = array(
                'datasource' => 'Database/Mysql',
                'persistent' => false,
                'host' => 'localhost',
                'login' => 'orangescrumuser',
                'password' => 'password',
                'database' => 'orangescrumdb',
                'prefix' => '',
                'encoding' => 'utf8',
        );
}

Sla het bestand op en sluit het als je klaar bent.

Geef vervolgens de juiste permissies aan de map orangescrum:

chown -R www-data:www-data /var/www/html/orangescrum
chmod -R 775 /var/www/html/orangescrum

Configureer Apache voor OrangeScrum

Vervolgens moet je een nieuw Apache virtual host configuratiebestand maken voor OrangeScrum. Je kunt het maken met het volgende commando:

nano /etc/apache2/sites-available/orangescrum.conf

Voeg de volgende regels toe:

<VirtualHost *:80>
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/orangescrum/
        ServerName orangescrum.example.com
    <Directory /var/www/html/orangescrum/>
             DirectoryIndex index.php index.html
             AllowOverride All
             Allow from all
             Order allow,deny
             Options Indexes FollowSymlinks
    </Directory>
</VirtualHost>

Bewaar en sluit het bestand en schakel dan het Apache virtuele host bestand in met het volgende commando:

a2ensite orangescrum.conf

Schakel vervolgens de vereiste modules in met het volgende commando:

phpenmod mbstring
a2enmod rewrite
a2enmod headers

Herstart vervolgens de Apache dienst om de veranderingen toe te passen:

systemctl restart apache2

Je kunt nu de status van Apache controleren met het volgende commando:

systemctl status apache2

Je zou de volgende uitvoer moeten krijgen:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-09-17 15:36:20 UTC; 5min ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 40670 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 40689 (apache2)
      Tasks: 11 (limit: 2353)
     Memory: 47.1M
     CGroup: /system.slice/apache2.service
             ??40689 /usr/sbin/apache2 -k start
             ??40690 /usr/sbin/apache2 -k start
             ??40692 /usr/sbin/apache2 -k start
             ??40694 /usr/sbin/apache2 -k start
             ??40698 /usr/sbin/apache2 -k start
             ??40699 /usr/sbin/apache2 -k start
             ??40700 /usr/sbin/apache2 -k start
             ??40706 /usr/sbin/apache2 -k start
             ??40808 /usr/sbin/apache2 -k start
             ??40809 /usr/sbin/apache2 -k start
             ??40810 /usr/sbin/apache2 -k start

Sep 17 15:36:20 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...

Beveilig OrangeScrum met Let’s Encrypt SSL

Vervolgens is het aan te bevelen om OrangeScrum te beveiligen met Let’s Encrypt SSL. Installeer eerst de Certbot client om de SSL te beheren.

apt-get install python3-certbot-apache -y

Na de installatie van de Certbot client, voer je het volgende commando uit om de Let’s Encrypt SSL voor je domein te installeren:

certbot --apache -d orangescrum.example.com

Je wordt gevraagd je emailadres op te geven en de servicevoorwaarden te accepteren, zoals hieronder:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for orangescrum.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/orangescrum-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/orangescrum-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/orangescrum-le-ssl.conf

Kies vervolgens of je HTTP verkeer al dan niet wilt omleiden naar HTTPS zoals hieronder:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Typ 2 en druk op Enter om verder te gaan. Als de installatie voltooid is, zou je de volgende uitvoer moeten zien:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/orangescrum.conf to ssl vhost in /etc/apache2/sites-available/orangescrum-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://orangescrum.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=orangescrum.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/orangescrum.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/orangescrum.example.com/privkey.pem
   Your cert will expire on 2020-11-11. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Nu kun je je Open Classifieds website veilig benaderen met de URL https://orangescrum.example.com.

Toegang tot OrangeScrum

Open nu je web browser en typ de URL https://orangescrum.example.com. Je ziet nu het OrangeScrum Inschrijf scherm:

Configureer Hostnaam, gebruikersnaam en wachtwoord

Geef je SMTP gegevens op of klik op de knop Sla deze stap over. Je zou het volgende scherm moeten zien:

Opzet van het bedrijf

Geef je sitenaam, e-mail, wachtwoord en klik op de Signup knop. Je wordt doorgestuurd naar het Orangescrum dashboard op de volgende pagina:

OranjeScrum Dashboard

Conclusie

Gefeliciteerd! Je hebt met succes OrangeScrum met Let’s Encrypt SSL geïnstalleerd op Ubuntu 20.04 server. Je kunt nu je eerste project maken, gebruikers uitnodigen en een taak voor ze maken en toewijzen. Stel me gerust als je nog vragen hebt.