Nouvelle carte SD : utiliser Raspberry Pi Imager
C'est la méthode que recommande Raspberry Pi pour une configuration headless, c'est-à-dire sans écran ni clavier. Avant d'écrire la carte, réglez ceci dans les options de personnalisation :
- Hostname : le nom auquel vous vous connecterez, par exemple
serverdonneserver.local. - User : un nom d'utilisateur et un mot de passe. En configuration headless, c'est votre identifiant de connexion.
- Wi-Fi : le nom et le mot de passe du réseau, sauf si le Pi est en Ethernet. Sans cela, un Pi headless ne rejoint jamais le réseau.
- Remote Access : activez Enable SSH, puis choisissez l'authentification par mot de passe ou par clé publique.
Choisissez la clé publique si vous en avez déjà une : collez le contenu de votre fichier .pub, jamais la clé privée. Si vous n'en avez pas, générez-en une d'abord. Les noms de menus changent selon les versions d'Imager : dans Imager 1.8, les mêmes réglages sont dans Edit Settings, avec SSH dans l'onglet Services.
Raspberry Pi suggère Raspberry Pi OS Lite pour un appareil headless, puisqu'il n'a pas de bureau à faire tourner.
Pi déjà utilisable : raspi-config
sudo raspi-config
Choisissez Interface Options, puis SSH, répondez Yes, puis Finish. Pour le faire sans le menu, par exemple dans un script :
sudo raspi-config nonint do_ssh 0
Ici 0 veut dire activer et 1 désactiver. Sur le bureau, le même interrupteur se trouve dans Preferences, Control Centre, Interfaces. Sous Bookworm et les versions plus anciennes, l'outil s'appelle Raspberry Pi Configuration.
Carte déjà écrite, sans écran : le fichier ssh
Mettez la carte dans un autre ordinateur, ou utilisez un shell sur le Pi, et créez un fichier vide nommé ssh sur la partition de démarrage. Sur le Pi lui-même, cette partition est montée sur /boot/firmware :
sudo touch /boot/firmware/ssh
Sur un autre ordinateur, elle apparaît comme un petit disque : placez le fichier à sa racine, sans extension. Redémarrez ensuite le Pi.
Cela ne fait qu'activer le serveur. Cela ne crée pas d'utilisateur. Les images n'ont plus d'utilisateur pi par défaut depuis avril 2022 : une carte écrite sans les réglages d'Imager a donc encore besoin d'un compte avant que vous puissiez vous connecter. Le plus simple est de réécrire la carte avec Imager et d'y définir l'utilisateur.
Trouver le Pi et se connecter
Laissez-lui une minute ou deux au premier démarrage. Essayez ensuite le nom :
ping raspberrypi.local
ssh user@raspberrypi.local
Utilisez votre propre nom d'hôte et votre nom d'utilisateur si vous les avez définis. Le nom en .local demande mDNS sur l'ordinateur depuis lequel vous vous connectez. S'il ne se résout pas, utilisez l'adresse IP. Pour la trouver :
- Sur le Pi, si vous avez un écran, exécutez
hostname -I. - Consultez la liste des appareils connectés de votre routeur.
- Scannez votre propre réseau, en adaptant la plage au vôtre :
sudo nmap -sn 192.168.1.0/24
Si la connexion s'arrête sur Connection refused, le serveur n'est pas encore actif : le premier démarrage génère peut-être encore les clés d'hôte, ou le réglage n'a pas été pris en compte. Si le nom ne se résout pas, voir Could not resolve hostname.
Après la première connexion
Installez votre clé si vous avez commencé avec un mot de passe, puis désactivez la connexion par mot de passe, surtout si le Pi sera joignable depuis l'extérieur de votre réseau domestique.
Quand les cartes se multiplient, voyez comment gérer de nombreux serveurs SSH avec des groupes et des tags.
Questions
Quels sont le nom d'utilisateur et le mot de passe par défaut d'un Raspberry Pi ?
Il n'y a pas de mot de passe par défaut sur lequel compter. Depuis avril 2022, les images de Raspberry Pi OS n'ont plus d'utilisateur pi par défaut : vous créez l'utilisateur dans Imager ou au premier démarrage.
Sources
- Accès à distance, documentation Raspberry Pi
- Premiers pas, documentation Raspberry Pi
- Code source de raspi-config
- Mise à jour de Raspberry Pi OS d'avril 2022 : l'utilisateur par défaut