Servidor FTP con proftp en Ubuntu / Debian
En este tutorial vamos a hablar de cómo instalar y configurar un servidor FTP con restricción de usuarios en Debian / Ubuntu, proftp es un servidor de ftp robusto y fácil de configurar vamos a ver como lo instalamos:
Este tutorial está basado en la sigueinte guía http://ubuntuforums.org/showthread.php?t=79588
Primero para instalarlo ejecutamos el siguiente comando:
Ubuntu
sudo apt-get install proftpd
Debian (como root)
apt-get install proftpd
Aparece una pantalla para que elijas entre dos opciones inetd o standalone, ahorita no voy a explicar cuales son las ventajas y desventajas de cada una te acosejo que elijas standalone a menos que ya hayas utilizado inetd.
Luego por razones de seguridad vamos a crear un shell falso para el acceso de ftp para esto vamos a agregar una linea en el archivo /etc/shell:
Ubuntu
gedit sudo /etc/shells
Debian
nano /etc/shells
Nota: Si estamos en la consola también podemos editar los archivos con vim
Y agregamos la siguiente línea al final del archivo:
/bin/false
Esto va a evitar que cualquier usuario que utilice el ftp puede accesar a nuestra consola de comandos
Ahora creamos un directorio donde se guardarán los archivos que compartiremos en el ftp:
cd /home sudo mkdir FTP-public
Ahora vamos a crear un usuario para accesar al ftp con los siguientes comandos:
sudo useradd userftp -p tu_password -d /home/FTP-public -s /bin/false
Claro puedes cambiar userftp por el nombre que quieras y coloca el password en donde dice tu_password.
Analicemos un momento este comando, useradd permite añadir un usuario le estamos dando las siguientes opciones: -p para definir el password, -d para definir cual va a ser el directorio principal o home del usuario y -s para indicarle cual es el shell por defecto del usuario, para más información de este comando puedes colocar man useradd en la consola.
Ahora vamos a crear dos directorios más para separar los archivos de subida y bajada:
sudo mkdir /home/FTP-public/download
sudo mkdir /home/FTP-public/upload
Ahora tenemos que especificar los permisos de lectura y escritura para estos directorios:
sudo chmod 755 /home/FTP-public sudo chmod 755 /home/FTP-public/download sudo chmod 777 /home/FTP-public/upload
Es importante recalcar que si tienes instalado un servidor Web como el que se explica aquí puedes crear las carpetas dentro de /var/www/tu_sitio para que tengas un FTP dentro del sitio web que estes usando y crear varios usuarios de FTP con distintos privilegios.
Ahora veamos el archivo de configuración del proftp que se encuentra en /etc/proftpd/proftpd.conf para esto ejecutamos:
sudo gedit /etc/proftpd/proftpd.conf
o si lo queremos editar en la consola con vim
sudo vim /etc/proftpd/proftpd.conf
A continuación presento el archivo de configuración proftpd.conf los comentarios de que hace cada directiva están dentro del archivo:
# Para aplicar los cambios tienes que reiniciar el servidor FTP AllowOverwrite on AuthAliasOnly on # Escoge aqui un alias para tu usuario de FTP UserAlias vensign userftp ServerName "Vensign FTP" ServerType standalone DeferWelcome on MultilineRFC2228 on DefaultServer on ShowSymlinks off TimeoutNoTransfer 600 TimeoutStalled 100 TimeoutIdle 2200 DisplayFirstChdir .message ListOptions "-l" RequireValidShell off TimeoutLogin 20 RootLogin off # Aqui creamos los archivos de logs que son de mucha utilidad en caso de fallos ExtendedLog /var/log/ftp.log TransferLog /var/log/xferlog SystemLog /var/log/syslog.log #DenyFilter *.*/ # No vamos a utilizar el archivo /etc/ftpusers file # (sirve para colocar adentro los usuarios que no queremos que se conecten) UseFtpUsers off # Permitir reiniciar una descarga (muy util en caso de que se caiga la conexion) AllowStoreRestart on #El puerto 21 es el estandar para FTP, #es bueno cambiarlo por razones de seguridad #aqui escogi el 1980 puedes escoger el que quieras Port 1980 # Para evitar ataques de DoS (negacion de servicio), se recomienda # colocar un maximo de 30 procesos hijos. Si necesitas mas conexiones # que esta simplemente aumenta este valor. Esto solo funciona con el # servidor en modo standalone MaxInstances 8 # Coloca el usuario y el grupo al que el servidor normalmente funciona User nobody Group nogroup # Umask 022 es un buen valor por defecto para evitar que nuevos archivos y directorios # sean escribibles por todo el mundo o por el grupo. Umask 022 022 PersistentPasswd off MaxClients 8 MaxClientsPerHost 8 MaxClientsPerUser 8 MaxHostsPerUser 8 # Despliega un mensaje despues de que ingresa un usuario AccessGrantMsg "Bienvenidos a Vensign !!!" # Este mensaje es mostrado por cada intento de ingreso sea bueno o no ServerIdent on "estas en Vensign" # Coloca a /home/FTP-public como el directorio principal (home) DefaultRoot /home/FTP-public # Bloquea a todos los usuarios al directorio home que definimos DefaultRoot ~ MaxLoginAttempts 5 #Ingresos validos solo permitimos a userftp <Limit LOGIN> AllowUser userftp DenyALL </Limit> #Definimos los permisos de los directorios que creamos para el FTP <Directory /home/FTP-public> Umask 022 022 AllowOverwrite off <Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD> DenyAll </Limit> </Directory> <Directory /home/FTP-public/download/*> Umask 022 022 AllowOverwrite off <Limit MKD STOR DELE XMKD RNEF RNTO RMD XRMD> DenyAll </Limit> </Directory> <Directory> /home/FTP-public/upload/> Umask 022 022 AllowOverwrite on <Limit READ RMD DELE> DenyAll </Limit> <Limit STOR CWD MKD> AllowAll </Limit> </Directory>
Con este archivo de configuración tendrás un servidor FTP funcionando con el usuario vensign (como alias de userftp) y con el password que colocaste más arriba, cuando creaste el usuario, además definimos como puerto de conexión 1980, para que haga efecto la configuración debemos reiniciar el servidor FTP ejecutando:
sudo /etc/init.d/proftpd restart
Para conectarte desde un cliente FTP debes recordar colocar como puerto de conexión 1980 como lo definimos en el archivo de configuración.
Bueno eso es todo por ahora, después colocaré un par de tutoriales más acerca de proftp para podernos conectar vía SSL y algunas otras cosas de seguridad.
Espero sus comentarios
Saludos
Olivers
Otros artículos que te pueden interesar
- Instalando Samba en Ubuntu / Debian para compartir archivos e impresoras en redes Windows
- Instalar un Servidor LAMP en Ubuntu/Debian
- Curso de instalación y configuración de Samba en Ubuntu / Debian por IRC
- Instalar Shorewall Firewall para Debian y Ubuntu
- Como cambiar y recuperar la clave en un servidor MySQL



Creo que en lugar de “/bin/falso” deberia ser “/bin/false”.
MFC
Hola Miguel, tienes razon un error de tipeo, gracias por la acotación ya fue corregido
Saludos
Olivers
Hola, me sale un error al momento de reiniciar el ftp:
IPv6 getaddrinfo ‘localhost’ error: Name or service not known
Como puedo solucionarlo?
Muchas Gracias
(ojala me contesten)
Hola Eduardo lo más seguro es que no tienes en tu archivo de /etc/host definido tu localhost. Para solucionarlo haz lo siguiente:
gedit /etc/hosts
Y agrega esta línea si no existe:
127.0.0.1 localhost.localdomain localhost
Con eso debería funcionar bien, cualquier cosa vuelve a escribir
Saludos
Olivers
Hola nuevamente, te comento que esa línea la tengo en /etc/hosts. Te muestro el contenido de ese archivo:
127.0.0.1 localhost.localdomain localhost
10.80.1.112 ubuntu
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Que otra cosa puede ser. Gracias nuevamente.
Hola he seguido todos los pasos pero tengo un problema con los usuarios, solo puedo entrar con mi usuario y contraseña con la que entro al sistema, y se supone que debo entrar con el usurio que definí con useradd, hago esto:
sudo useradd alejandro -p aqui_mi_password -d /home/FTP-public -s /bin/false
pero al hacer ftp localhost, ingreso mi usuario(alejandro) y mi password y me dice que login incorrecto. Hay que poner ese usuario en alguna parte del archivo proftpd.conf?????
bueno eso
Hola Alejandro, en el archivo de configuración de proftpd.conf que se encuentra en /etc/proftpd/proftpd.conf debes encontrar la línea que dice:
AllowUser userftp
DenyALL
Y cambiar userftp por tu usuario o agregar otra línea que diga AllowUser tu_usuario.
Avísanos como te fue
Saludos
Olivers
Gracias oliver ya lo solucioné usando gproftpd ahi puedo agregarc todos los usuarios que quiera, tambien lo probe con allowuser y tambien funciona.
Asi que gracias.
Buenas tardes, oliver.
Antes que nada, dejame decirte que tu guía es LO MAS. Tengo un servidor y la verdad que si no fuese por tu guia (lo mas sensillo del universo) todavia estoy tratando de descifrar que significa cada cosa. =p
Te comento mi problema.
con la “linea” sudo useradd userftp -p tu_password -d /home/FTP-public -s /bin/false (la uso sin sudo, estoy como root) creo un usuario.
Luego voy y modifico el .conf con el VIM y busco la linea AllowUser userftp.
El tema es que cuando quiero agregar mas de un user, no puedo.
Creo una cuenta xxxx, voy al .conf, le agrego en una nueva linea el AllowUser xxxx y sigue aceptandome SOLO el usuario original.
Sip, si reinicie el servidor. =p
Te doy mil gracias por tu ayuda. La verdad que si la mitar de las guias dando vueltas en internet fueran como esta, habria muchos mas usuarios de UNIX based OS.
De vuelta, GRACIAS.
Hola Alejandro,
Es raro lo que te esta pasando el proftpd.conf debería verse así
AllowUser otrousuario
DenyAll
Si quieres puedes agregar un grupo comun para todos los usuarios de FTP y agregar esta línea dentro del Limit
AllowGroup ftpgrupo
DenyAll
Esto permitirá a cualquiera perteneciente ftpgrupo entrar al FTP.
Prueba esto y dinos si te funcionó sino buscaremos otra solución.
Saludos
Olivers
Hola Oliver,
Esto ya es muy triste. =(
Llegue a casa y leo tu respuesta. Queriendo probar la solucion me conecto al servidor, el cual, para mi sorpresa, estaba “caido” (en realidad, no me puedo conectar desde ningun cliente y cuando aplico el
sudo /etc/init.d/proftpd restart simplemente no recibo “reaccion” ni “respuesta”.)
Quise instalar de vuelta, con el comando
$> apt-get install proftpd
y este fue el mensaje que recibí:
dpkg was interrupted, you must manually run ‘dpkg –configure -a’ to correct the problem.
Sinceramente no tengo idea de que pudo haber sucedido, si hasta HOY HACE UNAS HORAS andaba fenomenal.
Creo haber generado los LOGs como tu recomendaste en el .conf, tal vez ello sirva de algo?
Hola Alejandro disculpa que no te respondiera antes…
Pues si está muy raro tu problema asi que puedes revisar los log de error o volver a repetir el tutorial paso a paso..
Tambien podrías colocar apt-get install -f proftpd para forzar la instalación
Saludos
Olivers
Oliver,
te comento que como solucion, simplemente copie tu config y luego de algunos struggles con ciertas settings, logre hacerlo andar a la perfeccion (muchas gracias, por cierto).
Solo me quedan dos dudas:
*Si quisiera hacer mas de una cuenta de acceso, como tendria que hacerlo? Como se manejarian los distintos aliases?
*Hay alguna forma de mantener un cierto “control” o que me de un reporte del trafico y demases?
Hola Alejandro, gracias por tu comentario, pronto publicaré un tutorial más avanzado del proftp, mientras tanto podrías buscar los tutoriales que están en la página de proftp.
http://www.proftpd.org/localsite/Userguide/linked/userguide.html
Está atento por el tutorial
Saludos
Olivers
Otra opción interesante es XAMPP, aparte de otras muchas opciones incluye Proftpd, es un paquete muy completo que tiene un buen soporte y actualizaciones
buen manual, para los que estamos comenzando.
tengo un error, estoy trabajando con debian y cuando reseto el ftpd me muestra:
Stopping ftp server: proftpd.
Starting ftp server: proftpd – IPv6 getaddrinfo ‘mipclinux.casa.net’ error: No address associated with host
Hola juan,
Para resolver este problema lo que tienes que hacer es agregar esta línea en tu archivo hosts que se encuentra en /etc/hosts:
Donde en este caso tu_host sería mipclinux.casa.net.
Este mensaje lo da cuando está instalado en modo StandAlone en computadoras que tienen habilitado sólo IPv4.
Si quieres más información puedes ver el manual de ProFTP en usr/share/doc/proftpd.
Prueba esto y dinos como te fue.
Saludos
Olivers
Me gustaría saber que tengo que hacer para que al entrar por ftp no se vean los archivos que empiezan por punto(.)
En la orden de listado pone sólo “-l”, pero parece que ejecuta “-la”
Gracias
Hola, muy buen manual. Yo uso Debian Lenny e Instalé proftpd y al cargar la pagina ftp me pedia usuario y clave y se los puse, luego me daba un mensaje “530 Login Incorrect”. Pense que era por utilizar un usuario sin Home y todo eso, pero luego elimine el usuario desde kuser y lo agregue ahi mismo, le puse como carpeta personal ‘/home/FTP-public/’ y como interprete de ordenes ‘/bin/false/’ y ahi funciono. Estara bien lo que hice? es decir, no corro riesgos de seguridad?? (aclaro que no habilite el ftp anonimo).
Saludos
uFF. El manual esta de lujo me esta viniendo de perlas para hacerme un ftp casero, pero tengo problemas a la hora de entrar con cualquier usuario, hice todo lo que pone en el tutorial, no me da ningun error, pero a la hora de entrar me pone lo del error 530… tambien mire lo de AllowUser y nada
. Alguna solucion?
Gracias
Hola Oliver, no se si procede pero he seguido tu ejemplo y su cambio el puerto al 1980 como indicas, cuando arranco el servidor ftp y hao un nmap, no aparece y si le dejo el 21 si.
Que hago mal?
Hola entrecott, gracias por tus comentarios.
En cuanto a tu problema pueden ser varias cosas primero revisa si tienes abiertos los puertos de FTP (21) y revisa que el usuario que estes utilizando es el que declaraste dentro de la configuración de proftpd.
Tambien revisa que login shell está utilizando el usuario debería ser el bin/false
Si sigues con problemas pega aquí la parte de la configuración donde tienes el AllowUser a ver como te podemos ayudar
Saludos
Olivers
Hola rayala, intentaste conectarte primero al servidor ftp en el puerto 1980 a ver si funciona?.
Probablemente no te aparece en el nmap porque no está buscando en ese puerto y si lo encuentra no lo identifica como un
“FTP”
.
Saludos
Olivers
Hola macc, esta bien lo que hiciste y no corres riesgos de seguridad por esto. Recuerda que en FTP las claves van en texto plano si quieres tener mayor seguridad deberías utilizar SFTP que también lo puedes habilitar en el proftpd.
Saludos
Olivers
Gracias Olivers por responder ^^. El puerto lo cambiado a 8080 y abierto lo abri yo mismo aposta para usar el FTP. Dentro del .conf del proftpd tengo el usuario bien declarado lo unico que cambie fue tu vensign por entrecott69 (creo que estara bien xD). Luego el shell lo mire tambien y todo correcto: entrecott69:x:1001:1003::/home/FTP-public:/bin/false
He visto ya muchos foros y algunos pueden entrar con otros usuarios tipo root o anonimo yo con ninguno. Comentar tambien que el proftpd esta integrado junto con XAMPP, y le puse el comando security para ponerle contraseña y cambiar la que venia por defecto, puse la misma que cuando cree el usuario entrecott69. La verda que ya no se que hacerle ya que antes me funcionaba (tuve un problema de hardware y tuve que reinstalar todo U_U).
Un Saludo y Gracias
Perdonar se me olvidaba comentar que la parte de AllowUser no la he tocado esta igual que viene aqui los mismos directorios y todo, en UserAlias tengo:
UserAlias entrecott69 userftp
Eso es todo
Gracias Oliver. Si estoy conectado al puerto 1980 ya que funciona pero nmap no lo enseña.
Creo que nmap no sabe este puerto a que corresponde o no lo puede ligar con nada pues le pongo otro y aparece aunque en el comentario no aparece FTP.
Y ya puestos, podrias orientarme para que sirve LDAP o que puedo hacer.
Podria tener varios usuarios que tienen outlook local pudieran acceder a una lista de direcciones corporativas?
Hola Oliver, podrias indicarme que tengo que hacer para asignar en SAMBA 2 usuarios diferentes con permisos diferentes a una misma carpeta?
Saludos
Hola tengo un problema, hago toda la configuración y me va muy bien, pero cuando entro al FTP a parte de la carpeta asignada, puede navegar en toda la PC!!!! eso es bien critico, como puedo resolver ese Gran” problema
Hola Samuel, tienes que revisar bien tu archivo de configuración del Proftp si quieres pega aqui la parte donde declaraste los directorios a ver si encontramos algún error.
Saludos
Olivers
El error del IPV6, lo solicione editando en el proftpd.conf
UseIPv6 off
Saludos desde Corrientes Argentina
Que tal podrian apoyarme he seguido el tutorial pero al momento de editar el archivo
sudo sudo vim /etc/proftpd/proftpd.conf
no encuentro la linea del AllowUser mejor dicho no esta la tengo que agregar ?
Hola David, si tienes que agregar esa linea
Saludos
Olivers
Oye amigo, he hecho eso del sudo gedit /etc/proftpd/proftpd.conf pero me sale la info pero no aparecen mis nombres de usuario y contraseña, que sucede? yo quiero tener 2 usuarios en la misma carpeta
Papa – que tenga todos los permisos
Mama – que solo tenga permiso de lectura
se peude hacer eso en la misma carpeta y subcarpetas?
(/Casa)
Hola xkalivur, los usuarios los tienes que agregar tu no se agregan automáticamente tienes que crearlos como creo el usuario userftp en el ejemplo.
Luego para limitar la escritura en un directorio colocas dentro del directorio:
AllowUser userftp
DenyAll
Donde dice userftp simplemente colocas el usuario que le quieres permitir escribir
Prueba con esto y dinos que tal te fue
Saludos
Olivers
Cómo puedo accesar al Servidor desde un Host Remoto, es decir, fuera de la red local?
Es completamente necesario el servidor DNS para hacerlo sin teclear la dirección IP del equipo?
Hola FTP, pues para accesar cualquier equipo por nombre desde Internet tienes que tener efectivamente registrado un dominio en algún servidor DNS para que pueda hacerse la traducción entre el nombre y la dirección IP.
Ahora bien si el único que va a accesar ese servidor FTP por nombre eres tu, podrías probar modificar tu archivo de hosts (/etc/hosts) y agregarle una línea con la IP y nombre que quieras para el servidor:
x.x.x.x nombreservidor
Este archivo es revisado primero que el DNS por lo que si está ahí resuelve la IP.
Puedes revisar el tutorial de DNS aqui:
http://www.vensign.com/general/instalar-configurar-un-servidor-dns-con-bind9-en-debian-etch/
Espero que te sirva
Saludos
Olivers
hola a olivers que tal tengo un problema al momento de iniciar el servidor ftp cuando quiero entrar desde una computadora de windows entro macanudo significa que lo configure bien gracias a tu manual excepto por un detalle
cuando inicio sesion en userftp y despues mi contraseña de dice login incorrect pense que era por esta linea
AllowUser userftp
DenyAll
no se si estoy en lo correcto esta linea no se encuentra en el archivo de configuracion es la que tu explicas a arriba en los comentarios
la agregue al archivo de configuracion proftpd.conf pero al rearrancar el servidor en webmin me tira un error por esa sentencia es esta que puedo hacer ?
No pude arrancar servidor FTP :
Starting ftp server: proftpd – Fatal: AllowUser: directive not allowed in server config context on line 31 of ‘/etc/proftpd/proftpd.conf’
failed!
la linea 31 es donde esta escrita los comandos
AllowUser userftp
DenyAll
muchas gracias de antemano
Hola.
Estoy intentando montar un FTP para que los usuarios externos de la red accedan remotamente a sus archivos para que puedan tener copias de seguridad, por lo cual me he basado en tu tutorial.
De momento conecto en red interna. El problema inicial que tengo es que al conectar no me pide ni el usuario ni la contraseña. ¿Podría ser porque tengo Samba instalado?
De momento he seguido todos los pasos del tutorial excepto que para accedera las carpetas no he creado de nuevas sino he especificado rutas existentes y he parado en el conf en el numero de intentos.
Postdata.
Error. Solo me da acceso al ftp desde la cuenta de administrador. Desde cualquier cuenta de de usuario me deniega el acceso. Una vez allí no veo ninguna carpeta.
No puedo ingresar con otro usuario que no sea el del ingreso al servidor intente todo agregar AllowUser otrouser pero no pasa nada que ago ????
Hola Jordi y JAZOoR, pueden agregar el acceso a más usuarios en esta parte del archivo de configuración:
Ahí agregan los usuarios que quieran darle acceso (antes de la línea DenyAll), también pueden revisar las respuestas en los comentarios donde se explica como agregar permisos a carpetas específicas.
Espero que les sirva.
Saludos
Olivers
Gracias ahora funciona todo bien
De nada JAZOoR
Saludos
Olivers
Hola Mira tienes que CORREGIR los Comentarios en las Lineas 3 y 50, se a mobidiel # y cuando quieres reiniciar el servidor te da fallo.
# El puerto 21 es el estandar para FTP,
#
es bueno cambiarlo por razones de seguridad
#
aqui escogi el 1980 puedes escoger el que quieras
AllowOverwrite on
AuthAliasOnly on# Escoge aqui un alias para tu usuario de FTP
Hola pudio, ya esta corregido
Gracias
Saludos
Olivers
Hola Olivers, mencionas en tu excelente manual que pronto tendrás la versión que incluye los temas de seguridad. ¿Ya lo publicaste?
Saludos y gracias por tu magnífico aporte a la comunidad.
Hola Bedney, ante todo gracias por tu comentario.
Aún no lo he publicado, tengo pendiente ese y otro par de artículos para este mes así que está pendiente pronto estará publicado.
Saludos
Olivers
Hola!
Tengo un problema, he configurado el servidor tal cual el archivo de hecho he creado el usuario “userftp” como se menciona y cuando intengo logearme con filezilla me dice:
Response: 530 Login incorrect.
Error: Could not connect to server
de igual manera que con el comando ftp desde la linea de comandos, que puede ser, ya revisé todo y aparentemente no hay error….
Hola, ¿sabéis como realizar un irectorio que todos los usuarios puedan utilizar?
es decir, tengo dos usuarios, A y B, cada uno tiene sus directorios y tal, pero yo quiero que tengan una carpeta que se llame “general”, en donde, por ejemplo, puedan dejarse notas entre ellos. ¿alguna idea? (ya he intentado con enlaces simbolicos, pero estos no quieren funcionar XD pero si, estando como por ejemplo, A, hago un ls me aparece el nombre del enlace y al lado la ruta del mismo. ¿Alguna idea?
Hola nukaway, no es necesario que realices ningún enlace simbólico para hacer esto simplemente dentro del archivo de configuración donde está:
AllowUser userftp
DenyALL
Añade todos los usuarios que quieres que tengan permiso para conectarse. Y luego en donde se declaran los directorios puedes incluir los directorios que quieras.
No se si te ha quedado claro, cualquier duda lee con detenimiento el manual y vuelve a preguntar.
Saludos
Olivers
juan_caz revisa si agregaste el usuario en el archivo de configuración de proftpd lo más seguro es que te falte este paso
Si sigues con el problema avísanos la línea que debes revisar es:
Saludos
Olivers
Hola super tu tutorial.. queria hacer una pregunta cuando hablo mi ftp no me sale ninguna carpeta y archivo, donde las subo en que carpeta….
Hola JOss gracias por tus comentarios tienes que revisar en el tutorial se crean dos carpetas:
/home/FTP-public/download/
/home/FTP-public/upload/
Luego estas carpetas se definen en el archivo de configuración que también está en el tutorial
Revisa bien y si todavia tienes dudas vuelve a preguntar
Saludos
Olivers
Hola Olvers
estuve trabajando con tu manual y no puede loguer a los usuario que cree aun estando en el archivo de configuracion del proftpd.conf en la diectiva
AllowUser user
siempre me da login incorrect, probe muchas cosas pero aun no encuentro solucion, la configuracion es casi la misca a la que haces en este ejemplo solo cambie el nombre de las carpetas..
la verdad que ya me esta enloqueciendo esto si podes por favor sugerir algo te lo agradeciar muchos
Milton
Hola Milton tienes que revisar varias cosas:
1. Que hayas creado el usuario al que le estas dando permisos dentro del archivo de configuración en el tutorial lo creamos como userftp con este comando:
sudo useradd userftp -p tu_password -d /home/FTP-public -s /bin/false
2. Que en el archivo de configuración coloques el mismo nombre del usuario que creaste:
AllowUser userftp
DenyALL
3. Que estes colocando la misma clave que cuando creaste el usuario, acuerdate que las claves son sensitivas a mayusculas y minúsculas.
Si sigues teniendo problemas coloca aqui las líneas del archivo de configuración donde compartes la carpeta para poderte ayudar mejor.
Saludos
Olivers
hola Olivers, gracias por la pronta respuesta,
los usuario los estoy creando con el siguiente comando (estoy en debian como root)
useradd user1 -p user1 -d /home/FOTOS/ -s /bin/false
estos son los permisos que le otorge
sudo chmod 755 /home/FOTOS
sudo chmod 755 /home/FOTOS/download
sudo chmod 777 /home/FOTOS/upload
en la directiva
AllowUser user1
DenyALL
y el tema de la contranenia la he cambiado varias veces con passwd user1, me he asegurado de escribirlo letra por letra y aun me da el error.
como te comente estoy usando debian etch que solo tiene el base system.
bueno esperes me ilumines pues estoy casi sin recursos..lei por ahi que tal vez se el tema de Selinux el cual lo deshabilite temporalmente, y otras cosas alcomo como el PAM que que modifique tambien.. pero como no me dio resultado volvi todo a la configuracion normal.
bueno espero to feedback
Muchas gracias
Milton
Hola Olivers, la solucion estaba mas cerca de lo que parecia, el uso del alias pense que no era mandatorio asi que lo estaba comentando para que no tenga efecto en el archivo de configuracion y esta entrando directamente con el usuario, pero aparentemente es mandatorio asi que lo descomente y relacione el alias con el usuario y desde momento pude ingresar, bueno…estoy mas traquilo, por otro lado ahora que puedo entrar estaba planeando usar el servidor para subir archivos, pero cuando entro por la web (mozila) no puedo mas que hacer navegar por las carpetas, cuando entro por MIPC desde windows me da de los permiso que me asegure que tenga los permisos adecuado los cuales son los que definis vos en tu tutorial
*********este es la parte de configuracion de los permisos***********
#Definimos los permisos de los directorios que creamos para el FTP
Umask 022 022
AllowOverwrite off
DenyAll
Umask 022 022
AllowOverwrite off
DenyAll
Umask 022 022
AllowOverwrite on
DenyAll
AllowAll
*********** este son los permisos ***********
sudo chmod 755 /home/FOTOS
sudo chmod 755 /home/FOTOS/download
sudo chmod 777 /home/FOTOS/upload
espero me ilimunes otra vez, por cierto gracias por tu tiempo que dedicar a ayudar a los demas estoy aprendiendo mucho con este tutorial.
Saludos
Milton
Oliver
lo que estoy intentando hacer es tener muchos usuarios (mas de 20) cada uno con sus propia carpeta que cada user solo sea capaz de entrar a su propio home sin moverse de alli solo que le permita hacer upload nada mas y otro super usuario que pueda ver a todos los usuario y que pueda hacer tanto subir como bajar archivos.
me pueden orientrar o dar un ejemplo de como podria hacerlo..
gracias
hola oliver… al ejecutar el comando apt-get install proftpd me el siguente error
# apt-get install proftpd
Leyendo lista de paquetes… Hecho
Creando árbol de dependencias
Leyendo la información de estado… Hecho
Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.
p7zip-full
Utilice «apt-get autoremove» para eliminarlos.
Se instalarán los siguientes paquetes extras:
proftpd-basic proftpd-mod-ldap proftpd-mod-mysql proftpd-mod-pgsql
Paquetes sugeridos:
proftpd-doc
Se instalarán los siguientes paquetes NUEVOS:
proftpd proftpd-basic proftpd-mod-ldap proftpd-mod-mysql proftpd-mod-pgsql
0 actualizados, 5 se instalarán, 0 para eliminar y 24 no actualizados.
Necesito descargar 1502kB de archivos.
Se utilizarán 2822kB de espacio de disco adicional después de desempaquetar.
¿Desea continuar [S/n]? s
AVISO: ¡No se han podido autenticar los siguientes paquetes!
proftpd-basic proftpd-mod-mysql proftpd-mod-pgsql proftpd-mod-ldap proftpd
¿Instalar estos paquetes sin verificación [s/N]? s
Err http://ve.archive.ubuntu.com intrepid/universe proftpd-basic 1.3.1-12ubuntu1
No pude resolver ‘:@192.168.0.1′
Err http://ve.archive.ubuntu.com intrepid/universe proftpd-mod-mysql 1.3.1-12ubuntu1
No pude resolver ‘:@192.168.0.1′
Err http://ve.archive.ubuntu.com intrepid/universe proftpd-mod-pgsql 1.3.1-12ubuntu1
No pude resolver ‘:@192.168.0.1′
Err http://ve.archive.ubuntu.com intrepid/universe proftpd-mod-ldap 1.3.1-12ubuntu1
No pude resolver ‘:@192.168.0.1′
Err http://ve.archive.ubuntu.com intrepid/universe proftpd 1.3.1-12ubuntu1
No pude resolver ‘:@192.168.0.1′
Imposible obtener http://ve.archive.ubuntu.com/ubuntu/pool/universe/p/proftpd-dfsg/proftpd-basic_1.3.1-12ubuntu1_i386.deb No pude resolver ‘:@192.168.0.1′
Imposible obtener http://ve.archive.ubuntu.com/ubuntu/pool/universe/p/proftpd-dfsg/proftpd-mod-mysql_1.3.1-12ubuntu1_i386.deb No pude resolver ‘:@192.168.0.1′
Imposible obtener http://ve.archive.ubuntu.com/ubuntu/pool/universe/p/proftpd-dfsg/proftpd-mod-pgsql_1.3.1-12ubuntu1_i386.deb No pude resolver ‘:@192.168.0.1′
Imposible obtener http://ve.archive.ubuntu.com/ubuntu/pool/universe/p/proftpd-dfsg/proftpd-mod-ldap_1.3.1-12ubuntu1_i386.deb No pude resolver ‘:@192.168.0.1′
Imposible obtener http://ve.archive.ubuntu.com/ubuntu/pool/universe/p/proftpd-dfsg/proftpd_1.3.1-12ubuntu1_all.deb No pude resolver ‘:@192.168.0.1′
E: No se pudieron obtener algunos archivos, ¿quizás deba ejecutar
apt-get update o deba intentarlo de nuevo con –fix-missing?
Por lo tanto no me instalar el paquete.
Tengo salida a internet a través de un proxy… ¿hay un tipo de conflicto? ¿que debo tener presente?
Gracias por la ayuda de antemano…
@Milton, puedes crear cada usuario por separado revisa este link donde explico como crear multiples usuarios por batch:
http://www.vensign.com/linux/newusers-crear-multiple-cuentas-de-usuarios-en-linux-en-batch/
Saludos
Olivers
Hola misis22_18, como no me especificas si tienes una versión de Desktop o Servidor te doy una solución rapida, como tienes un proxy tienes que especificarlo para esto ejecuta:
export http_proxy=http://nombreusuario:password@ipdelproxy:puertodeproxy
Si no tienes nombre de usuario y password solo coloca la ip y el puerto.
Otra opción agregas al archivo /etc/apt/apt.conf la siguiente línea:
Acquire::http::Proxy “http://nombreusuario:password@ipdelproxy:puertodeproxy”;
Este último es permanente y no tienes que tipear el comando cada vez que hagas apt.
Despues de esto te aconsejo que ejecutes primero un apt-get update para actualizar las librerías y despues apt-upgrade para actualizar tus aplicaciones ya instaladas antes de instalar el proftpd.
Espero que te sirva cualquier duda vuelve a escribir
Saludos
Olivers
Hola olivers, ya logré instalar el paquete en el so y listo esta configurado y corre a la perfección. Ahora como estoy haciendo pruebas tengo el cliente en la misma máquina del servidor FTP. Instalé el cliente filezilla y me da el siguiente error:
Status: Connecting to 192.168.0.88:21…
Status: Connection established, waiting for welcome message…
Response: 220 Server FTP
Command: USER userftp
Response: 331 Password required for userftp
Command: PASS ******
Response: 530 Login incorrect.
Error: Could not connect to server
Observé que este error también le sucedió a otra persona (juan_caz) y verifico la parte del
AllowUser userftp
DenyALL
y la tengo asi… no entiendo que pueda suceder… Gracias por la ayuda Olivers
Hola misis22_18, más arriba le di una respuesta a Milton a un problema parecido al tuyo, revisa es del 26 Febrero, revisa esos puntos y si sigues con el problema vuelve a escribir a ver como te ayudamos
Saludos
Olivers
Hola, muchas gracias por la informacion, me “quebre” la cabeza, buscando por todo google, hasta que di por aca y este me funciono, aun estoy iniciando en esto de los servidores, ya logre hechar a andar todo el rollo del apache,(apache,php,MySQL,Phpmyadmin) y ahora este, la idea que tengo es poner un servidor, pero yo me conecto via inalambrica al modem, que a su vez le da señal a mas cpu, y bueno intentare conectar otra pc, que tiene windows a esta con ubuntu, a ver si puedo(otro quebradero de cabeza) por ahorita ya me di de alta en Dyndns, y bueno vere que mas sigue, ¿tienes mas tutoriales de este tema? a y te pongo lo que medio una vez arranco el programa para ver si esta ok
* Stopping ftp server proftpd [ OK ]
* Starting ftp server proftpd – warning: the DisplayFirstChdir directive is deprecated and will be removed in a future release. Please use the DisplayChdir directive.
[ OK ]
NO se ni jota de ingles pero tendre que aprender, saludos y muchas gracias por la info, que no es tan facil de realizar y ponerla a servicio de todos.
Hola Marchelo, lo primero el mensaje que te da es simplemente una advertencia de una directiva dentro del archivo de configuración que la van a descontinuar en versiones futuras pero esto no afecta el funcionamiento del servidor.
En cuanto a los otros tutoriales hay un tutorial de LAMP (Linux Apache MySQL y PHP) tanto para Ubuntu como para Fedora aquí mismo en la página lo puedes encontrar por el buscador o por la nube de etiquetas en la columna de la izquierda.
También hay un tutorial de Samba que sirve para conectar PC con Windows con PC con Linux y compartir archivos e impresoras
Cualquier duda pregunta
Saludos
Olivers
Saludos .
Quisiera saber como hago para que los usuarios bajen los archivos como usuario anonimo, y no con un usuario especifico
Hola elisaul simplemente tienes que agregar algo como esto al archivo de configuración:
< Limit LOGIN >
DenyAll
< / Limit >
< Anonymous ~ftp >
< Limit LOGIN >
AllowAll
< / Limit >
...
< / Anonymous >
Y comentar todas las líneas que tengan que ver con acceso de usuarios.
Espero que te sirva
Saludos
Olivers
Saludos
Como se puede configurar el proftpd.conf que viene incorporado en el lampp para utilizarlo como conexion ftp sin instalar el proftpd aparte?
Hola:
De antemano muchas gracias x la info, esta genial, pero espero me puedas ayudar, configure mi servidor tal cual esta en el manual, solo que le deje el puerto 21 solamente para probarlo, una ves que he abierto el explorer con la direccion de mi servidor me pide el login y contraseña, pero ya las introduci y no me da acceso, ni con mi alias ni otros usuarios que asigne.. Gracias, espero tu respuesta
Gracias compañero, se me estaban atragantando unas cosillas del proftpd y de casualidad he dado con tigo y ha sido posible. Gracias de nuevo!
Salud!
@markgenius, debes revisar en el archivo de configuración a quien le has dado acceso sobre todo la línea
AllowUser userftp
DenyALL
Es importante que revises esto y veas que hayas colocado algún usuario válido de Linux que ya tengas creado.
Si sigues con el problema vuelve a escribir y vemos como te ayudamos mejor
Saludos
Olivers
@Jameson muchas gracias por tu comentario, me alegro que te haya servido
Hola Olivers, sabes que tengo problemas con el FTP, al momento de conectarme por otra terminal me da el error 403 el cual no tiene permisos, he hecho todo el allowuser y denyall pero me manda error al momento de hacer el restart, me dice “directive not alloweb in server config context”
y no puedo acceder desde mi red …
que puede ser?
gracias de ante amno
Hola Oliver
Tengo un par de preduntas ojala me puedas ayudar
1. Tengo confugurado ya el sitio con los mismos datos que pusiste en el tutoria deseo sacarlo por internet y no me deja. tengo que otorgar opermisos especiales para que cualquier ip pueda ver el ftp deste internet.
Estoy entrando el pueto 2148 para lan y de igual menera en la wan en mi router.
Nota localmete funciona sin ningun problema.
2.
como puedo agregar mas usuario al ftp ya se con a la misma carpta del usuario userftp o a otra con diferentes permisos.
Gracias
Hola Marco,
1. Para que puedas accesar desde Internet debes tener una dirección pública. Y chequear si tienes algún Firewall activado y permitir el puerto de FTP, si lo dejaste por defecto es el 21, si configuraste el puerto 2148 en el archivo de configuración debes permitir conexiones a este puerto. También si tienes algún router tipo Wi-Fi o LAN debes permitir conexiones a tu PC en ese puerto. Puede servirte este tutorial
http://www.proftpd.org/docs/howto/NAT.html
2. Puedes agregar cuantos usuarios que quieras al igual que agregas el userftp revisa en el archivo de configuración las líneas:
Dentro de la cual se agregan los usuarios que creaste
y donde se configuran y se le otorgan permisos a los directorios
Espero que te sirva cualquier duda vuelve a preguntar
Saludos
Olivers
Hola Olivers, por lo que veo, muchos tienen problemas cuando quieren activar mas de 1 usuario, y a mi me paso lo mismo….
Siempre tu respuesta fue que controlaramos las lineas de AllowUser.. pero asi y tono no me andubo, hasta que modifique la linea que dice AuthAliasOnly y la puse en OFF, desde ahi me permitio agragar los usuarios que yo quiera…
La consulta mia pasa por saber si esta bien lo que hice, por lo que supongo… esa linea limita a unicamente el usuario del ALIAS sea el que pueda loggearce… eso es correcto????
Desde ya, te agradesco y muy bueno el tutoriallll
Suerte para los demas tambien!!!!!
Hola ricardo, efectivamente esta directiva es que solo los usuarios que tengan un alias definido, puedes definir cuantos alias quieras.
Hay dos caras de utilizar esta directiva, a nivel de seguridad es muy buena porque el nombre de usuario que creaste en Linux esta “protegido” (siempre y cuando el alias sea diferente al nombre de usuario real), por otro lado puede ser engorroso crear un alias por cada usuario y cada quien se tiene que acordar de su alias de FTP eso ya es a gusto y necesidad de cada quien.
Esto lo agregaré pronto al tutorial para mejorarlo.
Muchas gracias por tu aporte
Saludos
Olivers
hola buenas tardes les escribo porq intento montar mi servidor proftp en la empresa, soy novata, intente hacer todos los paso y aparentement funciono pero cuando intento conectarme pasa el usuario pero luego la clave me sale un error : 331 Password required for pruebas.
Password:
530 Login incorrect.
Login failed.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
no se que puedo hacer ??????:((( en lo que puedan ayudarseria bueno garcias y buenas tardes
Hola Jegrys, debes leer bien la parte del tutorial con la creación del usuario.
En el tutorial uso como ejemplo un usuario llamado userftp, si seguiste todo al pie de la letra debes entrar con ese usuario.
Puedes crear cuantos usuarios quieras siguiendo los mismos pasos que para crear y agregar el usuario userftp al archivo de configuración.
Si sigues teniendo problemas o tienes alguna otra duda vuelve a escribir estamos a la orden
Saludos
Olivers
hola olivers no sabia q tambien tenias tuto para esto ejjeej.
MI problema es el siguiente: tengo una pagina web q deseo actualizarla desde internet, ya instale el proftpd descarga bien la informacion, pero no se deja sobreescribir no se que tengo de malo, me podrias ayudar??
gracias
Felipe, tienes que ser más específico que es lo que no se deja sobreescribir?
Saludos
Olivers
mira lo que necesito es q la carpeta www se puedan subir reescribir y descargar los archivos q esta contiene ( no quiero hacerlo con ayuda de dos carpetas,una para subir y otra para bajarlos ya q eso me danaria en mucho la estrutura de mi pagina) mira esta una parte del codigo, no se q le debo cambiar.
Umask 777 777
AllowOverwrite on
AllowAll
AllowAll
espero q me puedas colaborar, muchas gracias
changos por q no se escribio el codigo
te lo vuelvo a escribir
Directory /home/ftp
Umask 777 777
AllowOverwrite on
Limit READ RMD DELE
AllowAll
Limit
Limit STOR CWD MKD
AllowAll
Limit
Directory
lo copie sin signos poq pienso q por esta razon no se mostro el codigo, pienso q mi error esta en los limit, como los debo poner??, necesito q la carpeta www se pueda actualizar desde otro pc, subir reescribir y bajar archivos, como esta solo se pueden bajar.
Gracias por la ayuda.
ya solucione el problema jejejej, ahroa me gustaria saber como le pongo seguridad a esas contrasenas tengo entendido viajan sin ser cifradas
me podrias ayudar con esto??
gracias
Estimado
Antes que nada, te felicito por tu guia esta al 100%, fijate que sigo las instrucciones pero al final obtengo un mensaje de error “530 Login Incorrect” cual podria ser el problema, ya probe agregar el usuario a otra shell y nada sigue igual, espero tus comentarios.
Saludos
Hola Felipe que bueno que solucionaste tu problema, en cuanto a lo último que me preguntas en FTP efectivamente las claves se envían en texto plano, para hacer más segura la conexión tendrías que utilizar SFTP.
Hay un módulo para proftpd llamado mod_sftpd.
Saludos
DeKria debes revisar en el archivo de configuración de proftpd.conf que tengas configurada la siguiente línea:
Limit LOGIN
AllowUser userftp
DenyALL
Cambiando userftp por el usuario que creaste.
Espero que te funcione cualquier problema vuelve a escribir
Saludos
Olivers
mira para solucionar el problema configure el archivo del proftpd.conf anadiendo esto:
pero no se si es suficiente.
IfModule mod_tls.c
TLSEngine on
TLSRequired on
TLSVerifyClient on
TLSProtocol SSLv23 , TLSv1
TLSLog /var/log/proftpd_tls.log
TLSRSACertificateFile /etc/gadmin-proftpd/certs/cert.pem
TLSRSACertificateKeyFile /etc/gadmin-proftpd/certs/key.pem
TLSCACertificateFile /etc/gadmin-proftpd/certs/cacert.pem
TLSRenegotiate required off
IfModule
instale el gadmin proftpd y vi su archivo de configuracion, puse en on algunas de estas variables pero como te digo no se si sera suficiente con esto ya q no instale ningun paquete adcional (solo he instalado el gadmin proftpd y el proftpd) espero tu respuesta y gracias por la ayuda
cree este usuario llamado “user”
useradd user -p user -d /home/FTP-rafa -s /bin/false
AllowUser rafael
AllowUser user
DenyALL
pero aun me sigue dando problemas para el acceso.. soy nuevo en esto.. ojala me puedan ayudar
Hola Rafael prueba varias cosas:
1. Trata de loguearte localmente al FTP con los usuarios que creastes.
2. Verifica que cuando ejecutas:
sudo /etc/init.d/proftpd restart
No te esté dando ningún error.
Si sigues con errores por favor coloca aquí el mensaje que te da cuando intentas conectarte.
Saludos
Olivers
Hola Felipe no he trabajado mucho con el módulo TLS y proftpd pero para mi una forma sencilla de verificar sería intentarme conectar con un cliente que soporte SFTP y ver si se establece la sesión correctamente.
Saludos
Olivers
nahh man aun no accesa.. me da el error 530 error de login =/
epale Oliver gracias ya resolvi pero sabes q ahora lo instale en otra compu y en esta cada vez q reinicio el servicio me da un error mira
* Stopping ftp server proftpd [ OK ]
* Starting ftp server proftpd – warning: unable to determine IP address of ‘informatica2′
– error: no valid servers configured
– Fatal: error processing configuration file ‘/etc/proftpd/proftpd.conf’
[fail]
que crees que podra ser?
Hola Rafael, por fin cual era el problema del otro servidor?…
Bueno como te dice ahí tienes un problema con el proftpd.conf debes revisar este archivo para ver si te equivocaste en alguna línea de la configuración.
Revisa donde colocaste eso de informatica2 por ahí debe estar el problema.
Si quieres coloca la parte del archivo donde tienes eso
Saludos
Olivers
Hoy intentare configurar todo el tema a ver si soy capaz son nuevo en esto espero poder deisfrutar de este gran tutorial, a ver si no me encallo con el. Un saludo y seguro que tendre dudas y algun que otro problema con el server. Gran tutrorial. Gracias.
oye oliver tengo un problema ala la hora de entrar ya en si al servidor al poner el usuario que se creo anteriormente con su paswd me da un erro 530 de login incorrecto como lo puedo arreglar y aparte como puedo borar esos usuarios
Olivers tienes manuales en español? ya que estoy documentandome sobre servidores, samba, dns, dhcpd etc. tendras algunos manuales o tutoriales… que me puedas facilitar?
Gracias
Hola Victor, en español no hay mucho de esto, hay algunos manuales por ahí. Lo mejor es buscar en Google y preguntar en los foros.
En ingles si hay muchos… aquí en mi página hay varios tutoriales de samba y dns y otros servicios que puedes revisar y pregunta cualquier duda.
Saludos
Olivers
hola Olivers leyendo la configuracion de proftpd
tengo duda en esta parte
# Coloca el usuario y el grupo al que el servidor normalmente funciona
User nobody
Group nogroup
estoy en CentOS y no se con que usuario y grupo trabaje proftp en esta distribucion
gracias buen aporte, estoy iniciando en el mundo de ubuntu y linux
Deja tu respuesta
Ultimas entradas
Últimos comentarios
Etiquetas
Contacto
Más Comentados
+vistos