Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« Serveur CA LXC Alpine Linux » : différence entre les versions

De Le Wiki de Lug
Aucun résumé des modifications
Ligne 76 : Ligne 76 :
  # rc-update add ca-httpd default
  # rc-update add ca-httpd default
  # rc-service ca-httpd start
  # rc-service ca-httpd start
= Installation du certificat public sur une machine Distante =
== Debian ==
Télécharger le certificat :
* Avec curl :
# curl <nowiki>http://</nowiki><font color = blue>IP_DU_LXC</font>:8080/local-ca.crt -o /usr/local/share/ca-certificates/local-ca.crt
* Avec wget :
# wget -O /usr/local/share/ca-certificates/local-ca.crt <nowiki>http://</nowiki><font color = blue>IP_DU_LXC</font>:8080/local-ca.crt
Mettre à jour le magasin de certificats :
# update-ca-certificates

Version du 3 mai 2026 à 13:49

Ce LXC permet d’héberger une petite autorité de certification locale (CA) pour le réseau interne.

Il sert à :

  • signer les certificats TLS des services locaux ;
  • distribuer le certificat public de la CA aux machines clientes ;
  • centraliser la gestion des certificats ;
  • obtenir un HTTPS propre sur le réseau local.

Prérequis

Pour une petite autorité de certification locale, un LXC très léger suffit :

  • 1 vCPU
  • 512 Mo à 1 Go de RAM
  • 2 à 4 Go de disque

Installation

Mise à jour du système :

# apk update && apk upgrade

Installation des paquets nécessaires :

# apk add openssl openssh

Créer un dossier dédié à la CA :

# mkdir -p /etc/local-ca
# chmod 700 /etc/local-ca
# cd /etc/local-ca

Création de la clé privée de la CA :

# openssl genrsa -out local-ca.key 4096
# chmod 600 local-ca.key

Création du certificat public de la CA :

# openssl req -x509 -new -nodes -key local-ca.key -sha256 -days 3650 \
  -out local-ca.crt \
  -subj "/CN=CA-Locale-Homelab"
# chmod 644 local-ca.crt

Pour faciliter l’installation du certificat public sur les machines du réseau local, on peut le rendre disponible via un petit serveur web très léger basé sur BusyBox HTTPD :

# apk add busybox-extras

Créer un dossier de publication :

# mkdir -p /srv/ca-public
# cp /etc/local-ca/local-ca.crt /srv/ca-public/
# chmod 755 /srv/ca-public
# chmod 644 /srv/ca-public/local-ca.crt

Test manuel du serveur web :

# busybox-extras httpd -f -p 8080 -h /srv/ca-public

Le certificat public devient alors accessible à l’adresse :

http://IP_DU_LXC:8080/local-ca.crt

Créer un petit script de démarrage :

# vi /usr/local/bin/start-ca-httpd.sh

Contenu :

#!/bin/sh
exec busybox-extras httpd -f -p 8080 -h /srv/ca-public

Rendre le script exécutable :

# chmod 755 /usr/local/bin/start-ca-httpd.sh

Créer un service OpenRC :

# vi /etc/init.d/ca-httpd

Contenu :

#!/sbin/openrc-run
description="BusyBox HTTPD pour distribution du certificat public de la CA"
command="/usr/local/bin/start-ca-httpd.sh"
command_background="yes"
pidfile="/run/ca-httpd.pid"

Rendre le service exécutable :

# chmod 755 /etc/init.d/ca-httpd

Ajouter au démarrage et lancer :

# rc-update add ca-httpd default
# rc-service ca-httpd start

Installation du certificat public sur une machine Distante

Debian

Télécharger le certificat :

  • Avec curl :
# curl http://IP_DU_LXC:8080/local-ca.crt -o /usr/local/share/ca-certificates/local-ca.crt
  • Avec wget :
# wget -O /usr/local/share/ca-certificates/local-ca.crt http://IP_DU_LXC:8080/local-ca.crt

Mettre à jour le magasin de certificats :

# update-ca-certificates
Sommaire