GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Mailpile con Nginx su Ubuntu 15.10

Mailpile è un client di posta open source che si concentra sulla crittografia e sulla privacy degli utenti. Mailpile semplifica la configurazione di PGP, ti consente di creare chiavi PGP direttamente nell'applicazione di posta elettronica e inviare messaggi crittografati con PGP. Mailpile è stato creato da Bjarni R. Einarsson nel 2013. Il software può essere installato su Mac OSX, Windows e Linux come client web based.

In questo tutorial, ti guiderò attraverso l'installazione di Mailpile su Ubuntu 15.10. Installeremo Mailpile come client basato sul Web con Nginx come proxy inverso.

Prerequisiti

  • Ubuntu 15.10 - 64 bit.
  • Privilegi root.

Passaggio 1 - Installa le dipendenze di Mailpile

Mailpile è scritto nel linguaggio di programmazione Python e abbiamo bisogno di un sacco di moduli Python per l'installazione. Installerò Mailpile in un ambiente virtuale python con virtualenv e userò python 2.7 per l'installazione. Per la crittografia, installerò GnuPG versione 1.4.x.

Per iniziare, aggiorna il database del tuo repository e installa i pacchetti dal repository di Ubuntu:

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

Ora controlla la versione python e la versione GnuPG:

python --version
gpg --version

Mailpile richiede il PIL (Python Imaging Library), pertanto installiamo libjpeg, zlib1g e python-dev:

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

Al termine dell'installazione siamo pronti per il passaggio successivo dell'installazione di Mailpile.

Fase 2 - Installa e configura Mailpile

In questo passaggio, installerò Mailpile nella directory "/opt/" e quindi creerò un nuovo ambiente virtuale Python per l'installazione. Prima di iniziare con l'installazione, clona il codice sorgente di Mailpile dal repository github nella directory opt.

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

Ora vai alla directory Mailpile e crea l'ambiente virtuale con python2.7 come versione python:

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

-p =Usa una versione python specifica, usiamo python 2.7.
--pacchetti del sito di sistema =Concedi all'ambiente virtuale l'accesso ai pacchetti globali del sito.
mailpile-env =Directory per il nuovo ambiente virtuale.

Quindi attiva l'ambiente virtuale, assicurati di  essere nella directory "/opt/Mailpile/" e infine attivalo.

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

Puoi controllare la riga di comando se l'ambiente virtuale è attivo:

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

Il nome dell'ambiente virtuale dovrebbe essere davanti al tuo nome utente e nome host sulla shell.

Quindi, installa i requisiti mailpile con il comando pip nell'ambiente mailpile-env:

pip install -r requirements.txt

Proviamo Mailpile con il comando "./mp" nell'ambiente virtuale:

./mp

Nello screenshot possiamo vedere che Mailpile è in esecuzione su localhost con la porta 33411.

Quindi proviamo ad accedervi con il comando curl dalla shell del server:

curl -I localhost:33411

Funziona correttamente quando ottieni il seguente risultato:

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

In realtà, in questo passaggio, potremmo dire a Mailpile di funzionare sul nostro IP pubblico in modo che tutti possano accedervi. Ma in questo tutorial useremo Nginx come proxy inverso per Mailpile sulla porta 33411.

Passaggio 3:installa Nginx

Installa Nginx con questo comando apt:

sudo apt-get install nginx

Ora verifica che Nginx sia in esecuzione sulla porta 80:

netstat -plntu | grep 80

Passaggio 4:crea un certificato SSL autofirmato

Andiamo nella directory Nginx e creiamo una nuova directory SSL:

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

Quindi genera il file del certificato SSL:

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

E cambia l'autorizzazione della chiave privata su 600:

chmod 600 mailpile.key

Passaggio 5 - Configura Mailpile Virtualhost

In questo passaggio creerò una nuova configurazione dell'host virtuale per Mailpile. Questo host virtuale invia semplicemente tramite proxy le richieste in arrivo sulla porta 80 a Mailpile sulla porta 33411. Nginx è un proxy inverso sicuro e potente.

Vai alla directory "siti-disponibili" di Nginx e crea un nuovo file chiamato "mailpile":

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

Modifica il file mailpile con l'editor vim:

vim mailpile

Incolla la configurazione dell'host virtuale di seguito:

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;
    }
}

Ora attiva il mailpile virtualhost e riavvia Nginx:

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

Nota :assicurati di non terminare il processo di posta nel tuo ambiente virtuale.

Successivamente, visita il dominio Mailpile (nel mio caso mail.mailpile.me) e verrai reindirizzato alla connessione https.

Seleziona la lingua predefinita, nel mio caso "Inglese " e fai clic su "Inizia ".

Ora digita la tua password per accedere all'applicazione, assicurati di avere una password complessa.

E inizia a utilizzare Mailpile.

La configurazione di Mailpile è terminata, inserisci la tua password e premi "Invio".

Puoi vedere la pagina della posta subito dopo il login:

Conclusione

Mailpile è un client di posta elettronica OpenSource gratuito che si concentra sulla crittografia e sulla privacy degli utenti. Mailpile ha il supporto multipiattaforma, può essere installato su Mac, Windows o Linux. Mailpile può essere installato sul tuo server come client di posta privato. Mailpile è basato su python, è facile da installare e configurare, assicurati solo di eseguire python 2.7 con gnupg 1.4.x. Possiamo utilizzare Mailpile come sistema autonomo, ma per prestazioni migliori utilizziamo Nginx come proxy inverso.


Ubuntu
  1. Come installare WordPress con Nginx su Ubuntu 18.04

  2. Come installare phpMyAdmin con Nginx su Ubuntu 18.04

  3. Come installare MediaWiki con Nginx su Ubuntu 16.04

  4. Come installare Grav CMS con Nginx su Ubuntu 16.04

  5. Come installare PHP 7.4 con Nginx su Ubuntu 20.04

Come installare WordPress 5.x con Nginx su Ubuntu 18.04 / Ubuntu 16.04

Come installare WordPress con Nginx su Ubuntu

Come installare Nextcloud 13 su Ubuntu 16.04 con Nginx

Come installare WonderCMS su Ubuntu 20.04 (con Nginx)

Come installare Nginx su Ubuntu 15.04

Come installare phpMyAdmin con Nginx su Ubuntu 20.04 LTS