GNU/Linux >> Linux Esercitazione >  >> Debian

Installa la piattaforma eLearning Moodle su Debian 9

Moodle è un sistema di gestione dei corsi open source gratuito flessibile e potente e una piattaforma di e-learning scritto in PHP e spesso distribuito in Linux su server Web Apache/Nginx con sistema di gestione di database PHP e MySQL/MariaDB, noto anche come stack LAMP o LEMP.

Questo tutorial spiegherà come installare e configurare l'ultima versione di Moodle nella versione Debian 9 per creare una piattaforma di e-learning presso la tua sede.

La piattaforma Moodle offre un'interfaccia web intuitiva che può essere utilizzata da educatori e formatori per archiviare i dati dei corsi e per tenere traccia di studenti, voti e corsi online. La maggior parte delle principali università del mondo sta implementando la piattaforma di e-learning Moodle per facilitare le attività educative per i propri studenti e insegnanti.

Requisiti

Per installare e distribuire con successo Moodle, il tuo server deve soddisfare i requisiti seguenti.

  • Un server Debian 9 installato con requisiti software minimi su una macchina server bare-metal o su un server privato virtuale
  • accesso diretto all'account root tramite console o SSH o accesso remoto o diretto a un account con privilegi di root acquisiti tramite l'utilità sudo
  • Una scheda di interfaccia di rete configurata con un indirizzo IP statico
  • Per utilizzare la registrazione e-mail, le notifiche o un altro tipo di funzionalità di Moodle, è necessario configurare correttamente un server di posta presso la propria sede con accesso ai servizi IMAP, POP3 e SMTP.
  • Un nome di dominio privato o pubblico, a seconda della distribuzione, con i record DNS appropriati configurati per i servizi Web. Se non possiedi un nome a dominio valido o registrato puoi eseguire l'installazione e accedere al sito tramite l'indirizzo IP del tuo server

Installa Apache, PHP e MySQL

Nel primo passaggio, prima di iniziare a installare e configurare la piattaforma Moodle, accedi al tuo server con un account root o un account con poteri di root e inizia ad aggiornare i repository di sistema Debian e i pacchetti software eseguendo i comandi seguenti.

apt update
apt upgrade

Quindi, dopo aver aggiornato il software di sistema, configura il nome per il tuo server Debian eseguendo i seguenti comandi. Assicurati di sostituire la variabile hostname in modo che corrisponda alle tue impostazioni, come illustrato nell'esempio seguente.

hostnamectl set-hostname www.myblog.com

Quindi, puoi verificare il nome host della tua macchina e il file hosts eseguendo i comandi seguenti.

hostnamectl
cat /etc/hostname
hostname –s
hostname –f

Per applicare gli aggiornamenti del kernel e applicare le modifiche al nome host, emettere il comando seguente per riavviare la macchina.

systemctl reboot

Uno dei componenti LAMP più importanti per l'implementazione della piattaforma di apprendimento Moodle è un database RDBMS utilizzato dall'applicazione Web per archiviare diverse configurazioni, come utenti, sessioni, contatti e altri dati. In questo tutorial, configureremo Moodle CMS con il back-end del database MariaDB con accesso in loopback al database MySQL. Ciò significa che è possibile accedere al database solo tramite localhost o indirizzo 127.0.0.1. Non è possibile effettuare connessioni esterne al database MySQL. Per installare il server e il client del database MariaDB nel server Debian 9, emettere il comando seguente.

apt install mariadb-server mariadb-client

Al termine dell'installazione del database MariaDB nel server Debian, emettere netstat comando come mostrato nell'esempio seguente per verificare se il servizio è attivo e in esecuzione ed è in attesa di connessioni su localhost, porta 3306.

netstat –tlpn | grep mysql

Nel caso netstat l'utilità di rete non è installata per impostazione predefinita nel tuo sistema Debian, esegui il comando seguente per installarla.

apt install net-tools

L'account root MySQL non è protetto correttamente in Debian 9 al momento dell'installazione. È possibile accedere al database senza una password di root. Per proteggere l'account root, accedi alla console del server MySQL ed esegui in sicurezza i seguenti comandi.

mysql -h localhost
Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 2

Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1


Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.


Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A


Database changed
MariaDB [mysql]> update user set plugin='' where user='root';
Query OK, 1 row affected (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> exit
Bye

Dopo aver applicato correttamente l'account root del database, esegui mysql_secure_installation script, fornito dai repository stretch Debian durante l'installazione del database, al fine di proteggere ulteriormente il database MySQL. Lo script ti porrà una serie di domande progettate per proteggere il database MariaDB:se vuoi cambiare la password di root MySQL, rimuovere utenti anonimi, disabilitare gli accessi root remoti ed eliminare il database di test. Esegui lo script eseguendo il comando seguente e assicurati di digitare a tutte le domande, come mostrato nell'estratto di output dello script seguente:

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

you haven't set the root password yet, the password will be blank,

so you should just press enter here.


Enter current password for root (enter for none):

OK, successfully used password, moving on...


Setting the root password ensures that nobody can log into the MariaDB

root user without the proper authorisation.


You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] y

New password:

Re-enter new password:

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

... 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!

Infine, dopo aver protetto il demone MySQL, accedi alla console del database e non fornire alcuna password per l'account root. L'accesso al database dovrebbe essere negato se non viene fornita alcuna password per l'account root, come illustrato nell'estratto del comando seguente:

mysql -h localhost -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

L'accesso alla console del database MySQL dovrebbe essere concesso se fornisci la root password, come mostrato nell'esempio di comando:

mysql -h localhost -u root -p
Enter password:

Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 15

Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> exit

Bye

Moodle CMS è un'applicazione basata sul Web scritta principalmente nel linguaggio di programmazione lato server PHP. Finora abbiamo installato solo il componente del database MySQL di LAMP. Per eseguire gli script di file PHP dell'applicazione, è necessario che nel sistema siano installati e operativi un server Web, come il server HTTP Apache, e un gateway di elaborazione PHP. Per installare il server Web Apache e l'interprete PHP insieme a tutti i moduli PHP necessari per il corretto funzionamento dell'applicazione, immetti il ​​seguente comando nella console del tuo server.

apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-mysql php7.0-gd php7.0-opcache php7.0-json php7.0-mbstring php7.0-xml php7.0-ldap php7.0-cli php7.0-curl php7.0-ldap php7.0-zip php7.0-bcmath php-imagick php7.0-xmlrpc php7.0-soap php7.0-intl

Emetti il ​​seguente comando per verificare se tutti i moduli PHP installati sono abilitati nel tuo sistema

php7.0 –m

Dopo aver installato Apache e PHP, verifica se il server web è attivo e funzionante e in attesa di connessioni di rete sulla porta 80 eseguendo il comando seguente con privilegi di root.

netstat –tlpn

Dall'output del comando netstat possiamo vedere che il server Web Apache è in attesa di connessioni di rete in entrata sulla porta 80. Per la stessa attività, puoi anche utilizzare ss comando, che viene installato automaticamente, per impostazione predefinita, in Debian 9.

ss- tulpn

Nel caso in cui l'applicazione firewall UFW sia installata e abilitata nel server Debian, dovresti aggiungere una nuova regola per consentire al traffico HTTP di passare attraverso il firewall eseguendo il comando seguente.

ufw allow WWW

o

ufw allow 80/tcp

Nel caso iptables le regole grezze vengono utilizzate dall'amministratore di sistema per gestire le regole del firewall nel server Debian, aggiungere le seguenti regole per consentire il traffico in entrata sulla porta 80 sul firewall in modo che i visitatori possano navigare nell'applicazione online.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
netfilter-persistent save
systemctl restart netfilter-persistent
systemctl status netfilter-persistent
systemctl enable netfilter-persistent.service

Nel caso tu stia gestendo in remoto il tuo server Debian tramite SSH, assicurati di aggiungere la regola seguente per consentire le connessioni SSH in entrata alla tua macchina.

iptables -I INPUT -p tcp --destination-port 22 -j ACCEPT
netfilter-persistent save
systemctl restart netfilter-persistent

Potrebbe anche essere necessario abilitare e attivare i seguenti moduli Apache richiesti dall'applicazione Moodle per funzionare correttamente, eseguendo i comandi seguenti.

a2enmod rewrite
systemctl restart apache2

Infine, verifica se la pagina Web predefinita del server Web Apache può essere visualizzata nel browser del tuo client visitando l'indirizzo IP della tua macchina Debian o il tuo nome di dominio o FQDN del server tramite il protocollo HTTP, come mostrato nell'immagine seguente. Se non conosci l'indirizzo IP della tua macchina, esegui ifconfig o ip a comando per rivelare l'indirizzo IP del tuo server.

http://tuo_dominio.tld

Nel passaggio successivo, modifica il file di configurazione predefinito di PHP per assicurarti che le seguenti variabili PHP siano abilitate e il fuso orario PHP l'impostazione è configurata correttamente e corrisponde alla posizione geografica del sistema. Apri /etc/php/7.0/apache2/php.ini file per la modifica e assicurarsi che le seguenti righe siano impostate come segue. Inoltre, inizialmente, fai un backup del file di configurazione PHP.

cp /etc/php/7.0/apache2/php.ini{,.backup}
nano /etc/php/7.0/apache2/php.ini

Cerca, modifica e cambia le seguenti variabili in php.ini file di configurazione:

file_uploads = On
memory_limit = 128M
post_max_size = 80M
upload_max_filesize = 80M
default_charset = UTF-8
date.timezone = Europe/London

Aumenta upload_max_file_size in quanto adatta a supportare file allegati di grandi dimensioni, se questo è il caso e sostituire date.timezone variabile in base al tuo orario geografico consultando l'elenco dei fusi orari fornito da PHP docs al seguente link http://php.net/manual/en/timezones.php

Se desideri aumentare la velocità di caricamento delle pagine del tuo sito Web tramite il plug-in OPCache disponibile per PHP7, aggiungi le seguenti impostazioni OPCache nella parte inferiore del file di configurazione dell'interprete PHP, sotto [opcache ] dichiarazione, come di seguito dettagliato:

nano /etc/php/7.0/apache2/conf.d/10-opcache.ini
[opcache]
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

Chiudi php.ini file di configurazione e verifica se il file di configurazione PHP di verifica di fine per verificare se le variabili OPCache sono state aggiunte correttamente emettendo il comando seguente.

grep opcache /etc/php/7.0/apache2/conf.d/10-opcache.ini

Dopo aver apportato tutte le modifiche spiegate sopra, riavvia il demone Apache per applicare le nuove modifiche eseguendo il comando seguente.

systemctl restart apache2

Per accedere all'interfaccia web di Moodle tramite il protocollo HTTPS che proteggerà il traffico dei tuoi client, immetti il ​​seguente comando per abilitare il modulo SSL del server web Apache e il file di configurazione del sito SSL.

a2enmod ssl
a2ensite default-ssl.conf

Quindi, apri il file di configurazione del sito SSL predefinito di Apache con un editor di testo e abilita le regole di riscrittura degli URL aggiungendo le seguenti righe di codice dopo DocumentRoot direttiva, come mostrato nell'esempio seguente:

nano /etc/apache2/sites-enabled/default-ssl.conf

Estratto del file di configurazione del sito SSL:

<Directory /var/www/html>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>

Inoltre, apporta la seguente modifica alla riga VirtualHost in modo che assomigli a quella mostrata nell'estratto seguente:

<VirtualHost *:443>

Chiudi il file Apache SSL e apri /etc/apache2/sites-enabled/000-default.conf file per la modifica e aggiungere le stesse regole di riscrittura URL del file di configurazione SSL. Inserisci le righe di codice dopo DocumentRoot dichiarazione come mostrato nell'esempio seguente.

<Directory /var/www/html>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>

Infine, riavvia il demone Apache per applicare tutte le regole configurate finora e visita il tuo dominio tramite protocollo HTTP. Poiché stai utilizzando le coppie di certificati autofirmati automaticamente emessi da Apache al momento dell'installazione, il certificato non è considerato attendibile dal browser, nel browser dovrebbe essere visualizzato un avviso di errore.

systemctl restart apache2

https://tuodominio.tld

Accetta l'avviso per accettare il certificato non attendibile e continuare a essere reindirizzato alla pagina Web predefinita di Apache.

Nel caso in cui l'applicazione firewall UFW blocchi le connessioni di rete in entrata alla porta HTTPS, dovresti aggiungere una nuova regola per consentire al traffico HTTPS di passare attraverso il firewall eseguendo il comando seguente.

ufw allow ‘WWW Full’

o

ufw allow 443/tcp

Se iptables è l'applicazione firewall predefinita installata per proteggere il tuo sistema Debian a livello di rete, aggiungi la seguente regola per consentire il traffico in entrata della porta 443 nel firewall in modo che i visitatori possano esplorare il tuo nome di dominio.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
netfilter-persistent save
systemctl restart netfilter-persistent
systemctl status netfilter-persistent

Infine, per visualizzare tutte le variabili PHP del server, creare un file di informazioni PHP eseguendo il comando seguente e verificare se il fuso orario PHP è stato configurato correttamente visitando il file di script di informazioni PHP da un browser al seguente URL, come illustrato di seguito Immagine. Scorri verso il basso fino alla data impostazione per controllare la configurazione del fuso orario PHP.

echo '<?php phpinfo(); ?>'| tee /var/www/html/info.php

https://dominio.tld/info.php

Quindi, prima di creare il database richiesto da Moodle per memorizzare le informazioni, dobbiamo prima apportare alcune modifiche al server MariaDB e impostare il set di caratteri appropriato. Apri il file di configurazione del client MariaDB e aggiungi la seguente riga dopo [client] direttiva, come illustrato nell'esempio seguente:

nano /etc/mysql/mariadb.conf.d/50-client.cnf
[client]
# Default is Latin1, if you need UTF-8 set this (also in server section)
default-character-set = utf8mb4

Quindi, apri il file mysql.cnf e aggiungi la stessa riga di cui sopra dopo l'istruzione [mysql]:

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

estratto del file mysql.cnf:

default-character-set = utf8mb4

Apri per modificare il file di configurazione del server MariaDB e aggiungi le righe seguenti dopo [mysqld] dichiarazione per garantire che il motore MySQL innodb utilizza Barracuda formato file e set di caratteri utf8mb4.

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Estratto del file 50-server.cnf:

[mysqld]
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake

Per applicare al database tutte le modifiche apportate finora, riavvia il demone MySQL e verifica se il servizio è in esecuzione eseguendo i seguenti comandi.

systemctl restart mysql
systemctl status mysql

Infine, accedere alla console del database di MariaDB e creare un database per l'applicazione con un utente e una password che verranno utilizzati per gestire il database dell'applicazione, eseguendo i seguenti comandi. Assicurati di sostituire il nome del database, l'utente e la password di conseguenza.

mysql –u root -p
Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 2

Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1


Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.


Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE moodle_db;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on moodle_db.* to 'moodle_user'@'localhost' identified by 'password1234';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye

Installa Moodle

Dopo aver soddisfatto tutti i requisiti di sistema per installare l'applicazione Moodle CMS, visita la pagina di download ufficiale di Moodle all'indirizzo https://download.moodle.org/releases/latest/ e prendi l'ultimo archivio compresso zip nel tuo sistema eseguendo il comando seguente.

wget https://download.moodle.org/download.php/direct/stable34/moodle-latest-34.zip

Al termine del download dell'archivio zip, estrai il file di archivio zip Moodle nella directory di lavoro corrente ed elenca i file estratti eseguendo i comandi seguenti. Inoltre, rimuovi il file index.html predefinito installato dal server web Apache nel percorso webroot ed elimina anche il file info.php creato in precedenza.

unzip moodle-latest-34.zip
ls
rm /var/www/html/index.html
rm /var/www/html/info.php

Quindi, copia tutto il contenuto della directory estratta di Moodle nel percorso radice del documento del tuo server web eseguendo il comando seguente. Inoltre, assicurati di copiare i seguenti file di punti nascosti nel percorso webroot.

cp -rf moodle/* /var/www/html/
cp -rf moodle/.eslint* /var/www/html/
cp -rf moodle/.gherkin-lintrc /var/www/html/
cp -rf moodle/.jshintrc /var/www/html/
cp -rf moodle/.s* /var/www/html/
cp -rf moodle/.travis.yml /var/www/html/

Quindi, crea la directory dei dati per Moodle di un livello superiore alla radice del documento del tuo server ed esegui i comandi seguenti per concedere all'utente di runtime Apache i permessi di scrittura completi per il percorso della radice web e la directory dei dati di moodle. Usa ls comando per elencare le autorizzazioni per i file installati dell'applicazione, che si trovano nella directory /var/www/html/.

mkdir /var/www/moodledata
chown -R www-data:www-data /var/www/moodledata/
chown -R www-data:www-data /var/www/html/
ls -al /var/www/html/

Ora iniziamo a installare Moodle CMS tramite il programma di installazione dell'interfaccia web. Apri un browser e accedi all'indirizzo IP del tuo server o al nome di dominio tramite il protocollo HTTPS. Nella prima schermata di installazione, scegli la lingua di installazione e premi sul pulsante Avanti per continuare.

Nella schermata successiva, il programma di installazione ti chiederà di confermare l'indirizzo del server web, il percorso della directory moodle e il percorso della directory dei dati moodle. Lascia le prime due variabili di percorso come predefinite e aggiungi /var/www/moodledata per il percorso della directory Moodle Data, come illustrato nell'immagine sottostante. Premi il pulsante Avanti per continuare.

Nella schermata successiva, seleziona MariaDB (native/madiadb) come driver del database e premi il pulsante Avanti per continuare il processo di installazione.

Successivamente, aggiungi le impostazioni del database, come l'host del database, il nome, l'utente e la password. Usa il nome del database e le credenziali configurate in precedenza per il database Moodle.

L'host del database deve essere impostato su localhost. Aggiungi il tuo prefisso della tabella del database, usa 3306 come porta del database e premi il pulsante Avanti per completare questo passaggio e continuare il processo di installazione.

Nella schermata successiva, leggi i termini e le condizioni della licenza di Moodle e premi sul pulsante Continua per confermare i termini della licenza.

Successivamente, lo script di installazione di Moodle eseguirà una serie di controlli del server per determinare se tutti i requisiti sono soddisfatti per continuare il processo di installazione. Controlla se tutti i database e le estensioni PHP sono impostati su OK, scorri verso il basso fino alla fine della pagina e premi il pulsante Continua per andare avanti con il processo di installazione.

Quindi, attendi che il programma di installazione termini l'installazione di una serie di moduli e premi di nuovo il pulsante Continua per passare al passaggio successivo.

Nel passaggio successivo, aggiungi un account amministratore Moodle, scegli una password complessa per questo account e inserisci tutte le informazioni sull'account, come nome, cognome, e-mail, città, paese, fuso orario e descrizione. Al termine, premi sul pulsante Aggiorna profilo per salvare le informazioni sull'account amministratore.

Quindi, imposta il nome completo del sito, aggiungi un nome breve del sito e un riepilogo in prima pagina, scorri verso il basso e premi il pulsante Salva modifiche per completare il processo di installazione.

Dopo aver completato il processo di installazione, verrai reindirizzato alla dashboard di amministrazione di Moodle. Qui puoi utilizzare il modulo di registrazione per registrare l'applicazione con il portale Moodle.net.

Per accedere alla pagina del frontend di Moodle, apri un browser e accedi all'indirizzo IP del tuo server o al nome di dominio tramite il protocollo HTTPS.

Infine, torna alla console del server Debian e crea un .htaccess file che si troverà nel percorso principale del documento del tuo sito Web, eseguendo il comando seguente.

nano /var/www/html/.htaccess

Nel file .htaccess, aggiungi le righe seguenti in modo da poter manipolare le impostazioni del server PHP nativo in modo che corrispondano alle risorse e alle configurazioni del tuo server.

.htaccess estratto del file:

# Modifica le impostazioni PHP

php_value register_globals 1
php_value upload_max_filesize 100M
php_value post_max_size 100M
Options -Indexes

Installa cron

Per eseguire periodicamente lo script di manutenzione di Moodle che invia e-mail, ripulisce il database, aggiorna i feed o altre attività, aggiungi il lavoro cron di seguito da eseguire ogni 10 minuti, eseguendo il comando seguente.

crontab -u www-data -e

Aggiungi la seguente riga e salva il cronjob.

*/10 * * * * /usr/bin/php7.0 /var/www/html/admin/cli/cron.php  >/dev/null

Congratulazioni! Hai installato e configurato con successo Moodle CMS nel server Debian 9. La pagina della documentazione di Moodle è reperibile al seguente indirizzo:https://docs.moodle.org/23/en/Main_page


Debian
  1. Come installare Redis Server su Debian 11

  2. Come installare MySQL 8.0 / 5.7 su Debian 11 / Debian 10

  3. Come installare ProFTPD su Debian 8

  4. Come installare MySQL Server su Debian 9

  5. Come installare Odoo 12 su Debian 9

Installa un server Redis su Debian 11

Come installare I2P su Debian Server:

Installa Firefox Sync Server su Debian 11

Come installare VNC su Debian 10

Come installare Moodle su Debian 10

Come installare il server VNC su Debian 11