Table des matières
en utilisant un certificat auto-signé
certificats délivrés par l'autorité de certificat
en utilisant pki
Mettre à jour les instructions sur Crowdsec et l'authentification TLS
Conclusion
Maison Tutoriel système Linux Sécurisez une installation de moteur de sécurité multi-serveur avec HTTPS

Sécurisez une installation de moteur de sécurité multi-serveur avec HTTPS

Mar 10, 2025 am 09:02 AM

Secure A Multi-Server Security Engine Installation With HTTPS

La deuxième partie de ce tutoriel expliquera comment configurer et sécuriser l'installation du moteur de sécurité CrowdSec multi-serveur. Dans la première partie, nous expliquons comment configurer le moteur de sécurité CrowdSec sur plusieurs serveurs, dont l'un sert de serveur parent et les deux autres le transmettent l'alerte.

Cette section résoudra les problèmes de sécurité causés par la communication HTTP en texte clair dans les installations précédentes du moteur de sécurité multi-serveur. Pour résoudre ce problème, nous vous recommandons d'établir une communication entre les moteurs de sécurité via des canaux cryptés. Cette solution permet au serveur 2 ou au serveur 3 de faire confiance à l'identité du serveur 1 et d'éviter les attaques de l'homme au milieu.

en utilisant un certificat auto-signé

Créer un certificat Tout d'abord, vous devez créer un certificat. Cela peut être réalisé en suivant une seule commande de ligne:

openssl req -x509 -newkey rsa:4096 -keyout encrypted-key.pem -out cert.pem -days 365 -addext "subjectAltName = IP:172.31.100.242"
Copier après la connexion
Copier après la connexion

Actuellement, le moteur de sécurité ne peut pas demander le mot de passe de la clé privée lors de son démarrage. Par conséquent, vous pouvez choisir de décrypter manuellement la clé privée chaque fois que vous démarrez ou rechargez le moteur de sécurité, ou stockez la clé non cryptée. Quoi qu'il en soit, pour supprimer le mot de passe, vous pouvez utiliser la commande suivante:

openssl rsa -in encrypted-key.pem -out key.pem
Copier après la connexion

Ensuite, après le démarrage du moteur de sécurité, le fichier de clé non crypté peut être supprimé en toute sécurité.

Configurez le moteur de sécurité pour utiliser le certificat auto-signé sur le serveur 1, vous devez configurer le moteur de sécurité pour utiliser le certificat généré. Comme indiqué ci-dessous, les options /etc/crowdec/config.yaml et api.server dans la section tls.cert_file de l'extrait tls.key_file suivant sont définies sur le fichier de certificat généré.

api:
  server:
    log_level: info
    listen_uri: 10.0.0.1:8080
    profiles_path: /etc/crowdsec/profiles.yaml
    online_client: # Crowdsec API credentials (to push signals and receive bad 

    tls:
      cert_file: /etc/crowdsec/ssl/cert.pem
      key_file: /etc/crowdsec/ssl/key.pem
Copier après la connexion

Sur le client, le changement de configuration se produit dans les deux fichiers. Tout d'abord, modifiez /etc/crowdec/config.yaml pour accepter un certificat auto-signé en définissant insecure_skip_verify à true.

Vous devez également modifier HTTP en https dans le fichier /etc/crowdsec/local_api_credentials.yaml pour refléter ces modifications. Ce petit changement doit être effectué sur les trois serveurs (serveur 1, serveur 2 et serveur 3).

Remarque: N'oubliez pas que si le serveur 1 est également utilisé comme processeur de journal, vous devez également faire cette configuration LAPI sur ce serveur.

url: https://10.0.0.1:8080/
login: <login>
password: <password></password></login>
Copier après la connexion

Remarque latérale: Évidemment, l'utilisation d'un certificat auto-signé ne fournit aucune garantie sur la propriété du serveur LAPI. Les serveurs utilisant le service (Server 2 ou Server 3 dans ce paramètre) sont toujours vulnérables aux attaques de l'homme au milieu, mais au moins ce paramètre fournit une communication cryptée. C'est pourquoi l'option InsecureSkipVerify est nécessaire.

certificats délivrés par l'autorité de certificat

Les services

tels que Let's Encrypt ou Amazon ACM peuvent résoudre le problème /etc/hosts en émettant des certificats pour des noms de domaine pleinement qualifiés qui peuvent être ajoutés aux serveurs DNS ou locaux. Vous pouvez ensuite remplir InsecureSkipVerify avec ce nom de domaine entièrement qualifié spécifié. /etc/crowdsec/local_api_credentials.yaml

Cela fonctionne et empêche le réglage de l'option InsecureSkipVerify. Tant que la configuration DNS est fiable, cela garantit que la communication entre le client et le serveur n'est pas falsifiée, mais cela devrait toujours être considéré comme une solution de contournement.

en utilisant pki

Le processus de configuration et de gestion de l'infrastructure de clé publique SSL (PKI) n'est pas dans le cadre de ce tutoriel, mais je vous recommande fortement de consulter la documentation officielle OpenSSL. Une simple solution PKI est suffisante pour répondre aux besoins de cette configuration de moteur de sécurité.

Selon la documentation OpenSSL, certaines choses méritent d'être mentionnées.

Pour être utilisé dans notre scénario CROWDECC TLS, les demandes de certificat doivent être émises avec le nom alternatif de la rubrique correspondant à l'IP du serveur LAPI Crowdsec. Cela peut être fait en localisant les variables de l'environnement SAN lors de l'appel OpenSSL pour les demandes de certificat (voir l'étape 3.3 dans OpenSSL Simple PKI Scheme).

openssl req -x509 -newkey rsa:4096 -keyout encrypted-key.pem -out cert.pem -days 365 -addext "subjectAltName = IP:172.31.100.242"
Copier après la connexion
Copier après la connexion

Avant de démarrer le moteur de sécurité CrowdSec, la partie commune du certificat racine et le certificat signé (le fichier groupé créé à l'étape 4.5 du schéma PKI simple OpenSSL) doit être ajouté au magasin de certificats local. Dans cette configuration, cela est nécessaire pour se connecter au serveur LAPI. Il existe de nombreuses façons de le faire, le code source Golang spécifie l'emplacement du certificat attendu, ou vous pouvez utiliser la variable d'environnement SSL_CERT_FILE dans le fichier de service SystemD pour spécifier où chercher le certificat lors du démarrage du moteur de sécurité.

Mettre à jour les instructions sur Crowdsec et l'authentification TLS

Après la publication de cet article, nous avons ajouté une nouvelle fonctionnalité au moteur de sécurité, où vous pouvez désormais non seulement protéger les communications sur TLS, mais également assurer l'authentification avec des certificats. Dans la documentation officielle, vous pouvez trouver un bon exemple montrant comment utiliser les certificats pour l'authentification TLS entre les moteurs de sécurité ou entre les moteurs de sécurité et les composants de remédiation.

Conclusion

Cet article se concentre sur la façon de protéger la communication entre les différentes installations de moteurs de sécurité CrowdSec. Le cas d'utilisation considéré est l'installation de moteur de sécurité dans un réseau privé, mais cela peut également être déployé sur des réseaux publics avec Internet Communications. Dans ce cas, un certificat tiers peut facilement résoudre le problème.

Si nécessaire, nous proposons trois méthodes différentes pour obtenir une communication TLS sécurisée entre les moteurs de sécurité, utilisant des certificats auto-signés, en utilisant des certificats délivrés par les autorités de certificat et en utilisant une infrastructure de clé publique SSL.

La première solution (à l'aide d'un certificat auto-signé) ne convient qu'aux situations où vous souhaitez assurer une communication cryptée sans authentification. La deuxième solution ne peut être prise en compte que lorsque vous pouvez modifier la résolution DNS locale. La troisième solution est la plus complexe, mais elle convient à la plupart des cas d'utilisation et peut être le meilleur choix lorsque les problèmes de sécurité sont graves.

J'espère que ce tutoriel vous sera utile. Merci d'avoir lu, restez à l'écoute!

Si vous avez des questions ou des commentaires, n'hésitez pas à nous contacter via nos plateformes communautaires Discord et Discours.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Maîtriser la manipulation du texte avec la commande SED Maîtriser la manipulation du texte avec la commande SED Mar 16, 2025 am 09:48 AM

L'interface de ligne de commande Linux fournit une multitude d'outils de traitement de texte, l'un des outils les plus puissants est la commande SED. SED est l'abréviation de Stream Editor, un outil multifonctionnel qui permet un traitement complexe des fichiers texte et des flux. Qu'est-ce que SED? SED est un éditeur de texte non interactif qui fonctionne sur des entrées de pipeline ou des fichiers texte. En fournissant des directives, vous pouvez le laisser modifier et traiter le texte dans un fichier ou un flux. Les cas d'utilisation les plus courants de SED incluent la sélection du texte, le remplacement du texte, la modification des fichiers d'origine, l'ajout de lignes au texte ou la suppression des lignes du texte. Il peut être utilisé à partir de la ligne de commande dans Bash et d'autres shells de ligne de commande. Syntaxe de commande SED sed

Comment compter les fichiers et les répertoires dans Linux: un guide pour débutant Comment compter les fichiers et les répertoires dans Linux: un guide pour débutant Mar 19, 2025 am 10:48 AM

Compter efficacement les fichiers et les dossiers dans Linux: un guide complet Savoir compter rapidement les fichiers et les répertoires dans Linux est crucial pour les administrateurs système et toute personne qui gère les grands ensembles de données. Ce guide démontre en utilisant la commande simple-L

Comment ajouter un utilisateur à plusieurs groupes dans Linux Comment ajouter un utilisateur à plusieurs groupes dans Linux Mar 18, 2025 am 11:44 AM

La gestion efficace des comptes d'utilisateurs et des abonnements de groupe est crucial pour l'administration du système Linux / Unix. Cela garantit un contrôle approprié des ressources et des données. Ce tutoriel détaille comment ajouter un utilisateur à plusieurs groupes dans les systèmes Linux et Unix. Nous

Comment répertorier ou vérifier tous les noyaux Linux installés à partir de la ligne de commande Comment répertorier ou vérifier tous les noyaux Linux installés à partir de la ligne de commande Mar 23, 2025 am 10:43 AM

Le noyau Linux est le composant central d'un système d'exploitation GNU / Linux. Développé par Linus Torvalds en 1991, il s'agit d'un noyau Unix, monolithique, monolithique, modulaire et multitâche. Dans Linux, il est possible d'installer plusieurs noyaux sur un chant

Comment taper le symbole de roupies indien dans Ubuntu Linux Comment taper le symbole de roupies indien dans Ubuntu Linux Mar 22, 2025 am 10:39 AM

Ce bref guide explique comment taper le symbole de roupies indien dans les systèmes d'exploitation Linux. L'autre jour, je voulais taper "Indian Rupee Symbol (₹)" dans un document Word. Mon clavier a un symbole de roupie dessus, mais je ne sais pas comment le taper. Après

Localisation des fichiers Leviathan dans Linux Localisation des fichiers Leviathan dans Linux Mar 13, 2025 pm 12:11 PM

Introduction Dans le domaine de Linux, où la ligne de commande est souvent la boussole par laquelle nous naviguons, la gestion efficace de l'espace disque est cruciale. Que vous naviguiez à travers des projets personnels ou que vous dirigeiez le navire O

Linux Kernel 6.14 RC6 Sortie Linux Kernel 6.14 RC6 Sortie Mar 24, 2025 am 10:21 AM

Linus Torvalds a publié Linux Kernel 6.14 Release Candidate 6 (RC6), ne signalant aucun problème significatif et en gardant la sortie sur la bonne voie. Le changement le plus notable dans cette mise à jour traite d'un problème de signature de microcode AMD, tandis que le reste des mises à jour

Les 8 meilleurs clients SSH pour Linux Les 8 meilleurs clients SSH pour Linux Mar 15, 2025 am 11:06 AM

Recommandé 8 meilleurs clients SSH pour le système Linux SSH (Secure Shell Protocol) est un protocole réseau chiffré utilisé pour exécuter en toute sécurité les services réseau sur un réseau non sécurisé. Il s'agit d'une partie importante de la gestion des serveurs modernes et offre un accès à distance sécurisé au système. Les clients SSH (applications qui utilisent le protocole SSH) sont un outil indispensable pour les administrateurs système, les développeurs et les professionnels de l'informatique. La gestion des serveurs à distance est courante dans le monde Linux, et le choix du bon client SSH est crucial. Cet article discutera de 8 meilleurs clients SSH pour Linux. Critères de sélection Lors du choix du meilleur client SSH pour Linux, les facteurs suivants doivent être pris en compte: Performance: vitesse et efficacité des clients SSH

See all articles