Ajout d'un nouveau serveur client à un réseau de cloud privé via cloud-config
Introduction : Ce tutoriel explique comment ajouter un nouveau serveur client à un réseau de cloud privé avec une passerelle auto-hébergée. Lors de la création du serveur, nous utiliserons un script cloud-config qui ajoute une nouvelle route au serveur afin que tout le trafic sortant soit envoyé à la passerelle auto-hébergée (10.0.0.1). La passerelle auto-hébergée transfère ensuite ce trafic vers votre passerelle auto-hébergée. Vous n'avez pas besoin d'une interface publique (pas d'adresse IP publique) ou de configurer des routes statiques vers votre passerelle auto-hébergée. Si votre passerelle a un serveur DNS, il sera utilisé par votre nouveau serveur.
Prérequis :
- Passerelle auto-hébergée dans votre réseau Cloud privé
Terminologie d'exemple :
- Réseau privé : 10.1.0.0/24
- Passerelle auto-hébergée : 10.1.0.1
- Serveurs DNS : 185.12.64.3 et 185.12.64.4
Étape 1 - Préparer la configuration "netplan"
Nous voulons que cloud-config crée un fichier (/etc/netplan/51-netcfg.yaml) pour définir une route par défaut.
Créez ou modifiez le fichier de configuration netplan à l'aide de votre éditeur de texte préféré :
network:
version: 2
ethernets:
ens10:
dhcp4: true
routes:
- to: 0.0.0.0/0
via: 10.1.0.1
Dans cette configuration :
ens10est le nom de l'interface de votre réseau privé.- Nous devons envoyer tout le trafic sortant vers la passerelle auto-hébergée (10.1.0.1).
Étape 2 - Préparer la configuration "resolved"
Dans cet exemple, nous utilisons des serveurs DNS alternatifs, mais vous pouvez également utiliser d'autres serveurs DNS. Modifiez le fichier /etc/systemd/resolved.conf :
Éditez le fichier /etc/systemd/resolved.conf :
[Resolve]
DNS=185.12.64.3 185.12.64.4
Étape 3 - Construire le script Cloud-Config
Maintenant, nous devons combiner les deux configurations des deux premières étapes en un seul script cloud-config. Après l'écriture des deux fichiers, le script cloud-config redémarrera le serveur.
Créez un script cloud-config, par exemple cloud-config.yaml, et ajoutez le contenu suivant :
#cloud-config
write_files:
- path: /etc/netplan/51-netcfg.yaml
permissions: '0644'
content: |
network:
version: 2
ethernets:
ens10:
dhcp4: true
routes:
- to: 0.0.0.0/0
via: 10.1.0.1
- path: /etc/systemd/resolved.conf
content: |
[Resolve]
DNS=185.12.64.3 185.12.64.4
runcmd:
- reboot
Ce script inclut les configurations netplan et resolved. Il écrira ces configurations puis redémarrera le serveur.
Étape 4 - Créer un nouveau serveur
Ouvrez la console du fournisseur d'hébergement cloud et créez un nouveau serveur Ubuntu 22.04. Ajoutez le serveur à votre réseau privé uniquement, et assurez-vous qu'il n'y a pas d'interfaces publiques.
Utilisez le script cloud-config créé à l'"Étape 3". Apportez les modifications nécessaires pour l'adapter à votre environnement et collez-le dans la zone de texte "Cloud config" lors du processus de création du serveur. Créez votre serveur et laissez un peu de temps pour qu'il redémarre.
Étape 5 - Vérifier votre configuration
Si vous avez une connexion VPN à votre passerelle auto-hébergée, vous devriez pouvoir vous connecter en SSH au serveur créé.
Sinon, vous pouvez utiliser la console VNC dans l'interface utilisateur du fournisseur d'hébergement cloud.
Vérifiez le serveur DNS :
resolvectl status
Vous devriez voir votre serveur DNS configuré.
Vérifiez la route par défaut :
ip route
Vous devriez voir une route par défaut :
default via 10.1.0.1 dev ens10 proto static onlink
Conclusion : Vous avez configuré avec succès un nouveau serveur avec cloud-config pour utiliser la passerelle auto-hébergée comme route par défaut pour le trafic sortant et pour utiliser vos propres serveurs DNS. Cette configuration permet à votre serveur de se connecter au réseau privé via la passerelle auto-hébergée sans avoir besoin d'une interface publique ou de routes statiques.
Rechercher