Preduvjeti
Izmijenite pravila UFW vatrozida
Instalirajte Apache 2.4
Instalirajte i osigurajte MariaDB 10.3 seriju
Instalirajte potrebne PHP 7.2 pakete
Instalirajte Chamilo
Pripremite Chamilo LMS datoteke
Fino podesite PHP 7.2 postavke za Chamilo
Postavite Apache virtualni poslužitelj za Chamilo LMS
Završite instalaciju u web pregledniku
Poduzmite sigurnosne mjere nakon instalacije
Chamilo je besplatni sustav upravljanja učenjem otvorenog koda (LMS) koji se naširoko koristi za online obrazovanje i timsku suradnju diljem svijeta.
U ovom članku pokazat ću vam kako implementirati najnovije stabilno izdanje Chamila na instanci poslužitelja Ubuntu 18.04 LTS.
Preduvjeti
- U proizvodnji se preporučuje svježa instanca poslužitelja Vultr Ubuntu 18.04 LTS x64 s dovoljno memorije, 8 GB ili više. Recimo da je njegova IPv4 adresa
203.0.113.1.
- Korisnik sudoa .
- Instanca poslužitelja ažurirana je na najnoviji stabilni status. Detalje pogledajte ovdje .
- Domena
chamilo.example.comkoja je usmjerena na gore spomenutu instancu poslužitelja.
Izmijenite pravila UFW vatrozida
U proizvodnji morate izmijeniti pravila UFW vatrozida kako biste dopustili samo ulazni TCP promet na SSH, HTTP i HTTPS portovima:
sudo ufw allow in ssh
sudo ufw allow in http
sudo ufw allow in https
sudo ufw enable
Instalirajte Apache 2.4
Na Ubuntu 18.04 LTS možete koristiti APT za instaliranje najnovijeg stabilnog izdanja Apachea na sljedeći način:
sudo apt install -y apache2
Uklonite unaprijed postavljenu stranicu dobrodošlice Apachea:
sudo mv /var/www/html/index.html /var/www/html/index.html.old
Zabraniti Apacheu da posjetiteljima izlaže datoteke i direktorije unutar web korijenskog direktorija /var/www/html:
sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf
Omogućite Apache Rewrite modul:
sudo a2enmod rewrite
Pokrenite uslugu Apache i neka se automatski pokreće pri svakom pokretanju sustava:
sudo systemctl start apache2.service
sudo systemctl enable apache2.service
Instalirajte i osigurajte MariaDB 10.3 seriju
Instalirajte najnovije stabilno izdanje MariaDB-a:
sudo apt install -y software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirrors.accretive-networks.net/mariadb/repo/10.3/ubuntu bionic main'
sudo apt update
sudo apt install -y mariadb-server
Tijekom instalacije od vas će se tražiti da postavite novu lozinku za rootkorisnika MariaDB . Iz sigurnosnih razloga ovdje svakako unesite jaku lozinku.
Pokrenite uslugu MariaDB i neka se automatski pokreće pri svakom pokretanju sustava:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Sigurno MariaDB:
sudo /usr/bin/mysql_secure_installation
Kada se to od vas zatraži, odgovorite na svako pitanje na ekranu kako slijedi:
Enter current password for root (enter for none): your-MariaDB-root-password
Change the root password? [Y/n]: n
Remove anonymous users? [Y/n]: y
Disallow root login remotely? [Y/n]: y
Remove test database and access to it? [Y/n]: y
Reload privilege tables now? [Y/n]: y
Instalirajte potrebne PHP 7.2 pakete
Kako biste postigli bolju izvedbu na web-mjestu Chamilo, preporuča se instalirati najnovije PHP 7.2 pakete umjesto naslijeđenih PHP 5.x paketa. Trenutno možete koristiti PPA repo treće strane za instaliranje potrebnih PHP 7.2 paketa kako slijedi.
Instalirajte ondrej/phpPPA repo, a zatim ažurirajte sustav:
sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
Instalirajte potrebne PHP 7.2 pakete:
sudo apt install -y php7.2 php7.2-opcache php7.2-cli php7.2-curl php7.2-common php7.2-gd php7.2-intl php7.2-mbstring php7.2-mysql libapache2-mod-php7.2 php7.2-soap php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-ldap php-apcu-bc
Sigurnosno kopirajte i uredite PHP konfiguracijsku datoteku orijentiranu na Apache:
sudo cp /etc/php/7.2/apache2/php.ini /etc/php/7.2/apache2/php.ini.bak
sudo sed -i 's#;date.timezone =#date.timezone = America/Los_Angeles#' /etc/php/7.2/apache2/php.ini
Napomena: Kada radite na vlastitoj instanci poslužitelja, svakako zamijenite primjer vrijednosti vremenske zone America/Los_Angelessvojom. Možete pronaći sve podržane zonu vrijednosti ovdje .
Instalirajte Chamilo
Nakon što je snop LAMP-a na mjestu, sada je vrijeme za postavljanje Chamilo LMS-a. Morat ćete postaviti namjensku MariaDB bazu podataka za Chamilo, pripremiti Chamilo LMS datoteke, fino podesiti postavke PHP 7.2, postaviti virtualni poslužitelj Apache, završiti instalaciju u web pregledniku i poduzeti sigurnosne mjere nakon instalacije.
Prijavite se u ljusku MariaDB kao root:
mysql -u root -p
U ljusku MariaDB unesite sljedeće izjave:
CREATE DATABASE chamilo;
CREATE USER 'chamilouser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON chamilo.* TO 'chamilouser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Napomena: Iz sigurnosnih razloga obavezno zamijenite naziv chamilobaze podataka, korisničko ime baze podataka chamilouseri lozinku yourpasswordsvojim vlastitim.
Pripremite Chamilo LMS datoteke
Preuzmite najnovije stabilno izdanje Chamila iz Chamilo GitHub repo. Svakako odaberite izdanje orijentirano na PHP 7.x:
cd
wget https://github.com/chamilo/chamilo-lms/releases/download/v1.11.8/chamilo-1.11.8-php7.tar.gz
Ekstrahirajte sve Chamilo datoteke u /optdirektorij:
sudo tar -zxvf chamilo-1.11.8-php7.tar.gz -C /opt
Kako biste olakšali svakodnevnu upotrebu i potencijalna ažuriranja, stvorite simboličku vezu, koja pokazuje na /opt/chamilo-1.11.8-php7direktorij, u korijenskom direktoriju Apachea /var/www/html:
sudo ln -s /opt/chamilo-1.11.8-php7 /var/www/html/chamilo
Promijenite vlasništvo nad svim Chamilo datotekama na www-datakorisnika i www-datagrupu:
sudo chown -R www-data:www-data /opt/chamilo-1.11.8-php7
Fino podesite PHP 7.2 postavke za Chamilo
Koristite viuređivač da otvorite istu PHP konfiguracijsku datoteku koju smo ranije uređivali:
sudo vi /etc/php/7.2/apache2/php.ini
Pronađite sljedeće retke, odnosno:
session.cookie_httponly =
upload_max_filesize = 2M
post_max_size = 8M
Zamijenite ih sljedećim:
session.cookie_httponly = 1
upload_max_filesize = 100M
post_max_size = 100M
Spremi i zatvori:
:wq!
Postavite Apache virtualni poslužitelj za Chamilo LMS
Koristite sljedeće naredbe za postavljanje Apache virtualnog hosta za svoju Chamilo LMS stranicu:
cat <<EOF | sudo tee /etc/apache2/sites-available/chamilo.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/chamilo
ServerName chamilo.example.com
ServerAlias example.com
<Directory />
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/html/chamilo>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/chamilo.example.com-error_log
CustomLog /var/log/apache2/chamilo.example.com-access_log common
</VirtualHost>
EOF
Napomena: Obavezno zamijenite sva pojavljivanja example.comsa svojom stvarnom domenom.
Koristite novu simboličku vezu da zamijenite zadanu datoteku veze u /etc/apache2/sites-enableddirektoriju:
sudo rm /etc/apache2/sites-enabled/000-default.conf
sudo ln -s /etc/apache2/sites-available/chamilo.conf /etc/apache2/sites-enabled/
Ponovno pokrenite Apache uslugu da sve svoje izmjene stavite na snagu:
sudo systemctl restart apache2.service
Završite instalaciju u web pregledniku
Usmjerite svoj omiljeni web preglednik na http://chamilo.example.com, i bit ćete dovedeni u čarobnjak za instalaciju Chamilo. Kliknite Install Chamilogumb za nastavak. Sljedeći odjeljak će vas provesti kroz proces instalacije:
Step 1 - Installation Language: Odaberite jezik koji želite koristiti, kao što je English, a zatim kliknite Nextgumb.
Step 2 – Requirements: Provjerite jesu li ispunjeni svi obvezni zahtjevi, a zatim kliknite New installationgumb.
Step 3 – Licence: Morate pregledati GNU Opću javnu licencu (GPL), označiti potvrdni okvir pored I agreerečenice, ispuniti sva polja s podacima o kontaktu, a zatim kliknuti Nextgumb za nastavak.
Step 4 – MySQL database settings: Unesite vjerodajnice baze podataka koje smo postavili ranije, a zatim kliknite Check database connectiongumb da ih potvrdite. Kliknite Nextgumb za nastavak.
Step 5 – Config settings: Obavezno izmijenite unaprijed postavljenu lozinku administratora, ispunite ostala polja u skladu sa svojim poslovnim planom, a zatim kliknite Nextgumb za nastavak.
Step 6 – Last check before install: Pregledajte sve postavke i zatim kliknite Install Chamilogumb za pokretanje web instalacije.
Step 7 – Installation process execution: Kada je Chamilo uspješno instaliran, kliknite Go to your newly created portal.gumb za završetak čarobnjaka za web instalaciju.
Poduzmite sigurnosne mjere nakon instalacije
Osim toga, u nastavku su navedene dvije sigurnosne mjere nakon instalacije koje trebate poduzeti:
sudo chmod -R 0555 /var/www/html/chamilo/app/config
sudo rm -rf /var/www/html/chamilo/main/install