Buenas noches, les dejo este buen instructivo hoy que me ha servido.
----
Cómo configurar tu servidor FTP desde línea de comandos en un sistema operativo Linux.
Para que nuestro Linux tenga la posibilidad de que se le conecten por
FTP para realizar transferencia de ficheros, necesita tener instalado y
configurado un servidor de FTP.
Instalación del servidor FTP
Para instalarte un servidor FTP en Linux normalmente no necesitas ningún
programa adicional ya que el servidor FTP suele venir con el sistema.
Para los ejemplos que vamos a citar a continuación hemos utilizado el
servidor FTP que viene con red hat 9.0
Para comenzar tendremos que instalar el paquete que contiene el servidor
FTP que en este caso se llama Vsftpd 1.1.3-8, para lo cual ejecutaremos
la siguiente instrucción:
rpm -ivh vsftpd 1.1.3-8
Configuración
Una vez instalados comenzaremos a configurarlo a nuestro gusto.
Comenzaremos con la lista de usuarios que podrán tener acceso al servidor FTP:
Para configurar este parámetro necesitaremos abrir el archivo
vsftpd.user.list que se encuentra en /etc/. En este archivo pondremos
ver una lista con los usuarios que tienen acceso.
Pero en realidad el archivo más importante para la configuración del
servidor es el vsftpd.conf que contiene todos los parámetros de
configuración, entre otras cosas la ubicación de los archivos
compartidos. Dentro de este archivo se encuentran los siguientes
parámetros, que podemos modificar dependiendo del uso que le queramos
dar.
anonymous.allow
Con este parámetros se habilita o deshabilita el usuario anónimo.
Anonymous.allow=trae (usuario anónimo habilitado)
Anonymous.allow=false (usuario anónimo deshabilitado)
Write_enable
Indica si una carpeta tiene permiso de escritura o no. En otras palabras
indica si a una carpeta se la pueden subir archivos o no.
Write_enable=trae (si tiene permiso de escritura)
Write_enable=false (no tiene permiso de escritura)
ftpd_banner
Permite poner un mensaje de bienvenida a los usuarios cuando se conecten
ftpd_banner=mensaje
chroot_local_user
Permite o no a los usuarios locales el acceso a la maquina
chroot_local_user=trae
chroot_local_user=false
Para decirle al servidor fe FTP que usuarios tienen permiso para acceder
tenemos que coger la ruta de el archivo antes comentado donde se
encontraba la lista de usuarios (vsftpd.user_list)
Para ello en el archivo de configuración pondríamos algo como esto:
Chroot_list_file=/etc/vsftpd.user_list
Básicamente con estos comandos podrás configurar tu servidor FTP en Linux sin ningún problema.
Arrancar y detener el servidor de FTP
Ya solo nos queda arrancar el servidor para lo cual utilizaremos los siguientes comandos.
Para arrancar el servicio: /sbin/service vsftpd Stara
Para parar el servicio: /sbin/ service vsftpd stop
Para reiniciar el servicio: /sbin/service vsftpd restart
Comandos especiales para FTP desde Linux.
OPEN
Con este comando se abre una sesión con el ftp seleccionado. Este
comando no funcionaria sin previamente haber establecido conexión con el
servidor FTP mediante la siguiente sintaxis:
ftp 212.152.1.22
Pudiendose sustituir la direccion por el nombre del ftp del dominio al que deseas acceder.
CLOSE
Como es evidente, con este comando se cierra sesión.
GET
Este comando probablemente es el más utilizado ya que es el que se
utiliza para bajarte los ficheros del servidor remoto de FTP. Tienes que
estar en el directorio del servidor remoto donde está el archivo que
quieres recibir. Se copiará en el directorio en local en el que estés.
get fichero.txt
PUT
Este como el segundo es muy utilizado haciendo justo lo contrario,
subiendo los ficheros al servidor de FTP. Los archivos de origen los
toma del ordenador local, del directorio donde estés situado en local.
Se suben al directorio remoto donde estés situado.
put fichero.txt
LCD
Específica el directorio local sobre el que vamos a trabajar, es decir
donde colocaremos los archivos que queremos compartir con el servidor
remoto.
CD
Este comando actúa de la misma forma que en MS-DOS es decir, se utiliza
para moverse a través de los directorios del servidor de FTP.
LCD
Tiene la misma función que el anterior pero este aplicado a tus directorios locales.
LS
Con este comando sacamos una lista de directorios y archivos encontrados
en el servidor, actúa de la misma forma que en el interprete de
comandos en Linux.
DELETE
Cuidado con este comando, que solo se puede aplicar al servidor remoto,
ya que se utiliza para borrar archivos que se encuentren en dicho
servidor con el que estamos conectados. Sólo podrán utilizarlo usuarios
que tengan los permisos adecuados.
APPEND
Permite reanudar una descarga que por cualquier motivo haya sido
interrumpida. Este comando puede resultar muy útil cuando intentemos
descargas archivos bastante pesados, que tarden mucho tiempo, ya que
puedes reanudar la descarga en el punto donde la dejaste.
MPUT
Este comando nos permite subir varios archivos a la vez al servidor en
remoto, es bastante útil cuando se necesitan subir varios archivos.
MGET
Hace la operación inversa que el anterior, es decir, descarga varios archivos del servidor en remoto, a la vez.
USER
Con este comando cambiamos de usuario e iniciamos sesión con otro usuario distinto.
BYE
Para finalizar,hay un comando que cierra la sesión y sale del programa
de ftp de forma que todas las sesiones abiertas se cierran.
Todos estos comandos se utilizan en la consola, es decir en el modo texto de Linux.
En MS-DOS (y la consola de comandos de Windows) funcionan prácticamente
todos los comandos de la misma forma, por lo que si no tienes Linux y
quieres probar tan sólo tendrás que instalar un cliente ftp para MS-DOS
en tu sistema. Generalmente los sistemas Windows tienen ya instalado el
cliente FTP por línea de comandos, por lo que lo más normal es que no
necesites instalar nada.
Un programa para
Linux que nos permite hacer FTP por línea de comandos más potente que
el tradicional, como copiar directorios enteros (hacer un mirror).
Posiblemente ya sepamos que para hacer FTP, aparte de usar alguno de los
programas como Filezilla o Cute FTP, podemos utilizar la línea de
comandos. La línea de comandos la tiene por lo general cualquier sistema
operativo y resulta un poco más complicada de trabajar que las
ventanas, pero a veces no hay otra cosa. Por ejemplo, es muy posible que
intentes hacer FTP en un servidor al que accedes por telnet y sólo
tienes la línea de comandos para trabajar.
El problema de la línea de comandos es que no permite realizar algunas
acciones útiles, como una subir o bajar un directorio entero, con todos
sus subdirectorios y sus contenidos. Es algo así como una opción de get o
put que sea recursivo y que se encargue de recorrer todos los
directorios bajando los datos que contengan.
El comando que vamos a ver se llama LFTP y sirve para realizar un FTP
más avanzado. En concreto muy útil cuando se desea hacer un mirror de
todo un sitio web para descargarlo o subirlo.
El comando lftp en realidad es un programa que suele venir instalado en
todos los Linux, así que lo más seguro es que lo tengamos instalado en
nuestro servidor.
Para obtener ayuda con lftp basta con escribir:
lftp -help
Esto nos ofrecerá datos sobre las diferentes opciones del programa. Para conectarnos con un servidor de FTP escribiríamos esto:
lftp -u usuario,clave ftp.dominio.com
Una vez dentro de lftp, lo que estamos viendo es el servidor remoto.
Apareceremos en el directorio raíz del servicio de FTP. Nos aparecerá un
prompt como este, donde indica el usuario y el servidor al que estamos
conectados:
lftp usuario@ftp.dominio.com:~>
Podemos hacer un ls -l para saber la información del directorio.
lftp usuario@ftp.dominio.com:~> ls -l
También podemos obtener ayuda con el comando help:
lftp usuario@ftp.dominio.com:~> help
Esto nos dará una lista de los comandos disponibles en lftp. Entre
ellos, tenemos el comando mirror, que vamos a comentar a continuación.
Si queremos obtener ayuda de un comando en concreto, podemos escribir
help, seguido del comando que queremos conocer.
lftp usuario@ftp.dominio.com:~> help mirror
Esto nos dará la manera de usar y las opciones del comando que nos
interesaba. En concreto, para hacer un mirror se tiene que decir el
directorio local donde deseas copiar y el directorio remoto que quieres
copiar dentro del local.
Para usar el comando mirror debemos escribir primero el directorio local
que queremos copiar y luego el directorio de remoto donde lo deseamos
copiar.
mirror local remoto
Hay que tener en cuenta que cuando estamos dentro de ftp, el ordenador
local es el ordenador al que estás conectado por lftp y el remoto es el
que te conectaste originariamente por telnet. Veamos otro ejemplo de
sentencia:
Mirror docs html
Estamos diciendo que copie el directorio que se llama docs del servidor
al que estás conectado por FTP, al directorio html del servidor sobre el
que estabas haciendo telnet. Si el directorio html no existía, lo crea.
mirror . .
Si ponemos esto (los dos directorios .) estamos diciendo que lo copie todo de local a remoto.
No hay comentarios:
Publicar un comentario