1. El protocolo FTP (File TransferProtocol), oProtocolode transferenciade archivos, esun
protocolode redutilizadoparala transferenciade archivosentre lascomputadoras
conectadasa una redTCP.
Características
FTP permite alosusuarios:
Accedera sistemaremotos
Listar directoriosyficheros.
Transferirficherosdesdeohaciael sistemaremoto(subir,bajar).
Realizaraccionesadicionalesenel sistemaremotocomorenombrar,borrar,crear
archivosy carpetas,cambiarpermisos,descomprimir,etc.
Componentesyfuncionamiento
1. ClientesFTP.Accedenal sistemade ficherosdel equipodondeestáninstaladosy
establecenconexionesconlosservidoresFTPparasubiro descargararchivos.
a. Clientesenmodotexto.
b. Clientesenmodografico.
c. Navegadores/exploradoresque actúan como clientes
2. ServidoresFTP.Manejan lasconexionesde losclientesyenfunciónde losprivilegios
definidospermitenladescargay/osubidade ficheros. VsftpdenLinux yfirecillaen
Windows.
3. Protocolo FTP. Conjuntode normasy reglasenbase a las cualesdialoganlosclientes
y losservidoresFTP.Los mensajesenviadoscontienen:
a. Comandos: cadenasde caracteresterminadasconun final de línea.
b. Respuestas:enviadasdesde el servidoral cliente.Contienenun códigode tres
dígitosy un mensaje de textodescriptivo.
Tipos de acceso:
Los servidoresFTPpermitentrestiposde accesodesde losclientes:
1. Acceso anónimo.
a. El usuarioanónimosuele seranonymousy/0ftp.
b. De manerahabitual solopuede descargar archivosysuacceso se limitaaun
directoriodel servidor.
2. Acceso autorizado.
a. Son usuariosque debenexistirenel servidor.Biensonusuarioslocalesdel
sistemaoperativoobiensonusuariosvirtualescreadosparael accesoFTP.
b. Una vez que se han autenticado,el usuariosolopuede accederal directorio
destinadoparaél (“enjaulado”).
c. En el servidorse configuranlosprivilegiosque tiene cadausuario.
3. Acceso invitado.
a. Se trata de permitirque cadausuarioconecte a la máquinamediante sulogin
y su password,peroevitandoque tengaaccesoapartesdel sistemade
2. archivosque no necesitapararealizarsutrabajo,de esta formaaccederáa un
entornorestringido,algomuysimilaraloque sucede enlosaccesosanónimos,
perocon más privilegios.
Modos de conexión
Conexiónde control. El cliente estableceunaconexiónconel servidor.Le envíacomandode
descarga(get) , subida(put),listado(ls),etc., yel servidorresponde informandode cómo
atiende laspeticiones.Estaconexiónpermanece activahasta que el usuariocierralasesióno
hasta que el servidorlafinalice portiempoagotadode inactividad.Losservidorespueden
atendermúltiplesconexionesde control simultáneamente.
Conexiónde datos. Cuandoel cliente solicitaunatransferenciade informaciónse creauna
nuevaconexión(conexiónde datos) que se cierraal finalizarlatransmisión.Asociadaauna
transmisiónde control puedenexistirmúltiplesconexionesde datossimultáneas.
Maneras de iniciarConexión
3. Tipos de transferencia
FormatoASCII:enel se transmite byte abyte.Para archivosde textoplano(txt,html,
java,….).
Formatobinario:latransmisiónse realizabitabit.Es un métodomáslentoque el
anterior.Paraarchivosque no son de texto(ejecutables,imágenes,videos,archivos
comprimidos,…..).
Actualmente,casi todoslosclientesFTPofrecenmodoautomáticoque detectael tipode
archivoy establece el tipode transferenciaadecuado.
Seguridad
FTP no esun protocoloseguro,solamente utilizamecanismosde autenticaciónde usuarios,
pero:
No se usanmecanismosparagarantizar que losequiposinvolucradosenla
transferenciasonquiendicenser(suplantaciónde identidad).
Todo el intercambiode información,incluyendoel usuarioycontraseñayla
transferenciade cualquierarchivo,se realizaentextoplanosinningúntipode cifrado.
Para evitartodosestosposiblesproblemas,aparecenunconjuntode especificacionesque
determinancomoencapsularFTPen:
• SSL (Secure SocketsLayer)
TLS (TransportLayer Security)
y así ofrecercomunicacionesseguras.
4. SSH
El comando sftp nos permite conectarnosconunservidorftpymovernosporlossistemasde
carpetas,listarlas,subirobajararchivos,etc.
El comando scp nos permite copiararchivosespecificandolasrutascompletas.
Comandos de control:
•open servidor:iniciaunaconexiónaun servidor.
•close o disconnect:finalizaunaconexiónsincerrarel cliente
•bye o quit: finalizaunaconexiónFTP,cierrael cliente.
•set bin o binary: activael modo de transferenciabinario.
•set ascii: activael modode transferenciaASCII.
•port puerto:cambiael puertode transferencia.
•pasv: activael modopasivo.
Comandos de gestión:
•cd directorio:cambiael directoriode trabajoenel servidor.
•lcd: cambia el directoriode trabajolocal.
•rm o delete archivo:borraun archivoenel servidor.
•mdelete patrón: borra múltiplesarchivosusandocomodines.
•dir o ls:muestrael contenidodel directorioactual del servidor.
•mdir o mls: muestrael contenidodel directorioactual del cliente.
•pwd: muestrael directorioactivoenel servidor.
•lpwd:muestra el directorioactivoenel cliente.
•rename archivo nombrenuevo:cambiael nombre a unarchivo.
•? o help:muestraunalistade los comandos disponibles.
•rmdir directorio: eliminaundirectorioenel servidor.
•mkdir o mkd: crea el directorioindicadoenel servidor.
•lmkdir: crea el directorioindicadoenel cliente.
•chmod permisosarchivo:cambialospermisosde unarchivoenel servidor.
Comandos de transferencia:
5. •get archivo: baja un archivodesde el servidor.
•mget archivos: baja múltiplesarchivosusandocomodines.
•put o sendarchivo: sube o envíaun archivodesde el cliente al servidor.
•mput archivos: envíamúltiplesarchivosal servidor.
Algunas directivasson:
•listen=YES|NO ->Activael servidor.
•anonymous_enable=YES|NO ->Activaonola posibilidadde usuariosanónimos.
•connect_from_port_20= YES|NO -> Habilitao no laconexiónporel puerto20.
listen_ipv6=YES|NO -> Activao no laescucha de equiposconIPv6.
•xferlog_enable=YES|NO ->Activao no el registrode errores.
•xferlog_file=ruta_de_archivo ->Especificalarutadel archivode log.
•ascii_upload_enable=YES|NO ->Activaono la posibilidadde subirarchivosenmodoASCII.
•ascii_download_enable=YES|NO ->Activaono la posibilidadde bajararchivosenmodo
ASCII.
•ftpd_banner=“mensaje de bienvenida”,permite modificarel mensaje de bienvenidaalos
clientesconectados.
•local_enable=YES|NO ->habilitaonoel acceso a losusuarioslocales.
•write_enable=YES|NO ->permite onolasubidade archivosal servidor