Configurar Pure-FTPd con TLS en Debian 9

Pure-FTPd es un servidor FTP rápido y liviano creado teniendo en cuenta la seguridad. En este tutorial, le mostraré cómo instalar y usar Pure FTP en 4 sencillos pasos. Esta guía explica cómo instalar Pure FTPd en Debian 9.

Paso uno - Instalación

Pure-FTPd está en el repositorio estable de Debian, por lo que no es necesario agregar repositorios adicionales a su sistema.

Ejecute el siguiente comando con privilegios de root:

apt install -y pure-ftpd-common pure-ftpd 

Paso dos - Configuración

Hay muchas opciones que puede usar para cambiar el comportamiento de la aplicación. Estas opciones podrían aplicarse al demonio de Pure-FTPd al inicio o puede hacer que sean persistentes creando los archivos necesarios dentro del confdirectorio.

Queremos:

  • Crea usuarios virtuales.
  • Crear directorios de inicio para los usuarios de forma automática.
  • Limitar ( chroot) a los usuarios para que solo tengan acceso a su propio directorio de inicio.

Habilite la base de datos de Pure-FTPd y deshabilite la autenticación PAM y Unix para habilitar a los usuarios virtuales:

ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
echo no > /etc/pure-ftpd/conf/PAMAuthentication
echo no > /etc/pure-ftpd/conf/UnixAuthentication

Configure Pure-FTPd para crear directorios de inicio para los usuarios en su primer inicio de sesión:

echo "yes" > /etc/pure-ftpd/conf/CreateHomeDir

Chroot a todos.

echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone

Si está interesado en conocer otras opciones, visite la página de documentación oficial .

Paso tres: crear usuarios

Pure-FTPd puede manejar usuarios virtuales, lo que significa que se mantienen en la base de datos de Pure-FTPd y no están relacionados con los usuarios del sistema Linux.

Para que Pure-FTPd administre archivos con usuarios virtuales, necesitamos crear un usuario y grupo de Linux en el que se asociarán todos los usuarios virtuales. Todos los usuarios virtuales pueden usar el mismo usuario y grupo del sistema siempre que hayan sido eliminados.

Ejecute los siguientes comandos para crear el usuario y el grupo del sistema:

groupadd ftpusr
useradd -g ftpusr -d /dev/null -s /etc ftpusr

Nota : No queremos que este usuario tenga un directorio de inicio o capacidad de inicio de sesión.

Cree nuestro directorio raíz FTP:

mkdir /home/FTP

Cree un usuario virtual en Pure-FTPd:

pure-pw useradd alex -u ftpusr -g ftpusr -d /home/FTP/alex 

Hemos agregado nuestro primer usuario virtual ( alex) y lo hemos asociado con el usuario / grupo del sistema ( ftpusr). Todos los archivos con los que escriba alexserán propiedad ftpusrdel sistema.

Actualice la base de datos de Pure-FTPd:

pure-pw mkdb

Verifique la información del usuario:

pure-pw show alex

Login              : alex
Password           : <encrypted password>
UID                : 1000 (ftpusr)
GID                : 1000 (ftpusr)
Directory          : /home/FTP/alex/./
Full name          : 
Download bandwidth : 0 Kb (unlimited)
Upload   bandwidth : 0 Kb (unlimited)
Max files          : 0 (unlimited)
Max size           : 0 Mb (unlimited)
Ratio              : 0:0 (unlimited:unlimited)
Allowed local  IPs : 
Denied  local  IPs : 
Allowed client IPs : 
Denied  client IPs : 
Time restrictions  : 0000-0000 (unlimited)
Max sim sessions   : 0 (unlimited)

Para hacer la vida más fácil, use el siguiente script para agregar cuentas FTP:

echo -e  '#!/bin/bash\nread -p "Enter UserName: " usrname\npure-pw useradd $usrname -u ftpusr -g ftpusr -d /home/FTP/$usrname && pure-pw mkdb'  > /usr/sbin/ftp-createacc

chmod u+x /usr/sbin/ftp-createacc

Ahora, crear cuentas FTP es simple:

ftp-createacc

Enter UserName: mike
Password: 
Enter it again:

Paso cuatro: soporte TLS

Primero, necesitamos instalar OpenSSL.

apt install -y openssl

Forzar Pure-FTPd a usar TLS, o podemos hacerlo opcional, lo que significa que se aceptan conexiones inseguras y TLS

# force TLS
echo 2 > /etc/pure-ftpd/conf/TLS

# insecure + TLS
echo 1 > /etc/pure-ftpd/conf/TLS

Cree un directorio para almacenar nuestras claves.

mkdir -p /etc/ssl/pure-ftpd

Genere una clave de paquete (clave privada y clave pública).

openssl req -x509 -nodes -days 730 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Reinicia el pure-ftpddemonio.

systemctl restart pure-ftpd

Si tiene un firewall instalado en su sistema, o su servidor está detrás de NAT, debe definir puertos pasivos en Pure-FTPd y abrir estos puertos en su firewall, de lo contrario recibirá errores como estos:

Server sent passive reply with unroutable address. Passive mode failed.

Failed to retrieve directory listing.

500 I won't open a connection to 192.168.1.4 (only to 10.10.10.10).

Establecer puertos pasivos en Pure-FTPd:

echo "40110 42210" > /etc/pure-ftpd/conf/PassivePortRange

Reinicie pure-ftpdpara aplicar el cambio.

systemctl restart pure-ftpd

En su firewall, abra el rango de puertos entrantes de 40110 a 42210 , protocolo TCP.

FTP es inseguro por naturaleza, pero también es rápido y fácil de configurar. Para una solución más segura, use SFTP en su lugar.

Dejar un comentario

ZPanel y Sentora en CentOS 6 x64

ZPanel y Sentora en CentOS 6 x64

ZPanel, un panel de control de alojamiento web popular, se bifurcó en 2014 a un nuevo proyecto llamado Sentora. Aprende a instalar Sentora en tu servidor con este tutorial.

Cómo instalar Vtiger CRM Open Source Edition en CentOS 7

Cómo instalar Vtiger CRM Open Source Edition en CentOS 7

Aprende cómo instalar Vtiger CRM, una aplicación de gestión de relaciones con el cliente, en CentOS 7 para aumentar tus ventas y mejorar el servicio al cliente.

Cómo instalar el servidor Counter-Strike 1.6 en Linux

Cómo instalar el servidor Counter-Strike 1.6 en Linux

Esta guía completa le mostrará cómo configurar un servidor Counter-Strike 1.6 en Linux, optimizando el rendimiento y la seguridad para el mejor juego. Aprende los pasos más recientes aquí.

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.