logo

Suite de logiciels pour gérer des serveurs Ubuntu.

Ce projet est pour me permettre d’offrir plusieurs services partagés.

Ce système utilise Docker pour permettre plus de sécurité entre les utilisateurs et pour pouvoir exécuter des processus avec des versions différentes installées.

Ce système est une suite de projets et ils sont tous à source libre. Vous pouvez utiliser le projet de base pour obtenir tous les autres projets facilement.

Technologies: , , , , , , , , , ,

Programme léger à utiliser sur les App Services de Microsoft Azure pour facilement configurer des redirections via les variables d’environnement.

Spécificités:

  • Configurer les redirections via les variables d’environnement.
  • Peut choisir si la redirection est temporaire ou permanente.
  • Peut choisir si le chemin après le domaine est conservé ou pas.

Disponibilité:

Technologies: , ,

Auparavant, j’utilisais Apache James directement, mais ce n’était pas optimal pour facilement configurer cette application avec mes composantes supplémentaires de gestion des comptes et des redirections.

Spécificités:

  • Utilise Apache James comme librairie à cette application Java
  • Utilise MariaDB
  • Lit un fichier de configuration en JSON et vérifie s’il est modifié. Il configure
    • Les domaines servis
    • Les comptes avec leur mot de passe (en clair ou en SHA-512)
    • Les redirections

Disponibilité:



Technologies: , , ,

Cette application permet de changer du texte dans un fichier en tenant compte du nombre de caractères lorsque le texte est dans un objet PHP sérialisé. C’est surtout utile lorsque nous avons besoin de changer le url d’un site WordPress dans la base de données. Dans ce cas, il suffit de faire un mysqldump, de remplacer le url avec cet outil et d’importer le résultat.

Le logiciel est disponible ici.

Spécificités:

  • Remplace le texte dans un simple fichier texte.
  • Remplace le texte dans un dump mysql en prenant en compte les caractères d’échapements
Technologies: ,

Suite de logiciels pour gérer des serveurs Ubuntu.

Ce projet est pour me permettre d’offrir plusieurs services partagés.

C’est un changement de la version utilisant Chef à un logiciel 100% interne fait en Java.

Applications de base installées sur tous les serveurs:

  • Page de maintenance commune lorsqu’un site est retiré.
  • Surveillance des services (httpd, mysql, …) pour qu’ils soient automatiquement redémarrés s’ils plantent.
  • Application de sauvegarde quotidienne de tous les utilisateurs, bases de données, job cron et services upstart.

Ressources gérées par le site web:

  • Gère
    • les utilisateurs,
    • les certificats et clés SSL,
    • les sites web,
    • les bases de données,
    • les services upstart,
    • les tâches cron.

Logiciels complémentaires:

  • Système d’envoi d’entrées DNS au serveur DNS
    • Association automatique de l’adresse IP de la machine qui contient le site.
    • Création automatique des entrées DNS basées sur les sites Apache configurés et les adresses courriel utilisées.
    • Permet de facilement migrer un site sur un nouveau serveur sans avoir à manuellement changer le DNS.
    • Permet de distribuer la charge d’un site sur plusieurs machines: ajout et retrait automatique si une machine s’ajoute ou quitte.
  • Système surveillance
    • Envoie les statistiques de chaque machine régulièrement.
    • [En cours] Envoie l’espace disque utilisé par chaque utilisateur (sites web, courriel, bases de données, …)
  • Site web pour gérer les comptes par l’administrateur et les utilisateurs
    • Gérer les sites.
    • Gérer les courriels.
  • Redirection des connexions locales à MySQL vers un autre serveur MySQL centralisé
    • Permet de déployer le même code sur plusieurs machines en conservant localhost comme base de données.
    • La connexion est cryptée entre les serveurs.
Technologies: , , , , , , , , , , , , , ,