GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Installation de Lemur Certificate Manager sur Ubuntu

Ce tutoriel montre l'installation du logiciel de gestion de certificats Lemur sur Ubuntu 16.04 LTS. Lemur est un projet open source de NetFlix et utilisé pour générer les certificats pour les clients/clients. Dans cet article, nous allons configurer un environnement virtuel basé sur Python, installer les packages requis, configurer le service Web de base et accéder au tableau de bord du gestionnaire de certificats. Il est supposé que vous avez une instance LTS Ubuntu 16.04 propre en cours d'exécution, par ex. dans le cloud (comme AWS) ou dans un environnement virtualisé local.

Dépendances

Quelques prérequis de base dont vous aurez besoin pour faire fonctionner Lemur :

  • Système d'exploitation Linux (Ubuntu 16.04 LTS est utilisé dans ce didacticiel).
  • Python 3.5 ou supérieur.
  • PostgreSQL 9.4 ou supérieur.
  • Serveur Web Nginx.

Installation des dépendances de build

Lorsque vous installez Lemur sur un système d'exploitation Ubuntu nu, vous devrez récupérer les packages suivants pour que Lemur puisse correctement construire ses dépendances :

.. code-block ::bash

sudo apt-get update
sudo apt-get install nodejs nodejs-legacy python-pip python-dev python3-dev libpq-dev build-essential libssl-dev libffi-dev libsasl2-dev libldap2-dev nginx git supervisor npm postgresql

La commande ci-dessus installera les packages de base de données nodejs, pip, nginx , git, npm et PostgreSQL.

Remarque :Installation du nœud le gestionnaire de paquets peut créer le nodejs bin sur le chemin /usr/bin/nodejs au lieu de /usr/bin/node. Exécutez la commande suivante pour créer un lien symbolique au chemin souhaité.

sudo ln -s /user/bin/nodejs /usr/bin/node

Maintenant, installez virtualenv package en utilisant la commande suivante.

sudo pip install -U virtualenv

Configuration de l'environnement de construction

Dans ce guide, Lemur sera installé dans le /www répertoire, vous devez donc d'abord créer ce répertoire :

sudo mkdir /www
cd /www

Maintenant, clonez Lemur  dernière source dans le répertoire que vous venez de créer et donnez-vous la permission d'écrire (lemur l'utilisateur est créé dans ce didacticiel) :

sudo useradd lemur
sudo passwd lemur
sudo mkdir /home/lemur
sudo chown lemur:lemur /home/lemur

sudo git clone https://github.com/Netflix/lemur
sudo chown -R lemur lemur/

Aussi, créez l'environnement virtuel, activez-le et entrez dans le répertoire de Lemur :

su lemur
virtualenv -p python3 lemur


source /www/lemur/bin/activate
cd lemur

L'activation de l'environnement ajuste PATH variable d'environnement , de sorte que des choses comme pip s'installent maintenant dans virtualenv par défaut.

Installer Lemur depuis la source

Après avoir configuré le système, assurez-vous que vous êtes dans le virtualenv pour exécuter la commande "make release".

which python

Et exécutez la commande suivante pour installer npm dépendances ainsi que compiler des actifs statiques.

 make release

Création de la configuration Lémurien

Avant de lancer Lemur, nous devons créer un fichier de configuration valide pour celui-ci. L'interface de ligne de commande Lemur est livrée avec une commande simple pour vous permettre d'être opérationnel rapidement. La commande suivante créera une configuration par défaut sous "~/.lemur/lemur.conf.py " et cet emplacement peut être spécifié en passant le config_path paramètre au create_config commande.

 lemur create_config

Mettre à jour la configuration de Lémurien

Une fois créé, vous devrez mettre à jour le fichier de configuration avec des informations sur votre environnement, telles que la base de données à laquelle parler, où les clés sont stockées, etc.

vi ~/.lemur/lemur.conf.py

Le SQLALCHEMY_DATABASE_URI chaîne de Postgresql peut être décomposé comme suit :
"postgresql://userame:[email protected]:/"

La capture d'écran ci-dessous montre que les variables requises suivantes sont renseignées dans le fichier de configuration :

LEMUR_SECURITY_TEAM_EMAIL
LEMUR_DEFAULT_COUNTRY
LEMUR_DEFAULT_STATE
LEMUR_DEFAULT_LOCATION
LEMUR_DEFAULT_ORGANIZATION
LEMUR_DEFAULT_ORGANIZATIONAL_UNIT

Configurer la base de données Postgres

Pour la production, une base de données dédiée est recommandée. Pour ce guide, je supposerai que postgres a été installé et se trouve sur la même machine que celle sur laquelle Lemur est installé.

Tout d'abord, définissez un mot de passe pour l'utilisateur postgres. Pour ce guide, nous utiliserons des lémuriens à titre d'exemple, mais vous devez utiliser le mot de passe de la base de données généré par Lemur :

sudo -u postgres -i

psql
postgres=# CREATE USER lemur WITH PASSWORD 'lemur';

Une fois réussi, tapez CTRL-D pour quitter le shell Postgres.

Ensuite, nous allons créer notre nouvelle base de données :

sudo -u postgres createdb lemur

Initialisation du gestionnaire de certificats Lemur 

Lemur fournit une commande utile qui initialisera votre base de données pour vous. Il crée un utilisateur par défaut (lémurien ) qui est utilisé par Lemur pour aider à associer des certificats qui n'ont pas actuellement de propriétaire. C'est le plus souvent le cas lorsque Lemur a découvert des certificats provenant d'une source tierce. C'est aussi un utilisateur par défaut qui peut être utilisé pour administrer Lemur.

En plus de créer un nouvel utilisateur, Lemur crée également quelques notifications par e-mail par défaut. Ces notifications sont basées sur quelques options de configuration telles que LEMUR_SECURITY_TEAM_EMAIL . Ils garantissent essentiellement que chaque certificat dans Lemur enverra une notification d'expiration à l'équipe de sécurité.

Notez le mot de passe utilisé car il sera utilisé lors de la première connexion à l'interface utilisateur Lemur.

cd /www/lemur/lemur 
lemur init

L'instantané suivant montre la sortie de la commande "lemur init".

Configuration du serveur Web NGINX pour Lemur

Par défaut, Lemur s'exécute sur le port 8000. Même si vous modifiez cela, dans des conditions normales, vous ne pourrez pas vous connecter au port 80. Pour contourner ce problème (et éviter d'exécuter Lemur en tant qu'utilisateur privilégié, ce que vous ne devriez pas ), nous avons besoin de configurer un proxy Web simple. Il existe de nombreux serveurs Web différents que vous pouvez utiliser pour cela, nous aimons et recommandons Nginx.

Ajoutez les lignes suivantes dans le fichier de configuration "/etc/nginx/sites-available/default ".

location /api {
proxy_pass http://127.0.0.1:8000;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
root /www/lemur/lemur/static/dist;
include mime.types;
index index.html;
}

Après avoir effectué ces modifications, redémarrez le service Nginx pour les appliquer :

sudo service nginx restart

Démarrage du service Web

Lemur fournit un serveur Web intégré (alimenté par gunicorn et eventlet) pour vous permettre de démarrer rapidement. Pour démarrer le serveur web, il vous suffit d'utiliser "lemur start ".

Vous pouvez vous connecter avec l'utilisateur par défaut créé lors de l'initialisation de Lemur ou tout autre utilisateur que vous avez créé. Vous devriez maintenant pouvoir tester le service Web en visitant http://192.168.10.51:8000/ . (192.168.10.51 est l'adresse IP de la machine Lemur).

Le tableau de bord du Lemur est montré ci-dessus. Il est utilisé pour créer des certificats à l'aide d'autorités de certification auto-signées ou racine.

Conclusion

Dans ce tutoriel, le gestionnaire de certificats Lemur est installé sur la dernière version d'Ubuntu LTS. Le but de Lemur est de créer et de gérer des certificats. Il prend également en charge différents rôles d'utilisateurs.


Ubuntu
  1. Installation du bureau Ubuntu 22.04 Cinnamon

  2. Installation d'Ubuntu 20.04 à partir d'une clé USB

  3. Installation du bureau Ubuntu 20.04 Cinnamon

  4. Installation d'Ubuntu 20.04 Tomcat

  5. Installation du serveur Ubuntu 20.04

Installation d'Ubuntu 22.04 VLC

Intégration de CFSSL avec le Lemur Certificate Manager

Comment installer Portainer Docker Manager dans Ubuntu 20.04

installation du gestionnaire de mots de passe myki sur Ubuntu 20.04 LTS

Installation de TeamPass Password Manager sur Ubuntu 20.04 LTS

Gestionnaire d'extraits de code pour Ubuntu ?