[eside-ghost] Instalar un servidor FTP en Linux
Eneko chan
enekochan en gmail.com
Vie Mar 2 14:50:34 CET 2007
Bueno ya que tengo el manual de linux medio hecho voy a hacer un copy+paste
de lo que tengo sobre FTP. El que yo he usado ha sido vsftpd. No explico
nada de como instalarlo, solo de configurarlo etc...
Aqui empieza el copy+paste
----------------------------------------------------------------
*2.2.2- FTP**.*
El servidor de FTP *vsftpd* (acrónimo de Very Secure FTP Daemon) también
utiliza *xinetd* para ser arrancado, parado, etc... Los puertos que usa son
el TCP 20 (para datos) y 21 (para la consola de comandos). Sus archivos de
configuración son */etc/xinet.d/vsftpd* y */etc/vsftpd.conf*.
*2.2.2.1- Acceso anónimo**.*
Permitir la entrada únicamente al usuario anónimo con solo permisos de
lectura es la forma más segura de configurar un servidor FTP. La carpeta por
defecto a donde se da el acceso anónimo es */srv/ftp*.
Dentro del archivo de configuración */etc/vsftpd.conf* se encuentra una
sección donde se configura el usuario anónimo. Para darle acceso al servidor
hay que configurar la línea *anonymous_enable*:
# Anonymus FTP user Settings
anonymous_enable=YES
Si se desea dar permisos de escritura al usuario anónimo primero habrá que
habilitar la escritura en el servidor FTP, y después es recomendable crear
una carpeta nueva dentro de */srv/ftp*, darle los permisos de escritura
(777) a esta última y configurar así el archivo */etc/vsftpd.conf*:
# General Settings
write_enable=YES
...
# Anonymus FTP user Settings
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_umask=022
anon_other_write_enable=YES
*2.2.2.2- Acceso a usuarios locales**.*
Para que los usuarios locales puedan acceder al servidor FTP pero no puedan
salir de su propia carpeta personal debe existir el fichero *
/etc/vsftpd.chroot_list* y que */etc/vsftpd.conf* contenga las siguientes
líneas:
# Local FTP user Settings
local_enable=YES
local_umask=022
chroot_local_users=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
Los usuarios anotados en el fichero */etc/vsftpd.chroot_list* serán los que
podrán hacer *chroot* (subir de nivel), lo cual no es nada recomendable. A
no ser que sea absolutamente necesario, este fichero será mejor dejarlo
vacío.
De esta forma los usuarios del sistema, definidos en el archivo *
/etc/passwd*, podrán acceder por FTP, pero quedarán "enjaulados" en su
carpeta personal. Para que varios usuarios accedan a la misma carpeta
mediante FTP solo es necesario que usen la misma carpeta personal en el
archivo */etc/passwd*.
alumno1:x:6688:100:alumnos:*/home/alumnos*:/bin/bash
alumno2:x:6689:100:alumnos:*/home/alumnos*:/bin/bash
Ahora surge un pequeño problema; tal vez queramos darle acceso a un usuario
por FTP pero no queremos dejarle hacer *login* al sistema mediante la
consola de comandos. Para ello cambiaremos la *shell* por defecto del
usuario en cuestión en el archivo */etc/passwd* a */bin/false*:
alumno1:x:6688:100:alumnos:/home/alumnos:*/bin/false*
También se puede configurar dicha *shell* (o cualquier otra) en el momento
de crear el usuario con la opción *-s*:
# useradd alumno1 -d /home/alumnos *-s /bin/false*
Para hacer justo lo contrario, es decir dejar hacer login pero no dejar
entrar por FTP a cierto usuario, añadiremos su nombre al archivo *
/etc/ftpusers*. Aquí se anotan los usuario que *NO* queremos que entren por
FTP.
-----------------------------------------------------------------
--
Fotolog: http://www.fotolog.net/ceng
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://listas.deusto.es/mailman/private/eside-ghost/attachments/20070302/ee6ab72a/attachment.htm
Más información sobre la lista de distribución eside-ghost