Auto-hébergement : transformer un vieux PC en serveur maison sécurisé

Tech

Transformer un vieux PC en serveur maison : le matériel à vérifier

Un ordinateur oublié peut devenir un serveur maison utile pour stocker des fichiers, héberger Nextcloud ou centraliser des services. Avant de l’allumer en continu, vérifiez son état, sa consommation, son refroidissement et la fiabilité de son disque.

Pour un usage courant, un système 64 bits et plusieurs gigaoctets de mémoire offrent une base plus confortable qu’une configuration minimale. Nextcloud recommande un environnement 64 bits et indique qu’un processus PHP peut demander environ 512 Mo de mémoire vive.

Un SSD améliore la réactivité du système, tandis qu’un disque mécanique en bon état peut servir au stockage. Sur une machine compacte, vérifiez les baies disponibles : certains mini-PC reconditionnés disposent de peu d’espace et ne conviennent pas à un assemblage multi-disques.

Avant l’installation, contrôlez les composants et les besoins du projet :

  • Processeur, système et architecture compatibles avec un environnement 64 bits
  • Disque vérifié et sauvegarde des fichiers personnels avant tout effacement
  • Connexion Ethernet stable et alimentation adaptée au fonctionnement prolongé
  • Capacité de stockage suffisante pour les fichiers et leur copie de secours

Un ordinateur ancien peut toutefois cacher un disque fatigué ou un ventilateur bruyant. Un contrôle SMART et quelques minutes d’observation permettent de repérer des défauts avant de lui confier des données.

Lire plus  La 5G au service des villes intelligentes
Élément Vérification utile Choix conseillé
Architecture Compatibilité du processeur et du système Environnement 64 bits
Mémoire vive Marge pour Nextcloud et les services ajoutés Plusieurs Go si possible
Stockage État du disque et espace disponible SSD pour le système
Format du boîtier Baies et connectique réellement présentes Adaptées aux usages prévus

Installer Linux et préparer le serveur domestique

Une fois le matériel vérifié, l’installation d’un système conçu pour les serveurs réduit les tâches inutiles en arrière-plan. Ubuntu Server LTS constitue ici une option adaptée ; les versions 24.04 LTS ou 26.04 LTS sont mentionnées dans les consignes prévues pour ce déploiement.

Préparez une clé USB d’installation en sachant que son contenu sera effacé. Vérifiez l’image téléchargée avec son empreinte SHA256, puis identifiez soigneusement le périphérique USB avant toute commande d’écriture.

L’installateur peut effacer entièrement le disque sélectionné : sauvegardez d’abord les fichiers à conserver et vérifiez le modèle affiché. Créez un compte utilisateur ordinaire, activez OpenSSH pendant l’installation et utilisez sudo pour administrer la machine.

Mettre le système à jour et contrôler le disque

Après le premier démarrage, appliquez les mises à jour et vérifiez la version installée, l’espace mémoire et les messages d’erreur du système. L’outil smartmontools permet également de consulter l’état SMART du disque ; un résultat favorable ne remplace pas une sauvegarde.

Les mises à jour de sécurité automatiques doivent être actives et confirmées dans la configuration du système. Cette vérification évite de supposer qu’un réglage est en place sans l’avoir contrôlé.

Contrôle Commande ou outil Ce qu’il faut vérifier
Version du système lsb_release -d Distribution installée
Disques et partitions lsblk Modèle, taille et points de montage
État SMART smartctl Résultat du contrôle du disque
Mises à jour automatiques systemctl et configuration APT Service actif et réglages présents

Un premier redémarrage après les mises à jour confirme aussi que la machine revient correctement en ligne. Une base Linux propre simplifie ensuite la configuration du réseau domestique.

Lire plus  Carte mère ordinateur portable, pour un usage au quotidien

Configurer le réseau domestique sans exposer le serveur

Après l’installation, le serveur doit conserver une adresse locale stable pour que la box puisse lui transmettre les requêtes. Une réservation DHCP dans l’interface du routeur associe cette adresse à la machine sans modifier directement la configuration réseau de Linux.

Pour rendre Nextcloud accessible par un nom de domaine, créez un enregistrement DNS correspondant à votre adresse IPv4 publique. La redirection des ports TCP 80 et 443 vers le serveur est nécessaire au fonctionnement prévu avec Caddy, mais n’ouvrez pas le port 22 sur Internet.

Vérifier l’adresse publique et les ports

Une adresse derrière CGNAT empêche généralement la redirection entrante classique de fonctionner. Dans ce cas, demandez à votre fournisseur une IPv4 publique accessible ou choisissez une solution de tunnel adaptée.

Imaginez une personne qui souhaite consulter ses fichiers en déplacement : elle n’a pas besoin d’exposer l’interface SSH ou le partage réseau. Pour l’administration à distance, un VPN comme WireGuard évite de publier directement ces accès.

Les règles du pare-feu doivent autoriser uniquement les services nécessaires. Docker peut contourner certaines règles UFW pour les ports publiés ; l’application doit donc rester liée à l’adresse locale plutôt qu’à toutes les interfaces.

  • Réservation DHCP pour conserver une adresse locale prévisible
  • DNS pointant vers l’adresse publique de la connexion
  • Ports TCP 80 et 443 redirigés vers la machine
  • SSH limité au réseau local ou accessible par VPN

Un réseau bien délimité réduit les portes d’entrée ; l’étape suivante consiste à limiter encore l’exposition de chaque application.

Déployer Nextcloud avec Docker et activer le HTTPS

Le réseau étant prêt, Docker Compose permet de faire fonctionner Nextcloud et MariaDB dans des conteneurs distincts. Installez Docker Engine depuis son dépôt officiel et vérifiez que le moteur démarre automatiquement après un redémarrage.

Lire plus  Serveur maison : configuration type (matériel, OS, RAID)

Dans le fichier Compose, Nextcloud doit écouter uniquement sur 127.0.0.1:8080, tandis que MariaDB ne reçoit pas de publication directe vers Internet. Les quatre paramètres de connexion à la base doivent être définis pour éviter que l’image Nextcloud ne se rabatte sur SQLite.

Protéger les identifiants et le certificat

Placez les mots de passe générés dans un fichier .env accessible uniquement à l’administrateur. Remplacez le domaine d’exemple par le vôtre et conservez ces identifiants dans un emplacement sûr, distinct du serveur lorsque c’est possible.

Caddy agit comme reverse proxy entre Internet et Nextcloud. Il obtient et renouvelle automatiquement un certificat Let’s Encrypt lorsque le DNS et les redirections fonctionnent ; Certbot n’est donc pas nécessaire dans cette configuration.

Une fois les conteneurs démarrés, contrôlez leur état et la page de statut de Nextcloud en HTTPS. Si Caddy ne peut pas obtenir son certificat, vérifiez d’abord le DNS, les ports transférés et la présence éventuelle d’un CGNAT.

Renforcer la sécurité informatique et organiser la maintenance

Un service accessible depuis Internet demande une maintenance serveur régulière, même lorsque l’installation fonctionne sans intervention quotidienne. Activez l’authentification à deux facteurs dans Nextcloud et créez un compte non administrateur pour l’usage courant.

Pour SSH, privilégiez l’authentification par clé et désactivez les mots de passe seulement après avoir testé la connexion dans une seconde session. N’ajoutez pas un utilisateur au groupe Docker sans comprendre le risque : cet accès peut équivaloir à des privilèges root.

Prévoir les mises à jour et la sauvegarde

Mettez à jour les images Docker puis redémarrez les services selon la procédure choisie. Pour Nextcloud, progressez d’une version majeure à la suivante si vous utilisez des versions figées, au lieu de sauter plusieurs versions.

Une sauvegarde fiable comprend les fichiers de l’application et un export cohérent de la base de données. Passez Nextcloud en mode maintenance pendant l’opération, vérifiez que le fichier exporté n’est pas vide et copiez les données vers un autre support.

Le chiffrement protège les échanges HTTPS entre le navigateur et le serveur, mais ne remplace ni les mises à jour ni la copie hors machine. La vue d’ensemble d’administration de Nextcloud aide à repérer des avertissements de configuration qu’il faut traiter plutôt que laisser s’accumuler.

Si le site affiche une erreur 502, examinez les journaux du conteneur et confirmez que Nextcloud répond sur 127.0.0.1:8080. Si le certificat échoue, vérifiez les journaux de Caddy avant de modifier au hasard le pare-feu.