0% encontró este documento útil (0 votos)
53 vistas11 páginas

Tutorial de ProFTPd para Ubuntu - Claude AI

Este tutorial proporciona una guía completa para la instalación y configuración de ProFTPD en Ubuntu, abarcando desde los requisitos previos hasta configuraciones avanzadas de seguridad y optimización. Incluye pasos detallados para la instalación, configuración de usuarios, implementación de SSL/TLS y ajustes de firewall. También se ofrecen soluciones a problemas comunes y recomendaciones para el mantenimiento del servidor FTP.

Cargado por

prototipado
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como ODT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
53 vistas11 páginas

Tutorial de ProFTPd para Ubuntu - Claude AI

Este tutorial proporciona una guía completa para la instalación y configuración de ProFTPD en Ubuntu, abarcando desde los requisitos previos hasta configuraciones avanzadas de seguridad y optimización. Incluye pasos detallados para la instalación, configuración de usuarios, implementación de SSL/TLS y ajustes de firewall. También se ofrecen soluciones a problemas comunes y recomendaciones para el mantenimiento del servidor FTP.

Cargado por

prototipado
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como ODT, PDF, TXT o lee en línea desde Scribd

Tutorial de Instalación y Configuración de

ProFTPd en Ubuntu
Introducción
ProFTPD es un servidor FTP potente y altamente configurable para sistemas Linux/Unix. Este
tutorial te guiará paso a paso en el proceso de instalación y configuración de ProFTPD en un
servidor Ubuntu, cubriendo desde la instalación básica hasta configuraciones de seguridad
avanzadas.

Índice
1. Requisitos previos
2. Instalación de ProFTPD
3. Configuración básica
4. Configuración de usuarios
5. Configuración de seguridad
6. Configuración de SSL/TLS
7. Configuración de firewall
8. Ejemplos de configuración avanzada
9. Solución de problemas
10.Optimización y mantenimiento

Requisitos previos
Antes de comenzar, necesitarás:
• Un servidor con Ubuntu (18.04, 20.04, 22.04 o superior)
• Acceso root o usuario con privilegios sudo
• Conexión a Internet para descargar paquetes
• Conocimientos básicos de administración de servidores Linux

Instalación de ProFTPD
Actualización del sistema
Primero, actualiza los repositorios e instala las actualizaciones disponibles:
bash

sudo apt update


sudo apt upgrade -y

Instalación del paquete ProFTPD


Instala ProFTPD desde los repositorios oficiales de Ubuntu:
bash

sudo apt install proftpd -y

Durante la instalación, es posible que se te pregunte si deseas ejecutar ProFTPD como un servidor
independiente o desde inetd. Selecciona la opción "standalone" (independiente), ya que proporciona
mejor rendimiento y es la configuración más común.

Verificar el estado del servicio


Una vez instalado, verifica que el servicio esté en ejecución:
bash

sudo systemctl status proftpd

Si el servicio no está activo, puedes iniciarlo con:


bash

sudo systemctl start proftpd

Para asegurarte de que ProFTPD se inicie automáticamente durante el arranque del sistema:
bash

sudo systemctl enable proftpd

Configuración básica
El archivo de configuración principal de ProFTPD se encuentra en
/etc/proftpd/proftpd.conf. Antes de modificarlo, es recomendable hacer una copia de
seguridad:
bash

sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf.original

Ahora, edita el archivo de configuración:


bash

sudo nano /etc/proftpd/proftpd.conf

Configuración básica recomendada


Aquí hay algunas configuraciones básicas recomendadas. Puedes modificar o añadir estas líneas en
tu archivo de configuración:
# Identidad del servidor
ServerName "Mi Servidor FTP"
ServerType standalone
ServerIdent on "FTP Server Ready."

# Configuración global
DefaultServer on
Port 21
Umask 022
MaxInstances 30
User proftpd
Group nogroup

# Opciones de timeout y conexión


TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

# Directorios y archivos del sistema


DefaultRoot ~
RequireValidShell off

Después de realizar cambios en la configuración, reinicia ProFTPD para aplicarlos:


bash

sudo systemctl restart proftpd

Configuración de usuarios
Creación de usuarios FTP
Puedes utilizar los usuarios del sistema para acceder al servidor FTP. Para crear un nuevo usuario:
bash

sudo adduser ftpuser

Sigue las instrucciones para establecer una contraseña y otra información opcional.

Crear un directorio para FTP y asignar permisos


bash

sudo mkdir -p /srv/ftp/ftpuser


sudo chown ftpuser:ftpuser /srv/ftp/ftpuser
Restringir usuarios a un directorio específico (chroot)
Por defecto, la configuración DefaultRoot ~ en ProFTPD ya restringe a los usuarios a su
directorio personal. Sin embargo, si deseas configurar directorios específicos para usuarios FTP:
1. Modifica el archivo de configuración:
bash

sudo nano /etc/proftpd/proftpd.conf

2. Añade o modifica la siguiente sección:


<Directory /srv/ftp/ftpuser>
AllowOverwrite on
<Limit ALL>
AllowUser ftpuser
DenyAll
</Limit>
</Directory>

Usuarios virtuales
Para crear usuarios FTP que no sean usuarios del sistema (usuarios virtuales), puedes utilizar
módulos como mod_auth_file o mod_sql. Para una configuración básica con
mod_auth_file:

1. Crea un archivo de contraseñas:


bash

sudo apt install apache2-utils


sudo htpasswd -c /etc/proftpd/ftpd.passwd usuario_virtual

2. Añade la siguiente configuración a proftpd.conf:


# Módulo para autenticación por archivo
LoadModule mod_auth_file.c

# Configuración de autenticación para usuarios virtuales


AuthUserFile /etc/proftpd/ftpd.passwd
AuthOrder mod_auth_file.c

Configuración de seguridad
Limitar acceso por IP
Para permitir o denegar el acceso desde direcciones IP específicas:
<Limit LOGIN>
Order Allow,Deny
Allow from 192.168.1.0/24
Deny from all
</Limit>

Limitar comandos FTP


Para restringir ciertos comandos FTP:
<Limit SITE_CHMOD>
DenyAll
</Limit>

Configurar mensajes personalizados


Puedes configurar mensajes para diferentes eventos:
DisplayLogin /etc/proftpd/welcome.msg
DisplayChdir .message

Crea el archivo de bienvenida:


bash

sudo nano /etc/proftpd/welcome.msg

Añade el mensaje de bienvenida:


*********************************************************
* Bienvenido al servidor FTP *
* Todo el acceso no autorizado está prohibido *
* Las actividades están siendo monitoreadas y grabadas *
*********************************************************

Configuración de SSL/TLS
Para implementar una conexión FTP segura (FTPS), necesitas configurar SSL/TLS:

Instalar módulo TLS


bash

sudo apt install proftpd-mod-crypto

Generar certificados SSL


bash
sudo mkdir -p /etc/proftpd/ssl
sudo openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout
/etc/proftpd/ssl/proftpd.key.pem

Configurar permisos para los certificados


bash

sudo chmod 600 /etc/proftpd/ssl/proftpd.*

Configurar TLS
Edita el archivo de configuración de TLS:
bash

sudo nano /etc/proftpd/tls.conf

Asegúrate de que contenga o añade lo siguiente:


<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol TLSv1.2

# Certificados
TLSRSACertificateFile /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key.pem

# Autenticación
TLSVerifyClient off

# Requerir TLS para diversos comandos


TLSRequired on

# Opciones de sesión
TLSOptions NoSessionReuseRequired
TLSSessionCache shm:/tmp/TLSSessionCache
</IfModule>

Asegúrate de que esta configuración esté incluida en el archivo principal:


bash

sudo nano /etc/proftpd/proftpd.conf


Añade o verifica que exista la siguiente línea:
Include /etc/proftpd/tls.conf

Reinicia ProFTPD:
bash

sudo systemctl restart proftpd

Configuración de firewall
Si tu servidor tiene un firewall activo (como UFW en Ubuntu), necesitarás configurarlo para
permitir tráfico FTP:

Configuración de UFW
bash

# Puerto FTP estándar


sudo ufw allow 21/tcp

# Puertos para FTP pasivo (ajusta el rango según tu configuración)


sudo ufw allow 49000:50000/tcp

Configuración de FTP pasivo


Para que el FTP pasivo funcione correctamente a través de firewalls, añade lo siguiente a
proftpd.conf:
# Configuración de FTP pasivo
PassivePorts 49000 50000
MasqueradeAddress tu-ip-publica-o-dominio.com

Reemplaza tu-ip-publica-o-dominio.com con tu dirección IP pública o nombre de


dominio.

Ejemplos de configuración avanzada


Limitar la velocidad de transferencia
Para limitar el ancho de banda utilizado por los usuarios:
# Limitar velocidad global
TransferRate STOR 2048
TransferRate RETR 8192

# Límites específicos para un grupo


<Directory /srv/ftp/grupo_limitado>
TransferRate STOR 1024
TransferRate RETR 4096
</Directory>

Añadir un banner personalizado


ServerIdent on "Servidor FTP Corporativo"
AccessGrantMsg "Bienvenido %u, acceso concedido."

Configurar cuotas de disco


Para habilitar cuotas de disco, necesitas instalar el módulo correspondiente:
bash

sudo apt install proftpd-mod-quotatab

Luego, añade la configuración siguiente a proftpd.conf:


# Cargar módulo de cuotas
LoadModule mod_quotatab.c
LoadModule mod_quotatab_file.c

# Configuración de cuotas
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on

# Archivos de cuotas
QuotaLimitTable file:/etc/proftpd/quota.tab
QuotaTallyTable file:/etc/proftpd/quota.tally

Crea el archivo de cuotas:


bash

sudo nano /etc/proftpd/quota.tab

Añade líneas como esta para definir cuotas:


# username/groupname/class limit_type bytes/files limit_value
ftpuser user hard bytes 104857600
ftpuser user hard files 100
Solución de problemas
Verificar registros (logs)
Los registros de ProFTPD son esenciales para solucionar problemas:
bash

sudo tail -f /var/log/proftpd/proftpd.log

Para registros específicos de TLS:


bash

sudo tail -f /var/log/proftpd/tls.log

Problemas comunes y soluciones


Problema de conexión rechazada
Si los clientes no pueden conectarse, verifica:
1. Estado del servicio:
bash

sudo systemctl status proftpd

2. Configuración del firewall:


bash

sudo ufw status

3. Problemas de autenticación en los registros:


bash

sudo grep "failed" /var/log/proftpd/proftpd.log

Problemas con FTP pasivo


Si el modo pasivo no funciona:
1. Verifica que PassivePorts y MasqueradeAddress estén configurados
correctamente.
2. Asegúrate de que los puertos pasivos estén abiertos en el firewall.
3. Comprueba si hay NAT/enrutamiento que pueda estar bloqueando las conexiones.

Problemas con SSL/TLS


Si hay problemas con las conexiones seguras:
1. Verifica que los certificados existan y tengan los permisos correctos.
2. Comprueba los registros TLS.
3. Asegúrate de que el cliente esté configurado para usar el modo FTPS explícito.

Optimización y mantenimiento
Monitoreo del servicio
Para monitorear el uso de recursos y conexiones activas:
bash

sudo ftptop

Si no está instalado:
bash

sudo apt install proftpd-ftptop

Copia de seguridad de la configuración


Es recomendable hacer copias de seguridad regulares de tu configuración:
bash

sudo cp -r /etc/proftpd /etc/proftpd_backup_$(date +%Y%m%d)

Actualización segura
Para actualizar ProFTPD de manera segura:
bash

sudo apt update


sudo apt install --only-upgrade proftpd*

Conclusión
Ahora tienes un servidor ProFTPD completamente funcional y seguro en tu sistema Ubuntu.
Recuerda que la configuración óptima dependerá de tus necesidades específicas y del entorno en el
que se ejecute el servidor.
Es importante mantener el servidor actualizado y revisar periódicamente los registros de seguridad
para detectar posibles problemas o intentos de acceso no autorizado.

Referencias adicionales
• Documentación oficial de ProFTPD
• Directivas de configuración de ProFTPD
• Wiki de ProFTPD

También podría gustarte