GNU/Linux >> Tutoriales Linux >  >> OpenSuse

Cómo instalar Pure-FTPd con TLS y usuarios virtuales en OpenSUSE Leap 42.1

Pure-FTPd es un servidor FTP gratuito y liviano basado en Troll-FTPd, el desarrollo comenzó en 2001 y se ejecuta en muchos sistemas operativos similares a Unix, incluidos Linux, *BSD, Solaris y HP-UX. Pure-FTPd tiene muchas características como dominios virtuales, directorio de inicio chroot, usuarios virtuales, compatibilidad con TLS/SSL, cuota virtual y muchas más.

En este tutorial, le mostraré cómo instalar y configurar pure-ftpd en OpenSUSE Leap 42.1. Le mostraré cómo configurar ftpd puro con TLS/SSL y luego configurar usuarios virtuales.

Requisito previo

  • OpenSUSE Leap 42.1
  • Privilegios de raíz
  • OpenSUSE, conocimiento de Zypper

Paso 1:instalar y configurar SuSEfirewall2

SuSEfirewall2 es un script para generar la configuración del firewall en el archivo '/etc/sysconfig/SuSEfirewall2'. Instalaremos SuSEfirewall2 y luego abriremos los puertos para SSH y el servicio FTP.

Instale SuSEfirewall2 con zypper:

zypper in SuSEfirewall2

Luego, edite el archivo de configuración '/etc/sysconfig/SuSEfirewall2' con vim:

vim /etc/sysconfig/SuSEfirewall2

Agregue los nuevos servicios ssh y FTP a la línea 253:

FW_SERVICES_EXT_TCP="ssh ftp"

Guardar y salir.

Ahora inicie SuSEfirewall2 con el comando systemctl:

systemctl start SuSEfirewall2

Paso 2:instalar y configurar Pure-FTPd

En este paso, instalaremos pure-ftpd con OpenSSL para la configuración de TLS/SSL y configuraremos el usuario y el grupo de pure-ftpd.

Instale las aplicaciones con zypper como se muestra a continuación:

zypper in pure-ftpd openssl

Ahora agregue el nuevo grupo 'ftpgroup ' y el nuevo usuario para el maestro 'FTP user' llamado 'ftpuser ' al grupo.

groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser

Vaya al directorio pure-ftpd y edite el archivo de configuración 'pure-ftpd.conf' con el editor vim:

cd /etc/pure-ftpd/
vim pure-ftpd.conf

Cambie el valor en la línea 81 a 'sí' para deshabilitar al usuario anónimo.

NoAnonymous                 yes

Descomente la línea 131 para configurar el backend. Pure-ftpd tiene soporte para MySQL, PostgreSQL y LDAP como backend, pero en este tutorial usaremos 'PureDB' para el respaldo.

PureDB                        /etc/pure-ftpd/pureftpd.pdb

Comente la línea PAMAuthentication para deshabilitar la autenticación PAM en la línea 141, ya que usaremos PureDB como fuente de autenticación.

#PAMAuthentication             yes

Guardar y salir.

Paso 3:configurar TLS/SSL para Pure-FTPd

Genere un nuevo archivo de certificado autofirmado en el directorio '/etc/ssl/private' con el comando openssl:

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

Cambie los permisos del archivo del certificado a 0600:

chmod 600 /etc/ssl/private/pure-ftpd.pem

A continuación, vuelva al directorio pure-ftpd y edite el archivo de configuración para habilitar la compatibilidad con TLS/SSL para la conexión del cliente.

cd /etc/pure-ftpd/
vim pure-ftpd.conf

Descomente la línea 439 para habilitar TLS.

TLS                      1

Descomente la línea 449 y agregue una nueva opción para que sea más segura.

TLSCipherSuite           HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3

Descomente la línea 445 para definir el archivo de certificado.

CertFile                 /etc/ssl/private/pure-ftpd.pem

Guardar y salir.

Ahora inicie pure-ftpd con el comando systemctl:

systemctl start pure-ftpd

Paso 4:configurar usuarios virtuales

Pure-FTPd proporciona funciones para crear y utilizar usuarios virtuales en lugar de usuarios del sistema real (Linux). Pure-FTPd proporciona varios backends de autenticación y la configuración del usuario virtual depende del backend que utiliza el servidor. En el paso 2, configuramos 'PureDB' como backend.

Podemos crear un nuevo usuario virtual con el comando 'pure-pw' proporcionado por pure-ftpd. En este paso, crearemos un nuevo usuario virtual llamado 'shiro' con el directorio '/srv/ftp/shiro' como el directorio de inicio de ftp y el usuario se conecta a ese directorio para que no pueda acceder a los otros directorios del sistema.

Cree el nuevo usuario virtual con pure-pw:

pure-pw useradd shiro -u ftpuser -d /srv/ftp/shiro

Cree el directorio para el usuario virtual y cambie el propietario de ese directorio al 'usuario de FTP' maestro.

mkdir -p /srv/ftp/shiro
chown -R ftpuser.ftpgroup /srv/ftp/shiro

A continuación, debemos guardar los cambios con el siguiente comando:

pure-pw mkdb

Ahora que el usuario shiro está listo para usarse, podemos usar FTPp desde la línea de comandos o FileZilla para la interfaz GUI para conectarnos al servidor.

Nota:

pure-pw tiene más opciones de comando, puede usar 'ayuda de pure-pw ' para ver todos los comandos útiles.

Paso 5 - Prueba

Usaré el comando FTP en la terminal para la prueba. Abre tu terminal y escribe "ftp":

ftp

Luego ingrese la ip del servidor pure-ftpd:

open 192.168.43.69

Inicie sesión con el usuario 'shiro' y la contraseña y luego presione 'Enter'.

Intente cargar el archivo con el comando 'put':

put picture.png mypict.png

Ahora verá el archivo mypict.png en el servidor con el siguiente comando ls:

ls


OpenSuse
  1. Cómo instalar PostgreSQL y phpPgAdmin en OpenSUSE Leap 42.1

  2. Cómo instalar Seafile con Nginx en openSUSE Leap 42.1

  3. Cómo instalar ProFTPd con TLS en OpenSuse 13.2

  4. Cómo instalar Lighttpd con PHP5 FastCGI y MySQL en openSUSE 12.1

  5. Cómo instalar Nginx con PHP-FPM y MySQL en openSUSE 12.1

Cómo instalar y configurar OpenVPN en OpenSUSE Leap 42.1

Cómo instalar WordPress con HHVM y Nginx en OpenSUSE Leap 42.1

Cómo instalar un escritorio KDE OpenSUSE Leap 42.1

Cómo instalar ownCloud 9 con Nginx en OpenSUSE Leap 42.1

Cómo instalar Skype en openSUSE Leap

Cómo instalar Dropbox en openSUSE Leap 42.2