Comment héberger votre propre serveur bit.ly avec Shlink sous Linux
Shlink est un puissant service de raccourcissement de liens auto-hébergé pour Linux. Il fournit un cadre simple mais efficace dans lequel vous pouvez utiliser votre propre nom de domaine comme racine de vos liens raccourcis. Cet article vous montrera comment installer votre propre instance Shlink sur Ubuntu Linux à l’aide de Docker et Nginx.
Pourquoi raccourcir les liens avec Shlink ?
L’un des principaux arguments de vente de Shlink est que vous pouvez utiliser votre propre domaine personnalisé pour les liens courts tout en restant auto-hébergé. Ceci, à son tour, vous offre la flexibilité d’un service de raccourcissement de liens SaaS ainsi que la confidentialité de l’exécution de logiciels sur votre propre machine.
En plus de cela, Shlink dispose également d’un ensemble diversifié de fonctionnalités telles que la possibilité de créer des codes QR, de transférer automatiquement des requêtes de lien et de créer des slugs personnalisés multi-segments. Cela fait de Shlink un outil pratique si vous recherchez un service de raccourcissement de liens sous Linux où vous pouvez modifier l’apparence et le comportement de vos liens.
Obtention de Docker pour Shlink
Hypothèse : cet article suppose que vous installez Shlink sur un VPS Ubuntu 22.04 et que vous possédez actuellement un nom de domaine.
La première étape du déploiement de Shlink sur Linux consiste à obtenir une copie de Docker. Pour ce faire, récupérez la clé de signature du projet Docker sur leur site Web :
Créez le fichier de référentiel pour vos binaires Docker :
Collez la ligne de code suivante dans votre nouveau fichier de référentiel :
Rechargez la liste des référentiels de votre système en effectuantapt update
:
Installation des dépendances pour Shlink
Une fois les référentiels Docker opérationnels, vous pouvez désormais utiliser apt pour obtenir les dépendances pour Shlink :
Assurez-vous que le package snap « principal » est disponible sur votre système :
Récupérez et installez le package snap « certbot » depuis l’Electronic Frontier Foundation :
Obtention d’une clé de licence Geolite2
Une autre caractéristique déterminante de Shlink est qu’il peut suivre l’emplacement général de l’utilisateur qui a cliqué sur vos liens. Pour l’utiliser, ouvrez la page d’inscription à la licence Geolite2 .
Remplissez le formulaire avec vos coordonnées, puis appuyez sur Continuer .
Ouvrez votre boîte de réception e-mail, puis recherchez l’e-mail de confirmation de MaxMind.
Cliquez sur le lien de l’e-mail, puis fournissez un mot de passe pour votre nouveau compte MaxMind.
Connectez-vous à votre compte MaxMind, puis cliquez sur Gérer les clés de licence sur votre tableau de bord.
Cliquez sur Générer une nouvelle clé de licence , puis cliquez sur Confirmer pour créer votre clé Geolite2.
Copiez la clé de licence Geolite2 dans un fichier texte sur votre machine puis enregistrez-la.
Obtention et installation de Shlink
Pour installer Shlink, vous devez d’abord créer un réseau Docker virtuel. Celui-ci servira de réseau privé à l’application où elle pourra communiquer avec les autres conteneurs que vous déploierez :
Déployez une base de données PostgreSQL et liez-la à votre nouveau réseau Docker virtuel :
Modifiez la valeur de la variable d’environnement « POSTGRES_PASSWORD » avec une chaîne de texte aléatoire.
Collez la commande suivante dans une nouvelle session de terminal :
Remplacez la valeur de la variable DEFAULT_DOMAIN par votre nom de domaine.
Modifiez la valeur de la variable « GEOLITE_LICENSE_KEY » avec votre clé de licence personnelle.
Remplacez la variable « DB_PASSWORD » par votre mot de passe de base de données PostgreSQL.
Appuyez Enterpour démarrer votre instance Shlink.
Installation et liaison de votre interface Shlink
Récupérez une clé API depuis votre conteneur Shlink, puis copiez-la dans votre presse-papiers :
Collez la commande suivante dans une nouvelle session de terminal :
Remplacez « SHLINK_SERVER_URL » par la valeur de votre variable « DEFAULT_DOMAIN » sur le conteneur backend.
Collez votre clé API comme valeur pour « SHLINK_SERVER_API_KEY ».
Appuyez Enterpour démarrer votre interface frontale Shlink.
Confirmez que votre base de données, le backend Shlink et l’interface Shlink fonctionnent correctement en répertoriant tous les conteneurs actuellement actifs dans le système :
Création d’un proxy inverse SSL à l’aide de Nginx
À ce stade, vous disposez désormais d’une suite logicielle Shlink fonctionnelle exécutée sur votre serveur. Cependant, pour y accéder, vous devez toujours créer un proxy Web SSL qui délègue vos deux conteneurs sur des domaines différents.
Pour commencer, créez un nouvel enregistrement A pour l’interface frontend de votre Shlink. Dans mon cas, je définirai l’enregistrement A de mon frontend comme « admin ».
Créez le fichier de configuration du site pour votre instance Shlink à l’aide de votre éditeur de texte préféré :
Collez le bloc de code suivant dans votre fichier de configuration :
Remplacez la variable « VOTRE-ROOT.DOMAIN » par votre domaine racine et la variable « SUBDOMAIN.YOUR-ROOT.DOMAIN » par le sous-domaine de votre interface frontend.
Enregistrez votre fichier de configuration, puis activez votre application Web dans Nginx :
Rechargez votre démon Nginx pour appliquer vos nouveaux paramètres :
Enregistrez votre serveur auprès de l’Electronic Frontier Foundation :
Demandez un nouveau certificat SSL multi-domaine pour votre instance Shlink :
Confirmez que votre serveur Shlink fonctionne correctement en accédant à la console d’administration de votre instance. Dans mon cas, c’est « https://admin.helloserver.top ».
Créer votre premier lien à l’aide de Shlink
Pour utiliser votre nouvelle instance, cliquez sur l’ élément de menu Shlink sur la page de destination.
Collez votre URL longue dans la zone de texte URL à raccourcir sous la catégorie Créer une URL courte .
Fournissez des métadonnées pour votre lien court, puis cliquez sur Enregistrer pour créer votre lien.
Ouvrez votre nouvelle URL courte dans un nouvel onglet de navigateur, puis cliquez sur le bouton Visites de votre tableau de bord Shlink pour tester si cela fonctionne correctement.
L’installation et le déploiement de votre propre service de raccourcissement de liens ne sont que la première étape pour rétablir votre confidentialité en ligne. Découvrez comment Linux peut vous aider à récupérer davantage votre vie privée en hébergeant votre propre site Web anonyme dans Ubuntu à l’aide de Tor .
Crédit image : Carlos Muza via les développeurs Unsplash et Shlink.io . Toutes les modifications et captures d’écran par Ramces Red.
Laisser un commentaire