GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Mailpile avec Nginx sur Ubuntu 15.10

Mailpile est un client de messagerie open source qui se concentre sur le cryptage et la confidentialité des utilisateurs. Mailpile facilite la configuration de PGP, il vous permet de créer des clés PGP directement dans l'application de messagerie et d'envoyer des messages cryptés PGP. Mailpile a été créé par Bjarni R. Einarsson en 2013. Le logiciel peut être installé sur Mac OSX, Windows et Linux en tant que client Web.

Dans ce tutoriel, je vais vous guider à travers l'installation de Mailpile sur Ubuntu 15.10. Nous installerons Mailpile en tant que client Web avec Nginx en tant que proxy inverse.

Prérequis

  • Ubuntu 15.10 - 64 bits.
  • Privilèges racine.

Étape 1 - Installer les dépendances Mailpile

Mailpile est écrit dans le langage de programmation python et nous avons besoin d'un tas de modules python pour l'installation. Je vais installer Mailpile dans un environnement virtuel python avec virtualenv et utiliser python 2.7 pour l'installation. Pour le chiffrement, j'installerai GnuPG version 1.4.x.

Pour commencer, mettez à jour la base de données de votre référentiel et installez les packages à partir du référentiel Ubuntu :

sudo apt-get update
sudo apt-get install gnupg openssl python-virtualenv python-pip python-lxml git

Vérifiez maintenant la version python et la version GnuPG :

python --version
gpg --version

Mailpile nécessite la PIL (Python Imaging Library), nous installons donc libjpeg, zlib1g et python-dev :

sudo apt-get install libjpeg62 libjpeg62-dev zlib1g-dev python-dev

Une fois l'installation terminée, nous sommes prêts pour la prochaine étape de l'installation de Mailpile.

Étape 2 - Installer et configurer Mailpile

Dans cette étape, j'installerai Mailpile dans le répertoire "/opt/" puis je créerai un nouvel environnement virtuel python pour l'installation. Avant de commencer l'installation, clonez le code source Mailpile du référentiel github vers le répertoire opt.

cd /opt/
git clone --recursive https://github.com/mailpile/Mailpile.git

Allez maintenant dans le répertoire Mailpile et créez l'environnement virtuel avec python2.7 comme version python :

cd /opt/Mailpile/
virtualenv -p /usr/bin/python2.7 --system-site-packages mailpile-env

-p =Utilisez une version python spécifique, nous utilisons python 2.7.
--system-site packages =Donner à l'environnement virtuel l'accès aux packages de site globaux.
mailpile-env =Répertoire du nouvel environnement virtuel.

Activez ensuite l'environnement virtuel, assurez-vous d'être dans le répertoire "/opt/Mailpile/", et enfin activez-le.

cd /opt/Mailpile/
source mailpile-env/bin/activate

Vous pouvez vérifier la ligne de commande si l'environnement virtuel est actif :

(mailpile-env)[email protected]:/opt/Mailpile#

Le nom de l'environnement virtuel doit figurer devant votre nom d'utilisateur et votre nom d'hôte sur le shell.

Ensuite, installez les exigences mailpile avec la commande pip dans l'environnement mailpile-env :

pip install -r requirements.txt

Testons Mailpile avec la commande "./mp" dans l'environnement virtuel :

./mp

Dans la capture d'écran, nous pouvons voir que Mailpile s'exécute sur localhost avec le port 33411.

Essayons donc d'y accéder avec la commande curl depuis le shell du serveur :

curl -I localhost:33411

Il fonctionne correctement lorsque vous obtenez le résultat suivant :

HTTP/1.1 302 Found
Location: /setup/welcome/

En fait, dans cette étape, nous pourrions dire à Mailpile de s'exécuter sur notre adresse IP publique afin que tout le monde puisse y accéder. Mais dans ce tutoriel, nous utiliserons Nginx comme proxy inverse pour Mailpile sur le port 33411.

Étape 3 - Installer Nginx

Installez Nginx avec cette commande apt :

sudo apt-get install nginx

Vérifiez maintenant que Nginx s'exécute sur le port 80 :

netstat -plntu | grep 80

Étape 4 - Créer un certificat SSL auto-signé

Allons dans le répertoire Nginx et créons-y un nouveau répertoire SSL :

cd /etc/nginx/
mkdir -p /etc/nginx/ssl/
cd ssl/

Générez ensuite le fichier de certificat SSL :

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/mailpile.key -out /etc/nginx/ssl/mailpile.crt

Et changez l'autorisation de la clé privée en 600 :

chmod 600 mailpile.key

Étape 5 - Configurer l'hôte virtuel Mailpile

Dans cette étape, je vais créer une nouvelle configuration d'hôte virtuel pour Mailpile. Cet hôte virtuel transmet simplement les requêtes entrantes sur le port 80 à Mailpile sur le port 33411. Nginx est un proxy inverse sécurisé et puissant.

Allez dans le répertoire "sites-available" de Nginx et créez un nouveau fichier appelé "mailpile":

cd /etc/nginx/site-available/
touch mailpile

Modifiez le fichier mailpile avec l'éditeur vim :

vim mailpile

Collez la configuration de l'hôte virtuel ci-dessous :

server {

    # Mailpile Domain
    server_name mail.mailpile.me;
    client_max_body_size 20m;

    # Nginx port 80 and 334
    listen 80;
    listen 443 default ssl;

    # SSL Certificate File
    ssl_certificate      /etc/nginx/ssl/mailpile.crt;
    ssl_certificate_key  /etc/nginx/ssl/mailpile.key;

    # Redirect HTTP to HTTPS
    if ($scheme = http) {
      return 301 https://$server_name$request_uri;
    }

    # Nginx Poroxy pass for mailpile
    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://localhost:33411;
        proxy_read_timeout  90;
        proxy_redirect http://localhost:33411 https://mail.mailpile.me;
    }
}

Activez maintenant l'hôte virtuel mailpile et redémarrez Nginx :

ln -s /etc/nginx/site-available/mailpile /etc/nginx/site-enabled/
systemctl restart nginx

Remarque :Assurez-vous de ne pas tuer le processus mailpile dans votre environnement virtuel.

Ensuite, visitez le domaine Mailpile (dans mon cas mail.mailpile.me) et vous serez redirigé vers la connexion https.

Sélectionnez la langue par défaut, dans mon cas "Anglais " et cliquez sur "Commencer ".

Tapez maintenant votre mot de passe pour vous connecter à l'application, assurez-vous d'avoir un mot de passe fort.

Et commencez à utiliser Mailpile.

La configuration de Mailpile est terminée, entrez votre mot de passe et appuyez sur "Entrée".

Vous pouvez voir la page de messagerie juste après la connexion :

Conclusion

Mailpile est un client de messagerie OpenSource gratuit qui se concentre sur le cryptage et la confidentialité des utilisateurs. Mailpile prend en charge plusieurs plates-formes, il peut être installé sur Mac, Windows ou Linux. Mailpile peut être installé sur votre propre serveur en tant que client de messagerie privé. Mailpile est basé sur python, il est facile à installer et à configurer, assurez-vous simplement d'exécuter python 2.7 avec gnupg 1.4.x. Nous pouvons utiliser Mailpile comme système autonome, mais pour de meilleures performances, nous utilisons Nginx comme proxy inverse.


Ubuntu
  1. Comment installer WordPress avec Nginx sur Ubuntu 18.04

  2. Comment installer phpMyAdmin avec Nginx sur Ubuntu 18.04

  3. Comment installer MediaWiki avec Nginx sur Ubuntu 16.04

  4. Comment installer Grav CMS avec Nginx sur Ubuntu 16.04

  5. Comment installer PHP 7.4 avec Nginx sur Ubuntu 20.04

Comment installer WordPress 5.x avec Nginx sur Ubuntu 18.04 / Ubuntu 16.04

Comment installer WordPress avec Nginx sur Ubuntu

Comment installer Nextcloud 13 sur Ubuntu 16.04 avec Nginx

Comment installer WonderCMS sur Ubuntu 20.04 (avec Nginx)

Comment installer Nginx sur Ubuntu 15.04

Comment installer phpMyAdmin avec Nginx sur Ubuntu 20.04 LTS