| Avant de commencer | |||||||||||||||||||||||||||||||||
|
Les avantages du Raspberry :
|
|||||||||||||||||||||||||||||||||
Prérequis |
|||||||||||||||||||||||||||||||||
|
Un Raspberry Pi 3B+ Une carte microSD (8Go mini, 64Go maxi, 16Go conseillé) La version de Raspberry Pi OS Lite x64 Debian 11 Bullseye qui est disponible ici ou sa dernière version depuis le site officiel Dans tous les cas l'archive est à décompresser avec 7zip |
|||||||||||||||||||||||||||||||||
Conventions |
|||||||||||||||||||||||||||||||||
| Considérons le réseau local configuré comme suit : | |||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
| Il vous appartient d'adapter ces paramètres à votre environnement. | |||||||||||||||||||||||||||||||||
Administration |
|||||||||||||||||||||||||||||||||
|
Nous administrerons le serveur à distance et j'utilise pour cela un poste client Microsoft doté du sous-système Windows pour Linux. Vous trouverez ici comment installer Debian sous Windows 10 ainsi que les deux excellents outils que sont Windows Terminal et WinSCP. (passez cette étape si vous préférez utiliser une autre méthode). A savoir : Sur un Raspberry, le nom d'utilisateur par défaut est pi et le mot de passe par défaut est raspberry Le mot de passe devra être orthographié rqspberry si le clavier est reconnu en tant que QWERTY |
|||||||||||||||||||||||||||||||||
| Premier démarrage du Raspberry | |||||||||||||||||||||||||||||||||
|
Formatez la carte microSD avec SD Card Formatter (facultatif) Flashez sur la carte microSD l’image iso raspios-xxxxxx-arm64-lite.img avec Win32DiskImager Insérez la carte microSD et connectez l’alimentation. |
|||||||||||||||||||||||||||||||||
|
Si vous n'obtenez pas d’affichage au démarrage du Raspberry (problème constaté avec certains convertisseurs HDMI/VGA) Insérez la carte microSD dans un lecteur USB et éditez le fichier /boot/config.txt Décommentez les lignes suivantes en appliquant ces paramètres. |
|||||||||||||||||||||||||||||||||
|
hdmi_force_hotplug=1 hdmi_group=2 hdmi_mode=81 hdmi_drive=2 |
|||||||||||||||||||||||||||||||||
| Configuration du Raspberry | |||||||||||||||||||||||||||||||||
|
Le système Raspberry Pi OS s'installe puis démarre sur un assistant. Configurez le clavier azerty | |||||||||||||||||||||||||||||||||
|
Generic 105-key PC (intl.) -> Other -> French -> The default for the keyboard layout -> No compose key |
|||||||||||||||||||||||||||||||||
|
L'assistant vous demandera ensuite de créer votre compte utilisateur. | |||||||||||||||||||||||||||||||||
|
Configurez les autres options régionales |
|||||||||||||||||||||||||||||||||
|
sudo raspi-config 5 Localisation Options L1 Locale -> fr_FR.UTF-8 UTF-8 -> fr_FR.UTF-8 L2 Timezone -> Europe -> Paris |
|||||||||||||||||||||||||||||||||
Exécutez une à une les commandes suivantes |
|||||||||||||||||||||||||||||||||
|
# changement du mot de passe root sudo passwd root # mappages IP / noms d’hôtes sudo nano /etc/hosts 127.0.0.1 raspi-server 192.168.1.251 raspi-server # nom d’hôte de la machine sudo nano /etc/hostname raspi-server # configuration TCP/IP sudo nano /etc/dhcpcd.conf interface eth0 static ip_address=192.168.1.251/24 static routers=192.168.1.1 static domain_name_servers=192.168.1.1 # application des nouveaux paramètres TCP/IP sudo /etc/init.d/networking restart # activation du protocole SSH sudo systemctl enable ssh # autoriser le compte root à se connecter en SSH sudo nano /etc/ssh/sshd_config PermitRootLogin yes # démarrage du service SSH sudo systemctl start ssh # redémarrage du système sudo reboot |
|||||||||||||||||||||||||||||||||
| Installation des services Web | |||||||||||||||||||||||||||||||||
|
Il est plus pratique de poursuivre les opérations depuis un poste client. Initiez une connexion SSH vers le Raspberry |
|||||||||||||||||||||||||||||||||
| ssh root@192.168.1.251 | |||||||||||||||||||||||||||||||||
Mettez à jour le cache des dépôts et installez Apache |
|||||||||||||||||||||||||||||||||
|
apt-get update apt-get install apache2 |
|||||||||||||||||||||||||||||||||
Recherchez et installez la dernière version de PHP |
|||||||||||||||||||||||||||||||||
|
apt-cache search php apt-get install php7.4 |
|||||||||||||||||||||||||||||||||
Installez MariaDB et phpMyAdmin |
|||||||||||||||||||||||||||||||||
|
apt-get install default-mysql-server apt-get install phpmyadmin |
|||||||||||||||||||||||||||||||||
|
Durant l’installation de phpMyAdmin : • Serveur Web à reconfigurer automatiquement : apache • Répondez oui pour dbconfig-common • Créez un mot de passe pour l’utilisateur phpmyadmin |
|||||||||||||||||||||||||||||||||
|
Le chemin de base HTTP est /var/www/html/ Testez le fonctionnement depuis un navigateur
|
|||||||||||||||||||||||||||||||||
| Administration du Raspberry | |||||||||||||||||||||||||||||||||
Commandes |
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Fichiers de configuration |
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Comptes d'utilisateurs MariaDB |
|||||||||||||||||||||||||||||||||
|
# entrer dans le shell MySQL sudo mysql -u root > MariaDB [(none)]> use mysql; > MariaDB [mysql]> # créer un compte utilisateur avec mot de passe > create user <utilisateur>@localhost identified by '1234567'; # changer ou créer le mot de passe d'un utilisateur > set password for <utilisateur>@localhost=password('7654321'); # donner tous les droits sur toutes les entités à un utilisateur (privilèges équivalents à root) > grant all privileges on *.* to <utilisateur>@localhost; # afficher les comptes utilisateurs, les hôtes et les plugins d’authentification > select user, host, plugin from mysql.user; +-------------+-----------+-----------------------+ | user | host | plugin | +-------------+-----------+-----------------------+ | root | localhost | unix_socket | | phpmyadmin | localhost | | +-------------+-----------+-----------------------+ | utilisateur | localhost | mysql_native_password | +-------------+-----------+-----------------------+ # quitter et redémarrer le service MySQL > exit sudo /etc/init.d/mysql restart |
|||||||||||||||||||||||||||||||||
|
Le plugin du compte root est défini sur unix_socket, cela signifie que ce compte est lié au compte root du système. Il est déconseillé d’apporter des modifications aux comptes mysql dont le plugin est défini sur unix_socket. Le mot de passe de l’utilisateur phpmyadmin se modifie depuis le fichier /etc/phpmyadmin/config-db.php |
|||||||||||||||||||||||||||||||||
Ajouter et retirer un média de stockage USB |
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Monter le media de stockage USB au reboot |
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Installer les drivers pour médias de stockage USB exFat ou NTFS |
|||||||||||||||||||||||||||||||||
|
# afficher le format des partitions sudo lsblk -o UUID,NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL,MODEL # installer les drivers pour des partitions exFAT sudo apt install exfat-fuse # installer les drivers pour des partitions NTFS sudo apt install ntfs-3g |
|||||||||||||||||||||||||||||||||