Requisits previs
Pas 1: actualitzeu el sistema
Pas 2: instal·leu Apache 2.4.x
Pas 3: instal·leu MariaDB 10.2.x
Pas 4: instal·leu PHP 7.1 i les extensions PHP 7.1 necessàries
Pas 5: instal·leu Moodle 3.3.2+
Moodle és una plataforma d'aprenentatge de codi obert o un sistema de gestió de cursos (CMS), un paquet de programari gratuït de codi obert dissenyat per ajudar els educadors a crear cursos en línia efectius.
Aquest tutorial tractarà el procés d'instal·lació de la darrera versió estable de Moodle, Moodle 3.3.2+, en un servidor CentOS 7.
Requisits previs
- Una instància de servidor CentOS 7 x64 amb almenys 2 GB de RAM (es recomana 4 GB o més).
- Un usuari de sudo .
- El repositori EPEL yum.
Pas 1: actualitzeu el sistema
Inicieu sessió al vostre servidor mitjançant SSH utilitzant l'usuari sudo per instal·lar epel, actualitzar el sistema i reiniciar per aplicar les actualitzacions.
sudo yum install epel-release -y
sudo yum update -y && sudo shutdown -r now
Pas 2: instal·leu Apache 2.4.x
sudo yum install httpd -y
En producció, hauríeu d'eliminar la pàgina de benvinguda d'Apache preestablerta:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Eviteu que Apache mostri fitxers de directoris web als visitants:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Inicieu el servei Apache i activeu-lo perquè s'iniciï automàticament a l'arrencada
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Pas 3: instal·leu MariaDB 10.2.x
Moodle emmagatzema totes les seves dades en una base de dades MySQL. MariaDB és un reemplaçament de MySQL i instal·larem la darrera versió estable, MariaDB 10.2.x.
3.1 Instal·leu i inicieu MariaDB 10.2.x
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
3.2 Assegureu la instal·lació de MariaDB
sudo /usr/bin/mysql_secure_installation
Respon a les preguntes de la següent manera i assegureu-vos d'utilitzar una contrasenya d'arrel de MariaDB forta en lloc de la mostra que es mostra a continuació:
- Introduïu la contrasenya actual per a root (introduïu-ne cap): només heu de prémer el
Enterbotó
- Definiu la contrasenya d'arrel? [S/n]:
Y
- Nova contrasenya:
your-root-password
- Torneu a introduir la contrasenya nova:
your-root-password
- Vols suprimir usuaris anònims? [S/n]:
Y
- No permeteu l'inici de sessió d'arrel de forma remota? [S/n]:
Y
- Eliminar la base de dades de prova i accedir-hi? [S/n]:
Y
- Torneu a carregar les taules de privilegis ara? [S/n]:
Y
3.3 Crear una base de dades MariaDB per a Moodle
Inicieu sessió al shell de MySQL com a root:
mysql -u root -p
Escriviu la contrasenya arrel de MariaDB que heu establert anteriorment quan se us demani.
A l'intèrpret d'ordres MySQL, creeu una base de dades moodle, un usuari de moodleuserla base de dades , la contrasenya de l'usuari de la base de dades de la yourpasswordmanera següent.
Nota: per motius de seguretat, hauríeu de substituir la contrasenya de mostra yourpasswordesmentada anteriorment per les vostres pròpies.
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Pas 4: instal·leu PHP 7.1 i les extensions PHP 7.1 necessàries
PHP també és requerit per Moodle. Per tal d'aconseguir un millor rendiment, podeu instal·lar PHP 7.1 i diverses extensions de PHP 7.1 de la següent manera:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-mbstring php71w-xmlrpc php71w-soap php71w-gd php71w-xml php71w-intl php71w-mysqlnd php71w-cli php71w-mcrypt php71w-ldap -y
Pas 5: instal·leu Moodle 3.3.2+
5.1 Preparar els fitxers del programa Moodle
En el moment d'escriure, l'última versió estable de Moodle és Moodle 3.3.2+. Baixeu i descomprimiu l' Moodle 3.3.2+arxiu de la següent manera:
Nota: sempre podeu obtenir l'URL de descàrrega de la darrera versió estable de Moodle des de la seva pàgina oficial de descàrrega .
cd
yum install -y wget
wget https://download.moodle.org/download.php/direct/stable33/moodle-latest-33.tgz
sudo tar -zxvf moodle-latest-33.tgz -C /var/www/html
sudo chown -R root:root /var/www/html/moodle
5.2 Configurar un directori de dades dedicat per a Moodle
Per motius de seguretat, aquest directori de dades hauria d'estar fora del directori arrel web:
sudo mkdir /var/moodledata
sudo chown -R apache:apache /var/moodledata
sudo chmod -R 755 /var/moodledata
5.3 Configurar un host virtual per a Moodle
Nota: Recordeu reemplaçar els valors de ServerAdmin, ServerName, ServerAlias, Errorlog, i CustomLogamb els seus propis.
cat <<EOF | sudo tee -a /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/moodle/
ServerName moodle.example.com
ServerAlias www.moodle.example.com
<Directory /var/www/html/moodle/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/moodle.example.com-error_log
CustomLog /var/log/httpd/moodle.example.com-access_log common
</VirtualHost>
EOF
5.4 Configurar SELinux
A la instància del servidor Vultr CentOS 7 que estic fent servir, SELinux està desactivat per defecte. És probablement una política de seguretat menys segura però més fàcil. Si us trobeu en les mateixes condicions i voleu mantenir-lo així, només feu cas de les instruccions d'aquesta secció i aneu a la secció següent.
Si utilitzeu una instància de servidor amb SELinux habilitat en el mode d'aplicació, heu de configurar SELinux de la següent manera.
Mostra l'estat de SELinux:
sestatus
En una nova instància del servidor CentOS 7 Minimal x64 1708, la sortida és:
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 28
Instal·leu les eines de gestió de SELinux necessàries:
sudo yum install -y policycoreutils policycoreutils-python
Configureu els contextos SELinux dels fitxers Moodle com a continuació:
sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/moodle(/.*)?'
sudo restorecon -Rv '/var/www/html/moodle/'
sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/moodledata(/.*)?'
sudo restorecon -Rv '/var/moodledata/'
5.5 Instal·leu Moodle des de la CLI
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php
Quan se us demani, proporcioneu la informació necessària segons la configuració específica de la vostra configuració. La informació resumida es mostra a continuació:
== Choose a language ==
en - English (en)
? - Available language packs
type value, press Enter to use default value (en)
: en
-------------------------------------------------------------------------------
== Data directories permission ==
type value, press Enter to use default value (2777)
: 2777
-------------------------------------------------------------------------------
== Web address ==
type value
: http://203.0.113.1
-------------------------------------------------------------------------------
== Data directory ==
type value, press Enter to use default value (/var/www/html/moodledata)
: /var/moodledata
-------------------------------------------------------------------------------
== Choose database driver ==
mysqli
mariadb
type value, press Enter to use default value (mysqli)
: mariadb
-------------------------------------------------------------------------------
== Database host ==
type value, press Enter to use default value (localhost)
: localhost
-------------------------------------------------------------------------------
== Database name ==
type value, press Enter to use default value (moodle)
: moodle
-------------------------------------------------------------------------------
== Tables prefix ==
type value, press Enter to use default value (mdl_)
: mdl_
-------------------------------------------------------------------------------
== Database port ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Unix socket ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Database user ==
type value, press Enter to use default value (root)
: moodleuser
-------------------------------------------------------------------------------
== Database password ==
type value
: yourpassword
-------------------------------------------------------------------------------
== Full site name ==
type value
: My Moodle Site
-------------------------------------------------------------------------------
== Short name for site (eg single word) ==
type value
: moodle
-------------------------------------------------------------------------------
== Admin account username ==
type value, press Enter to use default value (admin)
: admin
-------------------------------------------------------------------------------
== New admin user password ==
type value
: your-admin-password
-------------------------------------------------------------------------------
== New admin user email address ==
type value, press Enter to use default value ()
: admin@example.com
-------------------------------------------------------------------------------
== Upgrade key (leave empty to not set it) ==
type value
:
-------------------------------------------------------------------------------
Have you read these conditions and understood them?
type y (means yes) or n (means no)
: y
5.6 Modificar els permisos a /var/www/html/config.php
Tenint Moodle instal·lat correctament, heu de permetre que l' apacheusuari llegeixi les configuracions de Moodle modificant els permisos /var/www/html/config.phpcom a continuació:
sudo chmod o+r /var/www/html/moodle/config.php
5.7 Configurar un treball cron
A més, heu de configurar un treball cron per tal que Moodle funcioni correctament:
sudo crontab -u apache -e
Omple el fitxer cron amb:
* * * * * /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null
Desa i surt:
:wq!
5.8 Reinicieu Apache
Reinicieu Apache per aplicar totes les vostres modificacions:
sudo systemctl restart httpd.service
5.9 Modificar les regles del tallafoc per permetre l'accés HTTP
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Finalment, apunteu el vostre navegador web http://203.0.113.1per visitar el lloc web de Moodle. Utilitzeu el nom d'usuari i la contrasenya de l'administrador que heu configurat anteriorment per iniciar sessió.
Això conclou el nostre tutorial. Gràcies per llegir.