Différences entre versions de « SuperPi-Pi3-Raspbian-config »
(45 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{{SuperPi-NAV}} | {{SuperPi-NAV}} | ||
+ | == Raspbian == | ||
Pour les Raspberry-Pi 3 B+ j'ai sélectionné '''Raspbian Lite du 24 juin 2019''' pour limiter l'impact sur les ressources du système (voir [https://fr.wikipedia.org/wiki/Raspberry_Pi_OS historique des versions de Raspberry-Pi OS]). | Pour les Raspberry-Pi 3 B+ j'ai sélectionné '''Raspbian Lite du 24 juin 2019''' pour limiter l'impact sur les ressources du système (voir [https://fr.wikipedia.org/wiki/Raspberry_Pi_OS historique des versions de Raspberry-Pi OS]). | ||
Ligne 6 : | Ligne 7 : | ||
{{download-box|Téléchargez Raspbian Lite 24 juin 2019|http://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2019-06-24/}} | {{download-box|Téléchargez Raspbian Lite 24 juin 2019|http://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2019-06-24/}} | ||
+ | |||
+ | Cette version de Raspbian apporte: | ||
+ | * Debian 10 Buster | ||
+ | * Kernel 4.19 | ||
+ | * GCC 8.3 | ||
+ | * Pi 1 à Pi 4 | ||
+ | * Python 3.7.3 | ||
+ | * Python 2.7.16 | ||
== Raspi-Config == | == Raspi-Config == | ||
Ligne 13 : | Ligne 22 : | ||
Voici la configuration effectuée dans Raspi-Config | Voici la configuration effectuée dans Raspi-Config | ||
+ | |||
+ | <nowiki>Localisation options | ||
+ | Change timezone: Europe, Brussels | ||
+ | Change keyboard layout: Français/Azerty | ||
+ | |||
+ | Interfacing options | ||
+ | SSH: enabled | ||
+ | I2C: enabled | ||
+ | Serial: enabled | ||
+ | |||
+ | Advanced options: | ||
+ | Memory Split: 16 Mo (au lieu de 64) | ||
+ | |||
+ | Network options | ||
+ | Hostname: r1pi02 (Rack 1 Pi #02) | ||
+ | predictable network interface names: enabled | ||
+ | |||
+ | Boot options | ||
+ | Wait for network at boot: yes | ||
+ | Desktop / CLI: console | ||
+ | </nowiki> | ||
+ | |||
+ | == Utilisateur SuperPi == | ||
+ | |||
+ | Le reste de la configuration se base en partie sur les informations contenues dans l'article "[https://raspberrytips.com/security-tips-raspberry-pi/ 17 tips to secure your Raspberry-Pi]". | ||
+ | |||
+ | Changer le mot de passe de l'utilisateur '''pi''' | ||
+ | |||
+ | passwd | ||
+ | |||
+ | Créer un nouvel utilisateur et lui attribuer le privilège '''sudo''' | ||
+ | |||
+ | sudo adduser superpi | ||
+ | sudo adduser superpi sudo | ||
+ | |||
+ | Lier l'utilisateur '''superpi''' aux mêmes groupes que l'utilisateur Pi. | ||
+ | |||
+ | sudo usermod -a -G adm superpi | ||
+ | sudo usermod -a -G dialout superpi | ||
+ | sudo usermod -a -G cdrom superpi | ||
+ | sudo usermod -a -G audio superpi | ||
+ | sudo usermod -a -G video superpi | ||
+ | sudo usermod -a -G plugdev superpi | ||
+ | sudo usermod -a -G games superpi | ||
+ | sudo usermod -a -G users superpi | ||
+ | sudo usermod -a -G input superpi | ||
+ | sudo usermod -a -G netdev superpi | ||
+ | sudo usermod -a -G gpio superpi | ||
+ | sudo usermod -a -G i2c superpi | ||
+ | sudo usermod -a -G spi superpi | ||
+ | |||
+ | Démarrer le Raspberry-Pi et se connecter avec l'utilisateur '''superpi''' et mot de passe ad-hoc. | ||
+ | |||
+ | Bloquer le compte utilisateur '''pi''' | ||
+ | |||
+ | sudo passwd -l pi | ||
+ | |||
+ | {{ambox | text = il est possible de détruire complètement le compte utilisateur '''pi''' à l'aide de la commande <nowiki>sudo deluser -remove-home pi</nowiki> }} | ||
+ | |||
+ | == WiFi & Bluetooth == | ||
+ | |||
+ | Il faut aussi désactiver le support Bluetooth et WiFi car ces interfaces sont inutiles (la commande {{fname|rfkill}}) permet d'identifier les périphériques radio qui sont actifs sur le Raspberry-Pi. | ||
+ | |||
+ | Ouvrir le fichier '''/boot/config.txt'''. | ||
+ | |||
+ | sudo nano /boot/config.txt | ||
+ | |||
+ | Trouver la ligne suivante: | ||
+ | |||
+ | # Additional overlays and parameters are documented /boot/overlays/README | ||
+ | |||
+ | Et ajouter les entrées | ||
+ | |||
+ | dtoverlay=pi3-disable-wifi | ||
+ | dtoverlay=pi3-disable-bt | ||
+ | |||
+ | {{ambox|text=pour un Raspberry-Pi 3, il est spécifiquement nécessaire d'ajouter le prefixe "pi3-" dans les "dtoverlay=" }} | ||
+ | |||
+ | == Paquets supplémentaires == | ||
+ | Pour commencer, il faut autoriser la mise-à-jour des paquets alors même que la suite logiciel est maintenant placée en "oldoldstable". | ||
+ | |||
+ | sudo apt-get update --allow-releaseinfo-change | ||
+ | sudo apt-get upgrade | ||
+ | |||
+ | Après la mise-à-jour, Raspberry-Pi OS utilise SystemD pour la gestion des services. | ||
+ | |||
+ | Normalement, l'utilitaire {{fname|raspi-gpio}} est installé. Si la commande n'est pas disponible, alors l'utilitaire peut être installer à l'aide de | ||
+ | |||
+ | sudo apt install raspi-gpio | ||
+ | |||
+ | == IP Statique == | ||
+ | L'adresse IP statique dépend du numéro de rack et de la position du Pi dans le rack (voyez [[SuperPi-node-configuration|RPi configuration]]). | ||
+ | |||
+ | Le nom de l'interface peut être identifié à l'aide de la commande {{fname|ifconfig}}. | ||
+ | |||
+ | L'interface peut être '''eth0''' ou quelque-chose comme '''enxb827eb538de6''' (plus probable sous Jessie). | ||
+ | Il est préférable d'avoir un nom d'interface prédéterminé comme '''eth0''', ce qui est possible en modifiant la configuration de l'interface réseau à l'aide de {{fname|raspi-config}}. | ||
+ | |||
+ | sudo raspi-config | ||
+ | |||
+ | * Choisir 2 Options réseaux (''Network options'') | ||
+ | * Choisir N3 Noms d'interface réseau (''Network interface names'') | ||
+ | * Choisir NON (''No'') pour désactiver les noms d'interface déterministe (''predictable ethernet interface name'') | ||
+ | * Choisir OK pour redémarrer | ||
+ | |||
+ | le fichier de configuration peut être modifié à l'aide de {{fname|sudo nano /etc/dhcpcd.conf}} | ||
+ | |||
+ | # Example static IP configuration: | ||
+ | interface eth0 | ||
+ | static ip_address=192.168.10.22/24 | ||
+ | static routers=192.168.10.254 | ||
+ | static domain_name_servers=192.168.10.254 | ||
+ | |||
+ | |||
+ | Pour vérifier la configuration: | ||
+ | * {{fname|hostanme}} permet d'obtenir le nom d'hôte, | ||
+ | * {{fname|hostname -I}} retourne n'adresse IP. | ||
+ | |||
+ | {{tmbox | type = speedy | text = L'adresse IP statique n'est assignée à l'interface eth0 que si le Raspberry-Pi est sur un réseau Ethernet.}} | ||
+ | |||
+ | == Contrôle des LEDs == | ||
+ | Modifier le fichier '''/etc/rc.local''' et ajouter les lignes suivantes juste avant le {{fname|exit 0}} | ||
+ | |||
+ | # Turn on Green LED on GPIO21 | ||
+ | # | ||
+ | echo "21" > /sys/class/gpio/export | ||
+ | echo "out" > /sys/class/gpio/gpio21/direction | ||
+ | echo "1" > /sys/class/gpio/gpio21/value | ||
+ | |||
+ | La LED sera éteinte au moment de l'arrêt du système. | ||
+ | |||
+ | == Extinction sur Panic == | ||
+ | |||
+ | Si le signal panic est placé au niveau HAUT (3.3V) sur le rack alors: | ||
+ | 1. le GPIO 17 passe au niveau bas (panic est '''active low''' sur le GPIO 17). | ||
+ | 2. le Raspberry doit faire un shutdown. | ||
+ | |||
+ | Edit the file '''/boot/config.txt''' pour activer cette configuration. | ||
+ | |||
+ | Ajouter la ligne suivante dans la section '''[all]''' | ||
+ | |||
+ | dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,gpio_pull=up,debounce=1000 | ||
+ | |||
+ | {{SuperPi-TRAILER}} |
Version actuelle datée du 26 juillet 2024 à 23:44
Raspbian
Pour les Raspberry-Pi 3 B+ j'ai sélectionné Raspbian Lite du 24 juin 2019 pour limiter l'impact sur les ressources du système (voir historique des versions de Raspberry-Pi OS).
Les versions de Raspbian et Raspbian-Lite sont téléchargeables depuis http://downloads.raspberrypi.org et gravé sur une carte de 4 Go.
Cette version de Raspbian apporte:
- Debian 10 Buster
- Kernel 4.19
- GCC 8.3
- Pi 1 à Pi 4
- Python 3.7.3
- Python 2.7.16
Raspi-Config
Démarrer le Raspberry-Pi et se connecter avec l'utilisateur pi et mot de passe raspberry.
sudo raspi-config
Voici la configuration effectuée dans Raspi-Config
Localisation options Change timezone: Europe, Brussels Change keyboard layout: Français/Azerty Interfacing options SSH: enabled I2C: enabled Serial: enabled Advanced options: Memory Split: 16 Mo (au lieu de 64) Network options Hostname: r1pi02 (Rack 1 Pi #02) predictable network interface names: enabled Boot options Wait for network at boot: yes Desktop / CLI: console
Utilisateur SuperPi
Le reste de la configuration se base en partie sur les informations contenues dans l'article "17 tips to secure your Raspberry-Pi".
Changer le mot de passe de l'utilisateur pi
passwd
Créer un nouvel utilisateur et lui attribuer le privilège sudo
sudo adduser superpi sudo adduser superpi sudo
Lier l'utilisateur superpi aux mêmes groupes que l'utilisateur Pi.
sudo usermod -a -G adm superpi sudo usermod -a -G dialout superpi sudo usermod -a -G cdrom superpi sudo usermod -a -G audio superpi sudo usermod -a -G video superpi sudo usermod -a -G plugdev superpi sudo usermod -a -G games superpi sudo usermod -a -G users superpi sudo usermod -a -G input superpi sudo usermod -a -G netdev superpi sudo usermod -a -G gpio superpi sudo usermod -a -G i2c superpi sudo usermod -a -G spi superpi
Démarrer le Raspberry-Pi et se connecter avec l'utilisateur superpi et mot de passe ad-hoc.
Bloquer le compte utilisateur pi
sudo passwd -l pi
il est possible de détruire complètement le compte utilisateur pi à l'aide de la commande sudo deluser -remove-home pi |
WiFi & Bluetooth
Il faut aussi désactiver le support Bluetooth et WiFi car ces interfaces sont inutiles (la commande rfkill) permet d'identifier les périphériques radio qui sont actifs sur le Raspberry-Pi.
Ouvrir le fichier /boot/config.txt.
sudo nano /boot/config.txt
Trouver la ligne suivante:
# Additional overlays and parameters are documented /boot/overlays/README
Et ajouter les entrées
dtoverlay=pi3-disable-wifi dtoverlay=pi3-disable-bt
pour un Raspberry-Pi 3, il est spécifiquement nécessaire d'ajouter le prefixe "pi3-" dans les "dtoverlay=" |
Paquets supplémentaires
Pour commencer, il faut autoriser la mise-à-jour des paquets alors même que la suite logiciel est maintenant placée en "oldoldstable".
sudo apt-get update --allow-releaseinfo-change sudo apt-get upgrade
Après la mise-à-jour, Raspberry-Pi OS utilise SystemD pour la gestion des services.
Normalement, l'utilitaire raspi-gpio est installé. Si la commande n'est pas disponible, alors l'utilitaire peut être installer à l'aide de
sudo apt install raspi-gpio
IP Statique
L'adresse IP statique dépend du numéro de rack et de la position du Pi dans le rack (voyez RPi configuration).
Le nom de l'interface peut être identifié à l'aide de la commande ifconfig.
L'interface peut être eth0 ou quelque-chose comme enxb827eb538de6 (plus probable sous Jessie). Il est préférable d'avoir un nom d'interface prédéterminé comme eth0, ce qui est possible en modifiant la configuration de l'interface réseau à l'aide de raspi-config.
sudo raspi-config
- Choisir 2 Options réseaux (Network options)
- Choisir N3 Noms d'interface réseau (Network interface names)
- Choisir NON (No) pour désactiver les noms d'interface déterministe (predictable ethernet interface name)
- Choisir OK pour redémarrer
le fichier de configuration peut être modifié à l'aide de sudo nano /etc/dhcpcd.conf
# Example static IP configuration: interface eth0 static ip_address=192.168.10.22/24 static routers=192.168.10.254 static domain_name_servers=192.168.10.254
Pour vérifier la configuration:
- hostanme permet d'obtenir le nom d'hôte,
- hostname -I retourne n'adresse IP.
L'adresse IP statique n'est assignée à l'interface eth0 que si le Raspberry-Pi est sur un réseau Ethernet. |
Contrôle des LEDs
Modifier le fichier /etc/rc.local et ajouter les lignes suivantes juste avant le exit 0
# Turn on Green LED on GPIO21 # echo "21" > /sys/class/gpio/export echo "out" > /sys/class/gpio/gpio21/direction echo "1" > /sys/class/gpio/gpio21/value
La LED sera éteinte au moment de l'arrêt du système.
Extinction sur Panic
Si le signal panic est placé au niveau HAUT (3.3V) sur le rack alors: 1. le GPIO 17 passe au niveau bas (panic est active low sur le GPIO 17). 2. le Raspberry doit faire un shutdown.
Edit the file /boot/config.txt pour activer cette configuration.
Ajouter la ligne suivante dans la section [all]
dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,gpio_pull=up,debounce=1000