GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Mailpile con Nginx en Ubuntu 15.10

Mailpile es un cliente de correo de código abierto que se enfoca en el cifrado y la privacidad de los usuarios. Mailpile facilita la configuración de PGP, le permite crear claves PGP directamente en la aplicación de correo electrónico y enviar mensajes cifrados con PGP. Mailpile fue creado por Bjarni R. Einarsson en 2013. El software se puede instalar en Mac OSX, Windows y Linux como cliente basado en web.

En este tutorial, lo guiaré a través de la instalación de Mailpile en Ubuntu 15.10. Instalaremos Mailpile como cliente basado en web con Nginx como proxy inverso.

Requisitos

  • Ubuntu 15.10 - 64 bits.
  • Privilegios de raíz.

Paso 1:instalar las dependencias de Mailpile

Mailpile está escrito en el lenguaje de programación python y necesitamos un montón de módulos python para la instalación. Instalaré Mailpile en un entorno virtual de python con virtualenv y usaré python 2.7 para la instalación. Para el cifrado, instalaré GnuPG versión 1.4.x.

Para comenzar, actualice la base de datos de su repositorio e instale los paquetes desde el repositorio de Ubuntu:

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

Ahora verifique la versión de python y la versión de GnuPG:

python --version
gpg --version

Mailpile requiere PIL (Python Imaging Library), por lo tanto, instalamos libjpeg, zlib1g y python-dev:

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

Cuando finalice la instalación, estaremos listos para el siguiente paso de la instalación de Mailpile.

Paso 2:instalar y configurar Mailpile

En este paso, instalaré Mailpile en el directorio "/opt/" y luego crearé un nuevo entorno virtual de python para la instalación. Antes de comenzar con la instalación, clone el código fuente de Mailpile del repositorio de github al directorio opt.

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

Ahora ve al directorio de Mailpile y crea el entorno virtual con python2.7 como la versión de python:

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

-p =Usar una versión específica de python, usamos python 2.7.
--system-site packages =Dar acceso al entorno virtual a los paquetes del sitio global.
mailpile-env =Directorio para el nuevo entorno virtual.

Luego active el entorno virtual, asegúrese de estar en el directorio "/opt/Mailpile/" y finalmente actívelo.

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

Puede comprobar la línea de comandos si el entorno virtual está activo:

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

El nombre del entorno virtual debe estar delante de su nombre de usuario y nombre de host en el shell.

A continuación, instale los requisitos de la pila de correo con el comando pip en el entorno mailpile-env:

pip install -r requirements.txt

Instalemos Mailpile con el comando "./mp" en el entorno virtual:

./mp

En la captura de pantalla podemos ver que Mailpile se está ejecutando en localhost con el puerto 33411.

Así que intentemos acceder a él con el comando curl desde el shell del servidor:

curl -I localhost:33411

Funciona correctamente cuando obtiene el siguiente resultado:

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

En realidad, en este paso, podríamos decirle a Mailpile que se ejecute en nuestra IP pública para que todos puedan acceder. Pero en este tutorial, usaremos Nginx como proxy inverso para Mailpile en el puerto 33411.

Paso 3:instalar Nginx

Instale Nginx con este comando apt:

sudo apt-get install nginx

Ahora verifique que Nginx se esté ejecutando en el puerto 80:

netstat -plntu | grep 80

Paso 4:crear un certificado SSL autofirmado

Vayamos al directorio Nginx y creemos un nuevo directorio SSL allí:

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

Luego genere el archivo de certificado SSL:

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

Y cambia el permiso de la clave privada a 600:

chmod 600 mailpile.key

Paso 5:configurar Mailpile Virtualhost

En este paso, crearé una nueva configuración de host virtual para Mailpile. Este host virtual solo envía solicitudes entrantes en el puerto 80 a Mailpile en el puerto 33411. Nginx es un proxy inverso seguro y potente.

Vaya al directorio de "sitios disponibles" de Nginx y cree un nuevo archivo llamado "pila de correo":

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

Edite el archivo de la pila de correo con el editor vim:

vim mailpile

Pegue la configuración de host virtual a continuación:

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

Ahora active el host virtual de la pila de correo y reinicie Nginx:

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

Nota :Asegúrese de no eliminar el proceso de pila de correo en su entorno virtual.

A continuación, visita el dominio de Mailpile (en mi caso mail.mailpile.me) y será redirigido a la conexión https.

Seleccione el idioma predeterminado, en mi caso "Inglés " y haga clic en "Comenzar ".

Ahora escriba su contraseña para iniciar sesión en la aplicación, asegúrese de tener una contraseña segura.

Y empieza a usar Mailpile.

La configuración de Mailpile ha finalizado, ingresa tu contraseña y presiona "Enter".

Puede ver la página de correo justo después de iniciar sesión:

Conclusión

Mailpile es un cliente de correo electrónico gratuito de código abierto que se centra en el cifrado y la privacidad del usuario. Mailpile tiene soporte multiplataforma, se puede instalar en Mac, Windows o Linux. Mailpile se puede instalar en su propio servidor como un cliente de correo privado. Mailpile está basado en python, es fácil de instalar y configurar, solo asegúrese de ejecutar python 2.7 con gnupg 1.4.x. Podemos usar Mailpile como un sistema independiente, pero para un mejor rendimiento usamos Nginx como proxy inverso.


Ubuntu
  1. Cómo instalar WordPress con Nginx en Ubuntu 18.04

  2. Cómo instalar phpMyAdmin con Nginx en Ubuntu 18.04

  3. Cómo instalar MediaWiki con Nginx en Ubuntu 16.04

  4. Cómo instalar Grav CMS con Nginx en Ubuntu 16.04

  5. Cómo instalar PHP 7.4 con Nginx en Ubuntu 20.04

Cómo instalar WordPress 5.x con Nginx en Ubuntu 18.04 / Ubuntu 16.04

Cómo instalar WordPress con Nginx en Ubuntu

Cómo instalar Nextcloud 13 en Ubuntu 16.04 con Nginx

Cómo instalar WonderCMS en Ubuntu 20.04 (con Nginx)

Cómo instalar Nginx en Ubuntu 15.04

Cómo instalar phpMyAdmin con Nginx en Ubuntu 20.04 LTS