Router Teldat Protocolo FTP/sFTP Doc. DM724 Rev. 10.91 Abril, 2014 ÍNDICE Capítulo 1 Introducción ....................................................................................................1 1. 2. 3. 4. Protocolo FTP .................................................................................................................... 2 Modelo FTP ....................................................................................................................... 3 Implementación servidor FTP ............................................................................................ 4 Comandos y Respuestas FTP ............................................................................................. 6 4.1. Comandos aceptados con todo tipo de usuario ....................................................... 6 4.2. Comandos aceptados sólo con usuarios registrados ................................................ 8 4.3. Comandos aceptados sólo con usuarios con nivel de acceso ROOT ...................... 15 5. Protocolo sFTP ................................................................................................................... 25 6. Implementación servidor sFTP .......................................................................................... 26 7. Comandos y Respuestas sFTP ............................................................................................ 27 Capítulo 2 Configuración..................................................................................................34 1. Comandos de Configuración .............................................................................................. 35 ?(AYUDA) .............................................................................................................. 36 [NO] ACCOUNTING ............................................................................................. 36 [NO] AUTHORIZATION ...................................................................................... 37 CHECK ................................................................................................................... 37 a) [NO] CHECK ALL .................................................................................................. 37 b) [NO] CHECK BIOS ................................................................................................ 37 c) [NO] CHECK CRC ................................................................................................. 38 d) [NO] CHECK DELETE .......................................................................................... 38 e) [NO] CHECK FIRMWARE..................................................................................... 38 f) [NO] CHECK HARDWARE ................................................................................... 38 g) [NO] CHECK HW-SUPPORTED........................................................................... 38 h) [NO] CHECK LENGTH ......................................................................................... 39 i) [NO] CHECK PATH ............................................................................................... 39 j) [NO] CHECK PROFILE ........................................................................................ 39 k) [NO] CHECK RENAME ......................................................................................... 39 l) [NO] CHECK SYSTEM .......................................................................................... 40 m) [NO] CHECK UNKNOWN ..................................................................................... 40 n) [NO] CHECK VERSION ........................................................................................ 40 1.5. CLIENTS ................................................................................................................ 40 1.6. CONTROL-PORT .................................................................................................. 40 1.7. DATA-PORT .......................................................................................................... 41 1.8. DEFAULT .............................................................................................................. 41 1.9. [NO] DIRECT ......................................................................................................... 41 1.10. [NO] IMMEDIATE ................................................................................................ 41 1.11. [NO] KEEPALIVE ................................................................................................. 42 1.12. LIST ........................................................................................................................ 42 1.13. [NO] LOGIN ........................................................................................................... 42 1.14. MSS ........................................................................................................................ 43 1.15. OS ........................................................................................................................... 43 1.16. PRIORITY .............................................................................................................. 43 1.17. [NO] REPLY .......................................................................................................... 44 1.18. RX-BUFF ................................................................................................................ 44 1.19. SYST ....................................................................................................................... 44 1.20. TEMP-BUFF........................................................................................................... 44 1.21. TIMER .................................................................................................................... 45 1.22. TX-BUFF ................................................................................................................ 45 1.23. EXIT ....................................................................................................................... 45 1.1. 1.2. 1.3. 1.4. - ii - Capítulo 3 Particularidades SITE ....................................................................................46 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Sistemas de Ficheros .......................................................................................................... 47 Usuarios (Login) ................................................................................................................ 49 Modo TEST ........................................................................................................................ 50 Funcionalidad de BACKUP ............................................................................................... 51 Telecarga SEGURA (DIRECT OFF /ON) ......................................................................... 52 Comprobación de INTEGRIDAD ...................................................................................... 54 Modo COMPATIBLE ........................................................................................................ 56 Modo CHECK .................................................................................................................... 58 Modo REPLY..................................................................................................................... 61 RECARGA (COLD BOOT) .............................................................................................. 63 Miscelánea.......................................................................................................................... 64 Capítulo 4 Particularidades sFTP ....................................................................................65 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Configuración ..................................................................................................................... 66 Sistemas de Ficheros .......................................................................................................... 67 Usuarios (Login) ................................................................................................................ 68 Modo TEST ........................................................................................................................ 69 Funcionalidad de BACKUP ............................................................................................... 70 Telecarga SEGURA ........................................................................................................... 71 Comprobación de INTEGRIDAD ...................................................................................... 72 Modo COMPATIBLE ........................................................................................................ 73 Modo CHECK .................................................................................................................... 74 Modo REPLY..................................................................................................................... 76 RECARGA (COLD BOOT) .............................................................................................. 77 Miscelánea.......................................................................................................................... 78 Capítulo 5 Problemas ........................................................................................................79 1. 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. Problemas conocidos .......................................................................................................... 80 Error writing file (550) ............................................................................................ 80 Connection closed by remote host .......................................................................... 80 La transferencia de ficheros se detiene ................................................................... 81 Unable to open file (550) ........................................................................................ 81 Clientes del mundo Unix (modo ascii).................................................................... 82 Comprobación de la longitud y/o checksum ........................................................... 83 Annex A ..............................................................................................................................84 Clientes FTP .......................................................................................................................84 1. 2. 3. 4. Introducción ....................................................................................................................... 85 Cliente FileZilla ................................................................................................................. 86 Cliente WinSCP ................................................................................................................. 90 Cliente FTP por consola de Linux ...................................................................................... 96 - iii - Capítulo 1 Introducción 1. Protocolo FTP Una de las alternativas más importantes que nos permite Internet es la transferencia de archivos de un terminal a otro desde cualquier parte del mundo. Para ello utilizamos el protocolo de transferencia de archivos o FTP (File Transfer Protocol): Si a través de Telnet podemos tener acceso a archivos remotos, mediante FTP podemos compartir (recibir y enviar) nuestros ficheros con otros equipos, siempre que el administrador de estos últimos nos lo permita. Los objetivos del FTP son: 1.- Promover el compartir ficheros (programas o datos). 2.- Promover el uso de host remotos. 3.- Proteger al usuario frente a las variaciones en los sistemas de almacenamiento de ficheros de los distintos host. 4.- Realizar transferencias de datos de manera eficiente y segura. El servidor FTP de nuestros equipos permite realizar telecargas de código así como de configuración desde clientes FTP en terminales remotos. De esta manera no es necesario tener el equipo conectado directamente a nuestro PC para poder cargarle el código o una configuración determinada. ROUTER TELDAT - Introducción FTP I-2 Doc.DM724 Rev. 10.91 2. Modelo FTP En una sesión FTP tenemos dos tipos de conexiones: Conexión de control: se establece entre el Servidor PI y el Usuario PI. A través de ella van los comandos FTP mandados por el Usuario PI (cliente) y las respuestas enviados por el Servidor PI (servidor). Se usa para ella el puerto 21 de TCP/IP. Los comandos FTP especifican el tipo de operación que se desea realizar en el sistema de ficheros así como los parámetros necesarios para la conexión de datos. La conexión de control debe permanecer abierta mientras la transferencia de datos se esté llevando a cabo. En general, es responsabilidad del cliente pedir el cierre de la conexión de control cuando haya acabado de usar el servicio FTP. Es el servidor el que se encargará de realizar dicho cierre. Conexión de datos: se establece entre el Servidor DTP y el Usuario DTP. El Usuario DTP “escuchará” en el puerto por defecto (si no se especificó otro mediante el comando PORT) y esperará el inicio de la conexión de datos por parte del servidor de acuerdo con lo especificado a través de la conexión de control. A través de la conexión de datos se producirá el intercambio de datos en ambos sentidos entre cliente y servidor DTP, a su vez existirá una comunicación entre el Usuario DTP y el Usuario PI que dará lugar a que este último envíe respuestas de confirmación al Servidor PI. User Interface Servidor PI Sistema de Ficheros Servidor DTP Comandos FTP Respuestas FTP Usuario PI Conexión de Datos Usuario DTP Usuario Sistema de Ficheros Puede haber no obstante otras situaciones en las que un cliente desee transferir ficheros entre dos Hosts, ninguno de los cuales es un Host local. Para ello el cliente creará una conexión de control con cada servidor y establecerá una conexión de datos entre los dos. De esta manera, la información de control es pasada al Usuario PI del cliente pero los datos son transferidos entre los DTP´s de los servidores. Esta situación es soportada por nuestro servidor FTP. ROUTER TELDAT - Introducción FTP I-3 Doc.DM724 Rev. 10.91 3. Implementación servidor FTP El servidor implementado soporta las RFC`s 959, 1123, 2389 y 2428 completas, con las siguientes modificaciones: No soporta: Comando Respuesta ALLO (reserva de almacenamiento temporal) TYPE A C (Type ASCII Carriage) TYPE E (Type EBCDIC) TYPE E N (Type EBCDIC Non Print) TYPE E C (Type EBCDIC Carriage) TYPE E T (Type EBCDIC Telnet) STRU P (Struct Page) MKD (crea nuevo directorio) RMD (borra un directorio) STOU (store unique) Superfluo No soportado No soportado No soportado No soportado No soportado No soportado No soportado No soportado No soportado Se cambia: ACCT: Se utiliza para activar las cuentas o modos de TEST del servidor. SMNT: Sirve para activar el sistema de ficheros que va a utilizar el servidor. Como argumento hay que dar el nombre del sistema de ficheros. CDUP: Cambiar el directorio de trabajo al directorio raíz del actual. Ahora sólo sirve para poder tratar los sistemas de ficheros implementados en el servidor como directorios. CWD: Cambia el directorio de trabajo al directorio que indica el parámetro. Ahora sólo sirve para poder tratar los sistemas de ficheros como directorios, también admite '..' o '/' para subir al directorio raíz. REST: no es válido en algunos sistemas de ficheros. Además se admite para modo stream. APPE: no es válido en algunos sistemas de ficheros. TYPE LOCAL: Se soporta solo LOCAL 8 que se considera como IMAGE. TYPE A T : se soporta como TYPE A N. ROUTER TELDAT - Introducción FTP I-4 Doc.DM724 Rev. 10.91 Además, sigue parte de las recomendaciones de la RFC 2577. Estos comandos se han implementado para permitir optimizar las transferencias de ficheros a los clientes que los soportan: Comando MDTM SIZE XCRC XMD5 Argumento <filename> Descripción Devuelve la fecha de modificación de un fichero. <filename> Devuelve la longitud de un fichero en bytes. [“]<filename>[”] [<offset> [<size>]] Devuelve el CRC-32 calculado al fichero. El nombre del fichero puede ir entre comillas. Como parámetros opcionales pueden darse el inicio desde donde calcular el CRC y la longitud parcial del fichero. [“]<filename>[”] [<offset> [<size>]] Devuelve el cálculo del checksum MD5 del fichero. El nombre del fichero puede ir entre comillas. Como parámetros opcionales pueden darse el inicio desde donde calcular el checksum MD5 y la longitud parcial del fichero. ROUTER TELDAT - Introducción FTP I-5 Doc.DM724 Rev. 10.91 4. Comandos y Respuestas FTP Los comandos implementados en el servidor FTP son los siguientes: 4.1. Comandos aceptados con todo tipo de usuario Orden Abrir Conexión FTP :(No es una orden FTP, es una orden TCP). Este es el proceso que conecta con el servidor FTP del equipo por TCP/IP. En la respuesta, el equipo indica el número de clientes conectados y el número máximo permitido de clientes que permite con conexión simultánea. Respuestas: 220-<Banner configurado> (Si el banner está configurado) .... 220 FTP server ready, %ld active clients of %ld simultaneous clients allowed. ------------------------------------------------------------------------------Orden ACCT: Información de cuentas. Este comando funciona cuando un usuario ha realizado el proceso de login y se utiliza para activar un modo de transferencia para realizar pruebas, de tal forma que no provoque desastres. Este modo bloquea el servidor y sólo permite transferencias hacia o desde los directorios de Test. En las transferencias, se admiten que los nombres de ficheros sean números, de esta forma se enviarán tantos octetos como indique la cifra especificada en el nombre de fichero. Se admiten los siguientes comandos: ACCT TEST0 Activa el modo test sobre el directorio /TST ACCT TEST1 Activa el modo test sobre el directorio /TS1 Respuestas: 450 Error, system busy. 200 FTP server test account enabled. 202 Command superfluous at this site. ------------------------------------------------------------------------------Orden QUIT: Finaliza y cierra la sesión FTP Respuestas: 221 Goodbye. ------------------------------------------------------------------------------Orden REIN: Reinicializa la sesión FTP (Solo se hace Logout de Usuario) Respuestas: 450 Error, system busy. 220 OK. ------------------------------------------------------------------------------Orden NOOP: No operación (Contesta O.K. solamente) ROUTER TELDAT - Introducción FTP I-6 Doc.DM724 Rev. 10.91 Respuestas: 450 Error, system busy. 200 OK. ------------------------------------------------------------------------------Orden SYST: Contesta con el nombre del sistema operativo, en nuestro caso sirve para indicar al cliente el formato del directorio. A efectos de control del disco del equipo puede ser UNIX o MS-DOS. El nombre se consigue de la sección de OPERATING SYSTEMS NAMES de la RFC 1700. Respuestas: 450 Error, system busy. 215 MSDOS system type. 215 UNIX system type. ------------------------------------------------------------------------------Orden HELP: Contesta con el mensaje de ayuda general o de un comando en particular. La respuesta depende del argumento. Respuestas: 450 Error, system busy. 502 Help not available. (En caso de no estar integrado). 504 Command help not available. (En caso de no estar integrado). 214 HELP: Command not recognized 214 HELP: Command recognized but not implemented 214 HELP: To see ... 214 LIST: Syntax: LIST[ <path-name>]<CRLF>... ------------------------------------------------------------------------------Orden USER: Identifica al usuario en el LOGIN. El parámetro es el nombre de usuario. Si el sistema de control de acceso al equipo no se encuentra activo, se admiten los comandos: USER ANONYMOUS USER FTP USER GUEST USER ROOT Login anónimo con nivel de visualizador Login anónimo con nivel de visualizador Login anónimo con nivel de visualizador Login de gestión con nivel ROOT o administrador En caso de encontrarse activo el sistema de control de acceso del equipo mediante usuarios, el parámetro del comando tendrá que ser un usuario dado de alta y activo. Respuestas: 450 Error, system busy. 530 User name too long. 331 User name accepted, need password. (Login correcto, hay que introducir password para completarlo) ------------------------------------------------------------------------------- ROUTER TELDAT - Introducción FTP I-7 Doc.DM724 Rev. 10.91 Orden PASS: Comprueba la password de LOGIN Respuestas: 411 Unable to get DTP (authentication phase) 421 Service not available. 450 Error, system busy. 530 User login refused. 530 Password too long. 531 User name required. 230 User login successful. 230 User login complete. ------------------------------------------------------------------------------Orden STAT: Indica el estado del servidor Respuestas: 211 Server Status: READY / BUSY 211 Direct mode : ON / OFF 211 Immediate : ON / OFF 211 Keepalive : ON / OFF 211 Reply 119 : ON / OFF 211 Reload code : ON / OFF 211 Savebuffer : ON / OFF 211 Checks : ALL / NONE / PCLBFVRDSUH ------------------------------------------------------------------------------Orden FEAT: RFC-2389 Devuelve una lista de FEATURES y extensiones implementadas en el servidor. Respuestas: 450 Error, system busy. 211-Extensions supported: MDTM REST STREAM SIZE XCRC XMD5 211 End ------------------------------------------------------------------------------- 4.2. Comandos aceptados sólo con usuarios registrados Orden PORT: Cambia la dirección IP y PORT definidos por defecto. Los parámetros consisten en 6 números separados por comas donde los 4 primeros forman la dirección de red y los 2 últimos forman ROUTER TELDAT - Introducción FTP I-8 Doc.DM724 Rev. 10.91 el número de puerto. A los usuarios con nivel de visualizador no se les permite utilizar direcciones de red distintas a la que han utilizado para conectar. Respuestas: 450 Error, system busy. 411 Unable to get DTP 501 IP Address error. 501 IP Address delimiter error. 501 TCP port error. 501 TCP port delimiter error. 504 Command not implemented for that parameter. 504 IP Address not allowed. 530 Access denied, not logged in. 530 Only EPSV commands admitted. 200 PORT is set to IP ADDR = %d.%d.%d.%d PORT = %d ------------------------------------------------------------------------------Orden PASV: Solicita que el servidor funcione en modo pasivo en la conexión de datos del próximo comando. La respuesta proporciona la dirección IP y el puerto que va a utilizar el servidor para el próximo comando. Respuestas: 450 Error, system busy. 411 Unable to get passive mode 530 Access denied, not logged in. 530 Only EPSV commands admitted. 227 Entering Passive Mode. (%d,%d,%d,%d,%d,%d) ------------------------------------------------------------------------------Orden EPRT: Cambia la dirección IP y PORT definidos por defecto. Los parámetros consisten en una serie de delimitadores que separan los campos de protocolo utilizado, dirección IP y el PORT utilizado. A los usuarios con nivel de visualizador no se les permite utilizar direcciones de red distintas a la que han utilizado para conectar. Respuestas: 411 Unable to get DTP. 450 Error, system busy. 501 Bad first EPRT delimiter. 501 Bad Second EPRT delimiter. 501 Bad Third EPRT delimiter. 501 Bad Fourth EPRT delimiter. 501 IP address error. 501 IP address delimiter error. 501 TCP port value error. 504 Command not implemented for that parameter. ROUTER TELDAT - Introducción FTP I-9 Doc.DM724 Rev. 10.91 504 IP Address not allowed. 522 Protocol not supported, use (1,2). 530 Access denied, not logged in. 530 Only EPSV commands admitted. 200 Extended PORT is set to |1|%u.%u.%u.%u|%u| 200 Extended PORT is set to |2|%X:%X:%X:%X:%X:%X:%X:%X|%u| ------------------------------------------------------------------------------Orden EPSV: Solicita que el servidor funcione en modo pasivo extendido en la conexión de datos del próximo comando. Puede venir un parámetro que indique el protocolo a utilizar. Si viene como argumento la palabra ALL, a partir de ese momento esa conexión rechazara cualquier comando PORT, PASV y EPRT. Respuestas: 411 Unable to get extended passive mode 450 Error, system busy. 522 Protocol not supported, use (1,2) 530 Access denied, not logged in. 200 Extended Passive ALL processed. 229 Entering Extended Passive Mode (|||%u|) ------------------------------------------------------------------------------Orden TYPE: Se define el tipo de codificación del enlace de datos. Se reconocen los siguientes Tipos: TYPE A N TYPE ASCII NON PRINT. Se utiliza para transferir ficheros de texto. 'N' es opcional y puede no existir. TYPE A T TYPE ASCII TELNET. Se utiliza para transferir ficheros de texto. (No soportado). TYPE A C TYPE ASCII CARRIAGE. Se utiliza para transferir ficheros de texto. (No soportado). TYPE I TYPE IMAGE. Se utiliza para transferir ficheros binarios. TYPE E TYPE EBCDIC. (No soportado). TYPE L 8 TYPE LOCAL. Solo se soporta LOCAL 8 = IMAGE. Respuestas: 450 Error, system busy. 501 TYPE argument error. 501 TYPE format not recognized. 501 TYPE ASCII format error. 504 TYPE ASCII CARRIAGE not supported. 504 TYPE LOCAL size not supported. 504 TYPE EBCDIC not supported. 530 Access denied, not logged in. 200 TYPE is set to ASCII NON PRINT. 200 TYPE is set to ASCII TELNET. 200 TYPE is set to IMAGE. ROUTER TELDAT - Introducción FTP I - 10 Doc.DM724 Rev. 10.91 200 TYPE is set to LOCAL 8. ------------------------------------------------------------------------------Orden MODE: Define el modo de transferencia. Se reconocen los siguientes Modos: MODE S Se define el modo como STREAM. MODE B Se define el modo como BLOCK MODE C Se define el modo como COMPRESSED. Respuestas: 450 Error, system busy. 501 MODE argument error. 501 MODE format not recognized. 504 MODE BLOCK not supported. (En caso de no estar integrado). 504 MODE COMPRESSED not supported. (En caso de no estar integrado). 530 Access denied, not logged in. 200 MODE is set to STREAM. 200 MODE is set to BLOCK. 200 MODE is set to COMPRESSED. ------------------------------------------------------------------------------Orden STRU: Define el tipo de estructura. Se reconocen las siguientes estructuras: STRU F Se define la estructura FILE. STRU R Se define la estructura RECORD. STRU P (No soportado). Se define la estructura PAGE. Respuestas: 450 Error, system busy. 501 STRU argument error. 501 STRU format not recognized. 504 STRU PAGE not supported. 504 STRU RECORD not supported. (En caso de no estar integrado). 530 Access denied, not logged in. 200 STRU is set to FILE. 200 STRU is set to RECORD. ------------------------------------------------------------------------------Orden ABOR: Aborta la operación en curso y cierra el enlace de datos si es necesario. Respuestas: Depende del comando cancelado, aquí se muestran algunas. Si el servidor se encuentra ejecutando un comando, proporciona dos respuestas, la primera indica que el comando se cancela y la segunda indica que el comando ABOR ha sido ejecutado. Si el servidor se encuentra en reposo, solo envía la segunda respuesta. 530 Access denied, not logged in. ROUTER TELDAT - Introducción FTP I - 11 Doc.DM724 Rev. 10.91 (1 respuesta) 426 Aborting RNFR command... 426 Aborting RNTO command... 426 Aborting DELE command... 426 Aborting LIST command... 426 Aborting NLST command... 426 Aborting RETR command... 426 Aborting STOR command... 426 Aborting APPE command... 426 Aborting MDTM command... 426 Aborting SIZE command... 426 Aborting SITE command... (2 respuestas) 226 Command ABOR successfully processed. ------------------------------------------------------------------------------Orden LIST: Envía el directorio del sistema de ficheros activo al cliente por el enlace de datos. Admite como parámetro la máscara de selección de ficheros. Respuestas: Por el enlace de datos se envía el directorio en forma de texto con formato Unix o MSdos (dependiendo de la configuración) para que lo reconozcan y puedan interpretar la mayoría de clientes gráficos. Cada entrada de directorio finaliza con CR-LF. Por el enlace de control pueden aparecer las respuestas: 411 Unable to get DTP. 425 Unable to open data transport. 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Pathname too long. 501 Invalid pathname. 530 Access denied, not logged in. 550 Error ending search. 550 Error closing device. 125 Data connection already open, list transfer in process... 150 Data connection open, list transfer in process... 225 List transfer completed, data connection is open. 226 List transfer completed, data connection is closed. ------------------------------------------------------------------------------- (Inicial) (Inicial) (Final) (Final) Orden NLST: ROUTER TELDAT - Introducción FTP I - 12 Doc.DM724 Rev. 10.91 Envía la lista de nombres de ficheros y el directorio del sistema de ficheros activo al cliente por el enlace de datos. Admite como parámetro la máscara de selección de ficheros. Respuestas: Por el enlace de datos se envía la relación de nombres de fichero del directorio separados por CR-LF. Por el enlace de control pueden aparecer las respuestas: 411 Unable to get DTP. 425 Unable to open data transport. 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Pathname too long. 501 Invalid pathname. 530 Access denied, not logged in. 550 Error ending search. 550 Error closing device. 125 Data connection already open, list transfer in process... (Inicial) 150 Data connection open, list transfer in process... (Inicial) 225 List transfer completed, data connection is open. (Final) 226 List transfer completed, data connection is closed. (Final) ------------------------------------------------------------------------------Orden PWD: Orden XPWD: Envía el nombre del directorio de trabajo. El servidor FTP solo se encuentra implementado para funcionar en el directorio raíz de los sistemas de ficheros. Además, indica el sistema de ficheros utilizado. Respuestas: 450 Error, system busy. 530 Access denied, not logged in. 257 "/%s" is current directory. ------------------------------------------------------------------------------Orden SMNT: Structure MouNT. Sirve para activar el sistema de ficheros que va a utilizar el servidor. Como argumento hay que dar el nombre del sistema de ficheros. Respuestas: 450 Error, system busy. 501 File system not recognized. 530 Access denied, not logged in. 550 File system is not available. 200 File system mounted. ------------------------------------------------------------------------------- ROUTER TELDAT - Introducción FTP I - 13 Doc.DM724 Rev. 10.91 Orden OPTS: RFC-2389 Negocia las opciones de algunos comandos implementados en el servidor. Respuestas: 450 Error, system busy. 501 No options available 530 Access denied, not logged in. ROUTER TELDAT - Introducción FTP I - 14 Doc.DM724 Rev. 10.91 4.3. Comandos aceptados sólo con usuarios con nivel de acceso ROOT Orden RETR: Envía el fichero al cliente por el enlace de datos. El parámetro indica el nombre del fichero en el directorio actual. Respuestas: Por el enlace de datos se envía el fichero según se haya seleccionado el tipo, la estructura y el modo (TYPE, STRU y MODE). Por el enlace de control pueden aparecer las respuestas: 411 Unable to get DTP 425 Unable to open data transport. 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 501 Invalid pathname. 530 Access denied, not logged in. 550 Unable get file length. 550 Unable to open file. 550 Error reading file. 550 Error closing file. 550 Error closing device. 554 Unable to seek in file. 125 Data connection already open, file transfer in process... (Inicial) 150 Data connection open, file transfer in process... (Inicial) 225 RETR completed, %lu bytes processed, data connection is open. (Final) 226 RETR completed, %lu bytes processed, data connection is closed. (Final) ------------------------------------------------------------------------------Orden STOR: Recibe un fichero del cliente sobrescribiéndolo si ya existe en el sistema de ficheros activo. El parámetro indica el nombre del fichero. Si el servidor se encuentra funcionando en modo seguro, el fichero se escribe en un buffer de memoria temporal en lugar del sistema de ficheros activo, esto se hace para que si hay problemas en la transmisión, los ficheros enviados no destruyan los ya existentes. Esto podría ser catastrófico en una telecarga del programa fallida seguido de un reset del equipo, ya que el equipo no seria capaz de arrancar por si solo. Respuestas: Se recibe por el enlace de datos el fichero según se haya seleccionado el tipo, la estructura y el modo (TYPE, STRU y MODE). Por el enlace de control pueden aparecer las respuestas: 411 Unable to get DTP 425 Unable to open data transport. ROUTER TELDAT - Introducción FTP I - 15 Doc.DM724 Rev. 10.91 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 501 Invalid pathname. 503 Application not supported by hardware level (rcvd. %lu, reqd. %lu). 503 Application older than the stored one. 503 Application incompatible with the stored profile. 503 Application not supported by present BIOS. 503 Firmware not supported by hardware level (rcvd. %lu, reqd. %lu). 503 Firmware older than the stored one. 503 BIOS not supported by hardware level (rcvd. %lu, reqd. %lu). 503 BIOS older than the stored one. 503 Unknown checked file type. 530 Access denied, not logged in. 530 File system for secure transfer not loaded. 535 Unexpected end of checked file. 536 Received checked file with bad checksum. 530 Alternate file system not loaded. 550 Unable to open file. 550 Error writing file. 550 Error closing file. 550 Error closing device. 550 Internal file rename failed. 551 Firmware unknown. 552 Firmware misbuilt. 552 Firmware not required. 554 Unable to seek in file. 110 MARK %s = %lu (Intermedia posible cuando MODE B o C) 125 Data connection already open, file transfer in process... (Inicial) 125 Data connection already open, checked file transfer in process... (Inicial) 150 Data connection open, file transfer in process... (Inicial) 150 Data connection open, checked file transfer in process... (Inicial) 225 STOR completed, %lu bytes processed, data connection is open. (Final) 226 STOR completed, %lu bytes processed, data connection is closed. (Final) ------------------------------------------------------------------------------Orden APPE: Recibe un fichero del cliente. Si el servidor funciona en modo seguro, los datos recibidos se agregan al final del contenido del buffer temporal, en caso de estar vacío, se comporta como la orden STOR. ROUTER TELDAT - Introducción FTP I - 16 Doc.DM724 Rev. 10.91 Si el servidor funciona en modo no seguro y el fichero no existe, se comporta igual que la orden STOR. Si el servidor funciona en modo no seguro y el fichero ya existe, lo que se recibe se agrega al final del fichero ya existente. Respuestas: Se recibe por el enlace de datos el fichero según se haya seleccionado el tipo, la estructura y el modo (TYPE, STRU y MODE). Por el enlace de control pueden aparecer las respuestas: 411 Unable to get DTP 425 Unable to open data transport. 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 501 Invalid pathname. 530 Access denied, not logged in. 530 File system for secure transfer not loaded. 550 Unable get file length. 550 Unable to open file. 550 Error writing file. 550 Error closing file. 550 Error closing device. 554 Unable to seek in file. 110 MARK %s = %lu (Intermedia posible cuando MODE B o C) 125 Data connection already open, file transfer in process... (Inicial) 150 Data connection open, file transfer in process... (Inicial) 225 APPE completed, %lu bytes processed, data connection is open. (Final) 226 APPE completed, %lu bytes processed, data connection is closed. (Final) ------------------------------------------------------------------------------Orden ALLO: (No soportado). Reserva de almacenamiento temporal Respuestas: 450 Error, system busy. 530 Access denied, not logged in. 202 Command not implemented, superfluous at this site. ------------------------------------------------------------------------------Orden DELE: Borra un fichero del disco si se encuentra operativa la unidad. El parámetro es el nombre del fichero. Respuestas: 450 Error, system busy. 411 Unable to get DTP ROUTER TELDAT - Introducción FTP I - 17 Doc.DM724 Rev. 10.91 450 File system not available. 450 Error opening File System. 501 Invalid filename. 530 Access denied, not logged in. 550 Unable to delete file. 550 Error closing device. 250 File deleted. ------------------------------------------------------------------------------Orden RNFR: Permite renombrar un fichero del disco. El parámetro es el nombre actual. Con esta orden se almacena el nombre actual del fichero. Para renombrarlo es necesario enviar después la orden RNTO. Respuestas: 450 Error, system busy. 411 Unable to get DTP 450 File system not available. 450 Error opening File System. 501 Invalid filename. 530 Access denied, not logged in. 550 File not found. 550 Error ending search. 550 Error closing device. 350 Rename pending further information. ------------------------------------------------------------------------------Orden RNTO: Permite renombrar un fichero del disco. El parámetro es el nuevo nombre del fichero, para llevar a cabo esta orden es necesario haber recibido antes la orden RNFR. Respuestas: 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 503 Bad sequence of commands RNFR and RNTO. 530 Access denied, not logged in. 550 Unable to rename file. 550 Error closing device. 250 File successfully renamed. ------------------------------------------------------------------------------Orden SITE: Orden que agrupa un conjunto de ordenes no estándar que reconoce el servidor de este SITE. Admite las citadas en el apartado 3. Respuestas: 411 Unable to get DTP for BACKUP ROUTER TELDAT - Introducción FTP I - 18 Doc.DM724 Rev. 10.91 411 Unable to get DTP for COHERENCE 411 Unable to get DTP for SAVEBUFFER 411 Unable to get DTP for GETFILEVER 450 Error, system busy. 450 File system not available. 450 Error opening File System. 450 Temporal internal error. 500 SITE command not recognized. 500 SITE COMPATIBLE mode not recognized. 500 SITE DIRECT mode not recognized. 500 SITE IMMEDIATE mode not recognized. 500 SITE KEEPALIVE mode not recognized. 500 SITE RELOAD mode not recognized. 500 SITE REPLY mode not recognized. 500 SITE SYSTMODE mode not recognized. 500 SITE CHECK control not recognized. 500 SITE CHECK %s control mode not recognized. 500 DTP cannot process this SITE command. 501 File system not recognized. 501 File system not allowed in test mode. 501 Invalid filename. 503 No Temporal buffer present. 503 Temporal buffer is locked. 503 Temporal buffer is already locked. 503 Temporal buffer is empty. 503 Target file system not supports SAVEBUFFER. 504 Feature not present. 504 Info not available. 530 Access denied, not logged in. 530 File too short. 530 Info not available. 550 Coherence checker is busy. 550 Not enough memory for command 550-COHERENCE results <resultados coherence> 550 COHERENCE results end 550 Disk not available 550 Unable get freespace. 550 Unable get filelength. 550 Unable to open file. 550 Unable to read file. 550 Unable to write file. 550 Unable backup operation. ROUTER TELDAT - Introducción FTP I - 19 Doc.DM724 Rev. 10.91 550 Error closing file. 550 Error closing device. 550 File system is not available. 552 Error saving slaves. 550 Unable create order. 550 Unable get message. 550 Unknown (Respuesta de SYSTID cuando es desconocido). 552 Not enough space to save file. 119 Backup in process... 119 Checking firmware coherence... 119 Saving temporal buffer... 119 Saving temporal buffer over slave devices… 200 COMPATIBLE mode is set to %s 200 DIRECT is set to %s. 200 IMMEDIATE mode is set to %s. 200 KEEPALIVE mode is set to %s. 200 RELOAD mode is set to %s. 200 REPLY mode is set to %s. 200 CHECK %s control is set to %s. 200 SYST is set to %s. 200 SAVEBUFFER ordered. Please, close connection to proceed. 200 SAVEBUFFER completed O.K. 200 SAVESLAVES completed O.K. 200 None (Respuesta de LISTFIRMWARES cuando no son necesarios) 204 <NNNNNNNN.EEE> (Respuesta de GETAPPNAME y GETCFGNAME) 211 Temporal buffer cleared and deallocated. 211 %s: is permanent storage device, direct mode is %s. 211 Buffer status: MAX-REQ-BUSY %lu-%lu-%lu filename: "%s.%s". 211 <NNNNNNNN.EEE;...> (Respuesta de LISTFIRMWARES cuando son necesarios) 211 <systid> (Respuesta de SYSTID dependiendo del equipo) 211-COHERENCE results <resultados coherence> 211 COHERENCE results end 213-BIOS: <NNNNNNNN> (Respuesta de GETHDWLVL) 213 APPL: <NNNNNNNN> (Respuesta de GETHDWLVL) 214 <NNNNNN> (Respuesta de GETBIOSVER) 214 <NNNNNN.SSSSSS> (Respuesta de GETFILEVER) 250 Backup successful. ------------------------------------------------------------------------------Orden CDUP: Orden XCUP: Cambiar el directorio de trabajo al directorio padre del actual. Ahora solo sirve para poder tratar los sistemas de ficheros como directorios. ROUTER TELDAT - Introducción FTP I - 20 Doc.DM724 Rev. 10.91 Respuestas: 450 Error, system busy. 550 Top of tree. 530 Access denied, not logged in. 200 CDUP command successful. ------------------------------------------------------------------------------Orden CWD: Orden XCWD: Cambia el directorio de trabajo al directorio que indica el parámetro. Ahora solo sirve para poder tratar los sistemas de ficheros como directorios, también admite '..' o '/' para subir al directorio raíz. Respuestas: 450 Error, system busy. 501 No pathname defined. 501 Invalid pathname. 501 Pathname not allowed in test mode. 550 Pathname not available. 200 CWD current dir successful. 200 CWD root dir successful. 200 CWD Command successful. ------------------------------------------------------------------------------Orden MKD: Orden XMKD: (No soportada). Crea un nuevo directorio en el disco con el nombre que indique el parámetro. Respuestas: 450 Error, system busy. 502 Command not implemented. 530 Access denied, not logged in. ------------------------------------------------------------------------------Orden RMD: Orden XRMD: (No soportada). Borra un directorio del disco con el nombre que indique el parámetro. Respuestas: 450 Error, system busy. 502 Command not implemented. 530 Access denied, not logged in. ------------------------------------------------------------------------------Orden REST: Permite restablecer una transferencia de ficheros si el sistema de ficheros lo permite. Respuestas: 450 Error, system busy. 530 Access denied, not logged in. 200 Restore offset set to 0." ROUTER TELDAT - Introducción FTP I - 21 Doc.DM724 Rev. 10.91 350 Restore offset set to %lu, use RETR, STOR or APPE to init transfer. ------------------------------------------------------------------------------Orden STOU: (No soportada). STOre Unique, se comporta como la orden STOR pero no se envía el nombre de fichero y el equipo le asigna un nombre único al fichero. Respuestas: 450 Error, system busy. 502 Command not implemented. 530 Access denied, not logged in. ------------------------------------------------------------------------------Orden MDTM: Orden No estándar que devuelve la fecha y hora de modificación de un fichero. El parámetro es el nombre del fichero. Respuestas: 450 Error, system busy. 411 Unable to get DTP. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 530 Access denied, not logged in. 550 File not found. 550 Error ending search. 550 Error closing device. 213 YYYYMMDDHHMMSS ------------------------------------------------------------------------------Orden SIZE: Orden No estándar que devuelve la longitud de un fichero. El parámetro es el nombre del fichero. Respuestas: 450 Error, system busy. 411 Unable to get DTP 450 File system not available. 450 Error opening File System. 501 Invalid filename. 530 Access denied, not logged in. 550 File not found. 550 Error ending search. 550 Error closing device. 213 nnnnnnnnn ------------------------------------------------------------------------------Orden XCRC: Orden No estándar que devuelve el cálculo CRC-32 de un fichero. Los parámetros son el nombre del fichero encerrado entre comillas, el offset (opcional) de inicio y la longitud (opcional) del fichero a calcular. ROUTER TELDAT - Introducción FTP I - 22 Doc.DM724 Rev. 10.91 Respuestas: 411 Unable to get DTP 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 501 Invalid pathname. 504 Feature not present. (En caso de no estar integrado). 530 Access denied, not logged in. 550 CRC offset past eof. 550 CRC size past eof. 550 Unable get filelength. 550 Unable to open file. 550 Error closing file. 550 Error closing device. 550 Error reading file. 554 Unable to seek in file. 250 XXXXXXXX ------------------------------------------------------------------------------Orden XMD5: Orden No estándar que devuelve el cálculo MD5 de un fichero. Los parámetros son el nombre del fichero encerrado entre comillas, el offset (opcional) de inicio y la longitud (opcional) del fichero a calcular. Respuestas: 411 Unable to get DTP 426 Unexpected data link close. 450 Error, system busy. 450 File system not available. 450 Error opening File System. 501 Invalid filename. 501 Invalid pathname. 530 Access denied, not logged in. 550 CRC offset past eof. 550 CRC size past eof. 550 Unable get filelength. 550 Unable to open file. 550 Error closing file. 550 Error closing device. 550 Error reading file. 554 Unable to seek in file. 250 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ------------------------------------------------------------------------------- ROUTER TELDAT - Introducción FTP I - 23 Doc.DM724 Rev. 10.91 ------------------------------------------------------------------------------Posibles órdenes nuevas: No implementadas. Respuestas: 221 Inactivity Timer Expired. Goodbye. 450 Error, system busy. 500 DTP cannot process this command. 500 Syntax error, command line too long. 500 Syntax error, command delimiter error. 500 Syntax error, command unrecognized. 502 Command not implemented. 503 Unexpected data connection indication. 530 Access denied, not logged in. ROUTER TELDAT - Introducción FTP I - 24 Doc.DM724 Rev. 10.91 5. Protocolo sFTP El SSH File Transfer Protocol o sFTP, proporciona la posibilidad de permitir el acceso seguro al sistema de ficheros del equipo sobre un enlace de datos fiable. Es el protocolo de transferencia utilizado con el protocolo SSH2. Este protocolo se ha diseñado para poder implementar un servicio de acceso a los sistemas de ficheros remotos, así como de un servicio de transferencia de ficheros. El protocolo asume que funciona sobre un canal seguro, el servidor ha identificado al usuario en el extremo del cliente, y que la identidad del usuario está disponible externamente al servidor. Este protocolo sigue un modelo simple de comando/respuesta. Cada comando y respuesta contiene un número de secuencia y se pueden enviar múltiples comandos simultáneamente. Hay una amplia variedad de mensajes de comando, mientras que hay un número reducido de respuestas. Cada mensaje de comando tiene uno o varios mensajes de respuesta que pueden retornar el resultado, (por ejemplo, resultado de lectura o error). Aunque este protocolo se describe en el contexto del protocolo SSH2, este protocolo es genérico e independiente del resto del protocolo SSH2. Cuando se usa con SSH2, este protocolo se utiliza como un subsistema, según sse describe en la sección ``Starting a Shell or a Command'' de SSH2. El nombre del subsistema utilizado para este protocolo es “sftp”. ROUTER TELDAT - Introducción FTP I - 25 Doc.DM724 Rev. 10.91 6. Implementación servidor sFTP El servidor implementado soporta la versión 3 del protocolo, con las siguientes modificaciones: Comando Respuesta OPEN (Lectura y Escritura simultáneas) FSTAT SETSTAT FSETSTAT MKDIR RMDIR READLINK SYMLINK EXTENDED (Desconocidos) No soportado No soportado No soportado No soportado No soportado No soportado No soportado No soportado No soportado Ignorados Las operaciones simultáneas de lectura y escritura sobre los ficheros no se permiten debido a que los sistemas de ficheros no lo soportan. Los clientes deben abrir los ficheros como lectura o como escritura. ROUTER TELDAT - Introducción FTP I - 26 Doc.DM724 Rev. 10.91 7. Comandos y Respuestas sFTP Los comandos implementados en el servidor sFTP son los siguientes: Orden Abrir Conexión sFTP : Este es el proceso que conecta con el servidor sFTP del equipo por SSH2. Respuestas: La conexión se establece. ------------------------------------------------------------------------------Orden Cerrar Conexión sFTP : Este es el proceso que desconecta el servidor sFTP del equipo por SSH2. Respuestas: La conexión se libera. ------------------------------------------------------------------------------Orden INIT: Inicialización del protocolo. Es el primer comando que se debe recibir tras el establecimiento de conexión para negociar la versión del protocolo y otros aspectos de la sesión. Respuestas: VERSION: x (x = 3 ó inferior, según la versión enviada por el cliente). ------------------------------------------------------------------------------Orden OPEN: Abre un fichero. Respuestas: STATUS: OPERATION-UNSUPPORTED “R/W operation not defined" "READ/WRITE simultaneous not supported by this system" STATUS: NO_SUCH_FILE “Invalid Path" STATUS: FAILURE "Invalid filename” "Unable to allocate handler" "Unable to open device" "Unable to open file" STATUS: PERMISSION_DENIED "Check target path for possible bios/application file" "Check target path for possible firmware file" "Check target path for possible image file" ROUTER TELDAT - Introducción FTP I - 27 Doc.DM724 Rev. 10.91 "Check target path for possible boot file" "Operation denied to this client" "Filesystem busy" HANDLE: Identificador del handler conseguido. ------------------------------------------------------------------------------Orden CLOSE: Cierra un fichero o un directorio. Respuestas: STATUS: FAILURE "Invalid handler” STATUS: OK "File/Dir closed OK" ------------------------------------------------------------------------------Orden READ: Lee una porción de un fichero abierto. Respuestas: STATUS: FAILURE "Invalid handler” “Illegal operation” "Unable to seek offset in file" "Unable to allocate read buffer" "Unable to read file" STATUS: EOF "Offset not supported" “Read end of file” DATA: Datos leídos del fichero ------------------------------------------------------------------------------Orden WRITE: Escribe una porción en un fichero abierto. Respuestas: STATUS: FAILURE "Invalid handler” “Illegal operation” "Unable to allocate write buffer" "Unable to set offset past eof" "Unable to seek offset in file" "Unable to write file" STATUS: EOF ROUTER TELDAT - Introducción FTP I - 28 Doc.DM724 Rev. 10.91 "Offset not supported" STATUS: OK "Write file OK" ------------------------------------------------------------------------------Orden LSTAT: Devuelve los atributos e información del fichero. Respuestas: STATUS: NO_SUCH_FILE "Invalid Path" "File not found" STATUS: FAILURE "Path too long" "Unable to allocate handler" "Unable to open device" STATUS: PERMISSION DENIED "Filesystem busy" ATTRS: Información del fichero. ------------------------------------------------------------------------------Orden STAT: Devuelve los atributos e información del fichero. Respuestas: STATUS: NO_SUCH_FILE "Invalid Path" "File not found" STATUS: FAILURE "Path too long" "Unable to allocate handler" "Unable to open device" STATUS: PERMISSION DENIED "Filesystem busy" ATTRS: Información del fichero. ------------------------------------------------------------------------------Orden OPENDIR: Abre un directorio. Respuestas: STATUS: NO_SUCH_FILE “Invalid Path" STATUS: FAILURE ROUTER TELDAT - Introducción FTP I - 29 Doc.DM724 Rev. 10.91 "Path too long" "Unable to allocate handler" "Unable to open device" STATUS: PERMISSION_DENIED "Filesystem busy" HANDLE: Identificador del handler conseguido. ------------------------------------------------------------------------------Orden READDIR: Lee los atributos de los ficheros del directorio. Respuestas: STATUS: FAILURE "Invalid handler" "Not enough memory to process READDIR" "This must never occur" STATUS: EOF "No more files" NAME: Nombre, atributos e información del fichero. ------------------------------------------------------------------------------Orden REMOVE: Borra ficheros. Respuestas: STATUS: NO_SUCH_FILE “Invalid Path" "File not found" STATUS: FAILURE "Path too long" "Unable to allocate handler" "Unable to open device" "Unable to remove file" STATUS: PERMISSION_DENIED "Filesystem busy" STATUS: OK "File removed OK" ------------------------------------------------------------------------------Orden REALPATH: Devuelve el camino completo del nombre pasado. Respuestas: STATUS: NO_SUCH_FILE ROUTER TELDAT - Introducción FTP I - 30 Doc.DM724 Rev. 10.91 “Invalid Path" NAME: Camino completo del directorio o fichero. ------------------------------------------------------------------------------Orden RENAME: Renombra o mueve ficheros. Respuestas: STATUS: NO_SUCH_FILE “Invalid Old Path" “Invalid New Path" "File not found" STATUS: FAILURE "Old Path too long" "New Path too long" "Unable to allocate source handler" "Unable to allocate target handler" "Unable to allocate handler" "Unable to allocate read/write buffer" "Unable to open source device" "Unable to open target device" "Unable to open device" "Unable to open source file" "Unable to open target file" "Unable to check source file" "Computed paths are identical" "Unable to reset check file" "Bad length of checked file" "Unable to check source file crc" "Bad crc of checked file" "Internal file rename failed" "Unable to read source file, operation aborted..." "Unable to write target file, operation aborted..." "Unable to remove source file" "Unable to rename file" STATUS: PERMISSION_DENIED "Source filesystem busy" "Target filesystem busy" "Filesystem busy" "Application not supported by present BIOS" "Application older than the stored one" "Application not supported by hardware level (rcvd. %lu, reqd. %lu)" "Firmware misbuilt" ROUTER TELDAT - Introducción FTP I - 31 Doc.DM724 Rev. 10.91 "Firmware not required" "Firmware unknown" "Firmware older than the stored one" "Firmware not supported by hardware level (rcvd. %lu, reqd. %lu)." "BIOS older than the stored one" "BIOS not supported by hardware level (rcvd. %lu, reqd. %lu)." "Unknown checked file type" STATUS: OK "File moved OK" "File renamed OK" ------------------------------------------------------------------------------Orden FSTAT: Devuelve los atributos e información de un fichero abierto. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden SETSTAT: Modifica los atributos e información de un fichero. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden FSETSTAT: Modifica los atributos e información de un fichero abierto. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden MKDIR: Crea un directorio. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden RMDIR: Borra un directorio. ROUTER TELDAT - Introducción FTP I - 32 Doc.DM724 Rev. 10.91 Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden READLINK: Lee el destino de un enlace simbólico. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden SYMLINK: Crea un enlace simbólico. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Orden EXTENDED: Comando extendido. Respuestas: STATUS: OP_UNSUPPORTED "Operation not supported by this system" ------------------------------------------------------------------------------Violación del protocolo: Cualquier mensaje mal construido puede producir las siguientes respuestas: Respuestas: STATUS: BAD_MESSAGE "Bad message length" "String too long for this system" ------------------------------------------------------------------------------- ROUTER TELDAT - Introducción FTP I - 33 Doc.DM724 Rev. 10.91 Capítulo 2 Configuración 1. Comandos de Configuración En este apartado se describen los comandos para configurar el protocolo FTP. Para acceder al entorno de configuración del protocolo FTP, se deben introducir los siguientes comandos: *P 4 Config> SET FTP -- FTP user configuration -FTP config> ? La siguiente tabla resume los comandos de configuración del protocolo FTP. Comando Función ? (AYUDA) ACCOUNTING AUTHORIZATION CHECK CLIENTS CONTROL-PORT DATA-PORT DEFAULT DIRECT Lista comandos u opciones. Configura las opciones de contabilización. Configura las opciones de autorización. Selecciona las comprobaciones a realizar sobre los ficheros recibidos. Establece el número máximo de clientes conectados simultáneamente. Configura el puerto TCP de control de sesión FTP. Configura el puerto TCP de transferencia de datos. Borra la configuración actual y establece la configuración por defecto. Selecciona el funcionamiento en modo normal guardando el fichero que se recibe en el sistema de ficheros activo para esa sesión Selecciona la recepción por TCP de datos a base de indicaciones directas. Activa el keepalive en el enlace de datos. Lista configuración FTP. Configura las opciones de login. Configura el máximo tamaño de segmento TCP. Deshabilita las distintas posibilidades del FTP. Determina el formato que usa el servidor cuando devuelve el nombre de un fichero al ejecutar el comando LIST Establece la prioridad de las tareas FTP. Activa el envío de respuestas cuando un comando tarda en ejecutarse. Configura el tamaño de los buffers que son utilizados para la recepción TCP del DTP. Específica el sistema de ficheros a activar por defecto. Configura el tamaño de los buffers temporales. Configura temporizador de inactividad. Configura el tamaño de los buffers que son utilizados para la transmisión TCP del DTP Vuelve al prompt anterior. IMMEDIATE KEEPALIVE LIST LOGIN MSS NO OS PRIORITY REPLY RX-BUFF SYST TEMP-BUFF TIMER TX-BUFF EXIT ROUTER TELDAT - Configuración FTP II - 35 Doc.DM724 Rev. 10.91 1.1. ?(AYUDA) Tecleando ? se muestran todos los comandos disponibles. También puede usar el símbolo ? para visualizar las distintas opciones de cada comando. Sintaxis: FTP config> ? Ejemplo: FTP config> ? accounting authorization check clients control-port data-port default direct immediate keepalive list login mss no os priority reply rx-buff syst temp-buff timer tx-buff exit Set accounting options Set authorization options Set checks to perform to firmware received Sets the maximum number that can be simultaneously connected Configures the FTP session control TCP port Configures the data transfer TCP port Sets default configuration Saves the received file in the active file system Selects Rx data by the TCP based on direct indications Activates the keepalive in the data link Lists current configuration Set login options Configures the maximum TCP segment size Disables the FTP server capabilities Determines the format used by the server Establishes the FTP task priority Activates the sending of replies when there are delays Sets the size of the buffers used to receive TCP from DTP Specifies the file system to activate by default Configures the temporary buffer size Configures the inactivity timer Sets the size of the buffers used to receive TCP from DTP 1.2. [NO] ACCOUNTING Este comando asocia una lista de métodos de tipo accounting exec que ha sido definida utilizando la facilidad AAA. De esta forma el servicio FTP aplica los métodos de la lista accounting exec cuando registra un acceso a la Shell. Sintaxis: FTP config>accounting exec <listname> <listname>: Identificador de la lista de métodos de contabilización. Ejemplo: FTP config>accounting exec AccExec FTP config> En el ejemplo se configura la lista de métodos AccExec para que sea usada cuando se realiza la contabilización de un acceso a la Shell de FTP. Las listas de métodos sólo pueden ser aplicadas si se encuentra la facilidad AAA habilitada. Por ello, una vez finalizada la configuración de AAA se debe habilitar para poder aplicar las listas a los distintos servicios. La información sobre como configurar la facilidad AAA se puede encontrar en el manual “Dm800 Facilidad AAA”. ROUTER TELDAT - Configuración FTP II - 36 Doc.DM724 Rev. 10.91 1.3. [NO] AUTHORIZATION Este comando asocia una lista de métodos de tipo authorization exec que ha sido definida utilizando la facilidad AAA. De esta forma el servicio FTP aplica los métodos de la lista authorization exec cuando requiera autorización de la Shell. Sintaxis: FTP config>authorization exec <listname> <listname>: Identificador de la lista de métodos de autorización. Ejemplo: FTP config>authorization exec AuthorExec FTP config> En el ejemplo se configura la lista de métodos AuthorExec para que sea usada cuando se requiera autorización de la Shell de FTP. Las listas de métodos solo pueden ser aplicadas si se encuentra la facilidad AAA habilitada. Por ello, una vez finalizada la configuración de AAA se debe habilitar para poder aplicar las listas a los distintos servicios. La información sobre como configurar la facilidad AAA se puede encontrar en el manual “Dm800 Facilidad AAA”. 1.4. CHECK Esta opción selecciona las comprobaciones a realizar sobre los ficheros binarios recibidos en el equipo. Todas las operaciones del antiguo comando “COMPATIBILITY” han sido desglosadas para poder ser controladas independientemente. Además, se han introducido nuevas comprobaciones que el antiguo comando no es capaz de controlar. Sintaxis: FTP config> [no] check ? all All checks bios Check min BIOS version support crc Check file CRC delete Auto delete temporal buffer firmware Check firmware files hardware Check min hardware history support hw-supported Check hardware supported length Check file length path Auto adjust BIOS path profile Rejects incompatible profile extension rename Auto rename file system Auto adjust default file system unknown Reject unknown binary files version Reject older versions a) [NO] CHECK ALL Activa o desactiva todas las comprobaciones que se realizan a los ficheros recibidos. Ejemplo: FTP config> check all FTP config> b) [NO] CHECK BIOS Activa o desactiva la comprobación de compatibilidad con BIOS. En este caso, si el fichero recibido se identifica como una aplicación del equipo, se comprueba que pueda funcionar con la versión de ROUTER TELDAT - Configuración FTP II - 37 Doc.DM724 Rev. 10.91 BIOS activa para asegurar que todos los servicios solicitados por la aplicación son correctos. Si se encuentra activa, se produce error al recibir una aplicación que no soporte la versión de BIOS actual. Ejemplo: FTP config> check bios FTP config> c) [NO] CHECK CRC Activa o desactiva la comprobación de CRC. En este caso, se comprueba que el fichero recibido tiene el CRC correcto en caso de ser identificado como un tipo de fichero conocido. Se produce error al recibir un fichero con el CRC erróneo. A partir de las versiones 10.6.69 y 10.7.41, esta funcionalidad no puede ser controlada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF/ON. Ejemplo: FTP config> check crc FTP config> d) [NO] CHECK DELETE Activa o desactiva el borrado del buffer temporal. No es una comprobación propiamente dicha sobre los ficheros recibidos. En caso de estar activa, el buffer temporal es borrado tras ejecutarse una orden SITE SAVEBUFFER cuando sólo hay 1 cliente permitido. Ejemplo: FTP config> check delete FTP config> e) [NO] CHECK FIRMWARE Activa o desactiva la comprobación de firmwares. En caso de reconocer el fichero recibido como firmware, se comprueba si es necesario y su idoneidad. Se produce error en caso de no ser necesario o no ser reconocido como bueno. Ejemplo: FTP config> check firmware FTP config> f) [NO] CHECK HARDWARE Activa o desactiva la comprobación de revisión de Hardware. En este caso, si el fichero recibido es identificado como un tipo conocido, se comprueba que su funcionamiento es correcto con la revisión de hardware existente en el equipo. La revisión de hardware es un código que permite indicar que ciertos problemas de hardware son resueltos por una versión mínima de software. Esta funcionalidad no puede ser desactivada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF. Ejemplo: FTP config> check hardware FTP config> g) [NO] CHECK HW-SUPPORTED Activa o desactiva la comprobación de si el software cargado es compatible con el equipo. En este caso, si el fichero recibido se identifica como una aplicación del equipo, se comprueba que el identificador hardware de dicho equipo, sin incluir su revisión, está entre la lista de hardwares soportados incluida en el fichero. Esta funcionalidad no puede ser desactivada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF. ROUTER TELDAT - Configuración FTP II - 38 Doc.DM724 Rev. 10.91 Ejemplo: FTP config> check hw-supported FTP config> h) [NO] CHECK LENGTH Activa o desactiva la comprobación de longitud. En este caso, se comprueba que el fichero recibido tiene la longitud correcta en caso de ser identificado como un tipo de fichero conocido. Se produce error al recibir un fichero cuya longitud no corresponda con la esperada. La longitud debe ser múltiplo de 128 bytes. A partir de las versiones 10.6.69 y 10.7.41, esta funcionalidad no puede ser controlada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF/ON. Ejemplo: FTP config> check length FTP config> i) [NO] CHECK PATH Activa o desactiva el ajuste automático del path para salvar BIOS. No es una comprobación propiamente dicha sobre los ficheros recibidos. En caso de estar activa, si el fichero recibido se identifica como BIOS, se ajusta el path automáticamente al ejecutar la orden SITE SAVEBUFFER para que la BIOS se salve en su sitio (BIO). A partir de las versiones 10.6.69 y 10.7.41, esta funcionalidad no puede ser controlada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF/ON. Ejemplo: FTP config> check path FTP config> j) [NO] CHECK PROFILE Activa o desactiva la comprobación de la extensión del perfil del fichero recibido. En caso de estar activa, si el fichero recibido se identifica como un fichero reconocido del equipo, se comprueba que la extensión del perfil sea igual que la que tiene el fichero activo, en caso de que sea distinta, se devuelve error. Ejemplo: FTP config> check profile FTP config> k) [NO] CHECK RENAME Activa o desactiva el renombrado automático del fichero recibido. No es una comprobación propiamente dicha sobre los ficheros recibidos. En caso de estar activa, si el fichero recibido se identifica como conocido, ya sea aplicación o firmware, se utilizará el nombre que va estampado internamente para guardarlo en el equipo, independientemente del nombre utilizado para enviarlo. A partir de las versiones 10.6.69 y 10.7.41, esta funcionalidad no puede ser controlada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF/ON. Ejemplo: FTP config> check rename FTP config> ROUTER TELDAT - Configuración FTP II - 39 Doc.DM724 Rev. 10.91 l) [NO] CHECK SYSTEM Activa o desactiva la activación automática del sistema de ficheros utilizado al iniciar las conexiones con los clientes. No es una comprobación sobre los ficheros recibidos. En caso de estar activa, si el sistema configurado es NUL, se busca el sistema de ficheros por defecto adecuado al equipo. Ejemplo: FTP config> check system FTP config> m) [NO] CHECK UNKNOWN Activa o desactiva la comprobación de rechazo de ficheros no reconocidos. En caso de estar activa, se comprueba si el fichero recibido con extensión reconocida es en realidad un fichero conocido, en caso de no serlo, se produce error. En caso de estar inactiva, los ficheros desconocidos cuya extensión sea BIN, BFW o cualquiera que se identifique como reconocida, son aceptados. Esta funcionalidad no puede ser desactivada con el antiguo comando COMPATIBILITY, ni con la orden SITE COMPATIBLE OFF. Ejemplo: FTP config> check unknown FTP config> n) [NO] CHECK VERSION Activa o desactiva la comprobación de versión. En caso de estar activa, si el fichero recibido se identifica como un fichero reconocido del equipo, se comprueba que su versión estampada sea posterior a la que tiene el fichero activo, en caso de que sea anterior, se devuelve error. Ejemplo: FTP config> check version FTP config> 1.5. CLIENTS Establece el número máximo de clientes conectados simultáneamente al servidor FTP. Sintaxis: FTP config> clients <numero-maximo> Ejemplo: FTP config> clients 2 FTP config> 1.6. CONTROL-PORT Configura el puerto TCP de control de sesión FTP. Por defecto, el puerto es el 21. Sintaxis: FTP config> control-port <num-puerto-control> Ejemplo: FTP config> control-port 21 FTP config> ROUTER TELDAT - Configuración FTP II - 40 Doc.DM724 Rev. 10.91 1.7. DATA-PORT Configura el puerto TCP de transferencia de datos. Por defecto el puerto es el 20. Sintaxis: FTP config> data-port <num-puerto-datos> Ejemplo: FTP config> data-port 20 FTP config> 1.8. DEFAULT Este comando permite borrar la configuración actual, estableciendo como configuración la configuración por defecto. Sintaxis: FTP config> default Ejemplo: FTP config> default FTP config> 1.9. [NO] DIRECT Esta opción selecciona el funcionamiento en modo normal guardando el fichero que se recibe en el sistema de ficheros activo para esa sesión. Atención, esta facilidad sirve para funcionar en casos de emergencia, como por ejemplo, en condiciones de poca memoria libre. Algunos equipos no admiten este modo de funcionamiento en el sistema de almacenamiento FCO debido a que ejecutan su código en la propia memoria flash. Esta facilidad pasa por alto algunas protecciones del servidor a la hora de grabar el código en los sistemas de almacenamiento y la carga de código no es segura, ya que en caso de desconexión inesperada, el código enviado no estará completo, pudiendo quedar el equipo inutilizado. Utilizar con precaución o bajo supervisión de personal de Teldat. En caso de desactivarla, hace que el servidor funcione en modo seguro en las telecargas. Cuando se ejecuta la orden STOR, el fichero se guarda en el buffer temporal de memoria y para guardarlo en el sistema de ficheros activo para esa sesión es necesario utilizar la orden SITE SAVEBUFFER. Sintaxis: FTP config> [no] direct Ejemplo: FTP config> direct FTP config> 1.10. [NO] IMMEDIATE Esta opción selecciona la recepción por TCP de datos a base de indicaciones directas. Si se desactiva, la recepción por TCP de datos se realiza a base de cola de indicaciones. Sintaxis: FTP config> [no] immediate ROUTER TELDAT - Configuración FTP II - 41 Doc.DM724 Rev. 10.91 Ejemplo: FTP config> immediate FTP config> 1.11. [NO] KEEPALIVE Esta opción activa el keepalive en el enlace de datos. Si se desactiva, no se envían mensajes de keepalive por el enlace de datos. Sintaxis: FTP config> [no] keepalive Ejemplo: FTP config> keepalive FTP config> 1.12. LIST Utilice el comando LIST para visualizar el contenido de la configuración FTP. Sintaxis: FTP config> list Listado correspondiente a la configuración por defecto: Ejemplo: FTP config> list FTP configuration: Operating System: Default File System: Control port: Data port: Inactivity timer: Number of clients: Priority: Maximum Segment Size: Transmission Buffer Size: Reception Buffer Size: Temporal Buffer Size: Reply: Keepalive: Immediate: Direct: Checks: FTP config> UNIX NUL 21 20 360 seconds 1 0 1024 2048 16384 0 DISABLE DISABLE ENABLE DISABLE ALL 1.13. [NO] LOGIN Este comando asocia una lista de métodos de tipo authentication login que ha sido definida utilizando la facilidad AAA. De esta forma el servicio FTP aplica los métodos de la lista asociada cuando necesite realizar la autenticación de algún usuario. Sintaxis: FTP config>login authentication <listname> <listname>: Identificador de la lista de métodos de autenticación. ROUTER TELDAT - Configuración FTP II - 42 Doc.DM724 Rev. 10.91 Ejemplo: FTP config>login authentication AutheLogin FTP config> En el ejemplo se configura la lista de métodos AutheLogin para que sea usada cuando se requiera autenticación a un usuario accediendo a la Shell de FTP. Las listas de métodos sólo pueden ser aplicadas si se encuentra la facilidad AAA habilitada. Por ello, una vez finalizada la configuración de AAA se debe habilitar para poder aplicar las listas a los distintos servicios. La información sobre como configurar la facilidad AAA se puede encontrar en el manual “Dm800 Facilidad AAA”. 1.14. MSS Configura el máximo tamaño de segmento TCP. Sintaxis: FTP config> mss <longitud-max-segmento> Ejemplo: FTP config> mss 1024 FTP config> 1.15. OS Permite determinar el formato que usa el servidor cuando devuelve el nombre de un fichero al ejecutar el comando LIST. Equivalente a los comandos SITE SYSTMODE MSDOS y SITE SYSTMODE UNIX sólo que al ejecutar estos comandos no se refleja en la configuración sino que únicamente es válido el formato especificado para la sesión establecida. Sintaxis: FTP config> os ? ms-dos Dos format unix Unix format Ejemplo: FTP config> os unix FTP config> 1.16. PRIORITY Establece la prioridad de las tareas FTP. Si su valor es 0, dicha prioridad será igual a la de las tareas TCP. Sintaxis: FTP config> priority <prioridad> Ejemplo: FTP config> priority 0 FTP config> ROUTER TELDAT - Configuración FTP II - 43 Doc.DM724 Rev. 10.91 1.17. [NO] REPLY Activa el envío de respuestas cuando un comando tarda en ejecutarse. Envía una respuesta con 1xx indicando que el comando está en proceso. Posteriormente envía una respuesta 2xx ó 5xx en función de si el comando terminó su ejecución correctamente o no. Sin embargo esto puede dar problemas en ciertos clientes en los que se toma la respuesta “en proceso” como “finalización correcta”. En nuestro servidor lo que activa es el envío de respuesta 119 en BACKUP, COHERENCE, SAVEBUFFER y SAVESLAVES. En caso de desactivarla, no realiza el envío de respuesta 119 en BACKUP, COHERENCE, SAVEBUFFER y SAVESLAVES. Sintaxis: FTP config> [no] reply Ejemplo: FTP config> reply FTP config> 1.18. RX-BUFF Configura el tamaño de los buffers que son utilizados para la recepción TCP del DTP. Sintaxis: FTP config> rx-buff <longitud-buffer-rx> Ejemplo: FTP config> rx-buff 2048 FTP config> 1.19. SYST Especifica el sistema de ficheros a activar por defecto. Sintaxis: FTP config> syst ? bio Handles the BIOS zone.Only the BIOS code files are saved here dsk Handles the disk.The code and configurations are stored here fco Handles the code Flash memory fda Handles the data Flash memory mem Temporary buffer nul Default file system when a system has not been loaded smc Handles the Smart Memory Card tst Checks that the FTP is operating correctly Ejemplo: FTP config> syst mem FTP config> 1.20. TEMP-BUFF Configura el tamaño de los buffers temporales. Sintaxis: FTP config> temp-buff <longitud-buffer-temporal> ROUTER TELDAT - Configuración FTP II - 44 Doc.DM724 Rev. 10.91 Ejemplo: FTP config> temp-buff 0 FTP config> 1.21. TIMER Configura temporizador de inactividad. Establece el tiempo (en segundos) tras el cual, si no se ha detectado actividad, se procederá a la desconexión. Sintaxis: FTP config> timer <tiempo-inactividad> Ejemplo: FTP config> timer 300 FTP config> 1.22. TX-BUFF Configura el tamaño de los buffers que son utilizados para la transmisión TCP del DTP. Sintaxis: FTP config> tx-buff <longitud-buffer-tx> Ejemplo: FTP config> tx-buff 16384 FTP config> 1.23. EXIT Use este comando para volver al prompt anterior. Sintaxis: FTP config> exit Ejemplo: FTP config> exit Config> ROUTER TELDAT - Configuración FTP II - 45 Doc.DM724 Rev. 10.91 Capítulo 3 Particularidades SITE 1. Sistemas de Ficheros Los sistemas de ficheros o sistemas de almacenamiento implementados en el servidor FTP son: • BIO Se encarga del manejo de la zona de BIOS del equipo. En él se almacenan únicamente los ficheros de código de BIOS, si el sistema detecta que no es un código válido de BIOS, no permite la grabación. Presente en equipos con facilidad de BIOS telecargable. • DSK Se encarga del manejo del disco. En él se almacenan los ficheros de código y configuración. Presente en equipos con disquetera, con disco RAM o con disco FLASH. • FCO Se encarga del manejo de la memoria Flash de código. En él se almacenan el fichero de código. Presente en equipos sin disquetera con Flash sin la facilidad de Disco FLASH. En los equipos actuales está obsoleto. • FDA Se encarga del manejo de la memoria Flash de datos. En él se almacenan los ficheros de configuración. Presente en todos los equipos con Flash sin la facilidad de disco FLASH. En los equipos actuales está obsoleto. • MEM Se encarga del manejo del buffer temporal. Presente en todos los equipos. • NUL Se utiliza como sistema de ficheros por defecto cuando un sistema no está cargado. Presente en todos los equipos. También sirve como nivel superior en el árbol del sistema de ficheros. • TS1 Sirve para comprobar si el FTP funciona y también para el funcionamiento en modo TEST. Presente en todos los equipos. • TST Sirve para comprobar si el FTP funciona y también para el funcionamiento en modo TEST. Presente en todos los equipos. • SMC Se encarga del manejo de la Smart Memory Card. Disponible sólo en equipos que dispongan de esta unidad de almacenamiento. ROUTER TELDAT – Particularidades FTP III - 47 Doc.DM724 Rev. 10.91 El servidor FTP es capaz de mantener establecidas conexiones con varios clientes simultáneamente. El número de clientes es configurable y está limitado. No obstante, sólo podrán mantener tráfico simultáneamente, aquellos clientes que estén accediendo a distintos sistemas de ficheros. ROUTER TELDAT – Particularidades FTP III - 48 Doc.DM724 Rev. 10.91 2. Usuarios (Login) El equipo dispone de los siguientes niveles de acceso: • • • SUPERVISOR INVITADO DESCONOCIDO Tiene acceso a todas las funcionalidades. Tiene acceso a parte de las funcionalidades (ver comandos). Sólo se le permite acceder al proceso de login. Para conocer el nivel de acceso de un usuario, el servidor FTP accede al sistema de autenticación que forma parte del equipo. Puede funcionar en dos modos: • Local: • Radius: Se solicita autenticación por Radius a un servidor externo (ver manual de RADIUS Dm 733). Los usuarios dados de alta en el equipo para los distintos servicios. El servidor siempre solicita la identificación de usuarios. En caso de no encontrarse el sistema de autenticación activo, los usuarios que admite el servidor son los siguientes: • • • • ROOT ANONYMOUS GUEST FTP Supervisor Invitado Invitado Invitado Por defecto, aunque el sistema la solicita, la password está vacía. ROUTER TELDAT – Particularidades FTP III - 49 Doc.DM724 Rev. 10.91 3. Modo TEST El modo TEST es un modo de funcionamiento especial del servidor del equipo. No utiliza comandos SITE, en lugar de eso utiliza secuencias de comandos estándar. Permite comprobar el funcionamiento del servidor y realizar transferencias sin poner en peligro el contenido del sistema de ficheros. Utiliza los sistemas “TST” y TS1” para realizar las transferencias. Para activar el modo TEST es necesario primero realizar el login habitual que puede ser tanto como usuario registrado como anónimo. • • • USER <user> PASS <password> ACCT <test> Existen dos comandos: • ACCT TEST0 Comando necesario para la activación del modo TEST sobre el sistema “TST”: • ACCT TEST1 Comando necesario para la activación del modo TEST sobre el sistema “TS1”: Una vez activado este modo, el servidor pasa a funcionar como un servidor FTP estándar, desactivando las diversas particularidades implementadas e impidiendo realizar acciones “peligrosas” sobre el sistema de ficheros. Los dos sistemas de almacenamiento (“TST” y “TS1”), siempre son completamente funcionales aunque no se active el modo TEST y tienen las siguientes características: • • • Al enviar ficheros hacia ellos, los mandan a un sumidero y no los almacenan, sólo memorizan el nombre del fichero enviado y la longitud. Sólo permiten un fichero en el directorio. Al recibir ficheros desde ellos, envían un fichero con datos aleatorios con el tamaño que tengan definido en el directorio. Se permite recibir ficheros con un nombre especial. Este nombre es un número que puede ir de 1 a 100 millones. En este caso, el servidor envía un fichero del tamaño que indique el nombre con datos aleatorios, así se evita que las líneas que realizan compresión de datos puedan falsear las medidas de velocidad de transferencia. La desactivación del modo TEST se puede realizar desconectando la sesión de control o mediante el siguiente comando que reinicia el proceso de login de la sesión: • REIN ROUTER TELDAT – Particularidades FTP III - 50 Doc.DM724 Rev. 10.91 4. Funcionalidad de BACKUP Esta funcionalidad está presente en algunos equipos que tienen el sistema de ficheros duplicado. Permite realizar el backup del sistema de ficheros activo sobre el sistema de reserva. De esta forma se permite al sistema de arranque recuperar el equipo frente a desastres en una telecarga o configuración anómala del equipo. Para ello, es necesario realizar la operación de backup antes de proceder a la telecarga. Nota: Si este comando se realiza tras una telecarga cuyo arranque correcto no se ha comprobado, el resultado puede provocar la imposibilidad de arranque del equipo y requerir servicio técnico. El comando que permite realizar esta operación es el siguiente: • SITE BACKUP Tras su correcta ejecución, el sistema de ficheros de reserva tiene el mismo contenido que el sistema activo. ROUTER TELDAT – Particularidades FTP III - 51 Doc.DM724 Rev. 10.91 5. Telecarga SEGURA (DIRECT OFF /ON) Esta funcionalidad del servidor permite realizar telecargas teniendo en cuenta que puede haber problemas en las líneas y la telecarga de ficheros puede resultar fallida. En ese caso, el contenido del sistema de ficheros podría aparecer corrupto y podría perderse el control del equipo, quedando inservible y requiriendo asistencia técnica. Para realizar la telecarga segura se dispone de un buffer temporal de almacenamiento. Este buffer puede ser gestionado como un sistema de ficheros ya que también se identifica como “MEM”. En el modo DIRECTO (DIRECT ON), el servidor funciona como un servidor FTP normal. Este es el modo que utiliza el servidor cuando se activa el modo TEST. En el modo SEGURO (DIRECT OFF), el servidor almacena los ficheros que se le envían en el buffer temporal. Para manejar las telecargas seguras existen una serie de comandos que se describen a continuación: • SITE CLEARBUFFER Vacía el buffer temporal de almacenamiento y libera la memoria utilizada. • SITE DIRECT OFF Desactiva el modo directo. Esto activa las telecargas seguras o modo buffer en el equipo. • SITE DIRECT ON Activa el modo directo. Esto desactiva las telecargas seguras o modo buffer. Este es el modo de funcionamiento de un servidor FTP normal. • SITE SAVEBUFFER Vuelca el contenido del buffer de memoria sobre el dispositivo de almacenamiento permanente elegido. Esta orden hay que enviarla cuando ya se ha enviado un fichero al equipo y se desea grabar, ya que la orden STOR lo graba en el buffer temporal cuando funciona en modo de telecarga segura (DIRECT OFF). Por defecto, el fichero se graba en el sistema de ficheros activo. Admite un parámetro opcional que permite indicar el sistema de ficheros donde grabar el fichero, se trata del nombre del sistema deseado. Durante el tiempo que dura la operación, no hay que apagar el equipo, de lo contrario, el sistema de ficheros podría quedar corrupto. En caso de que la conexión de control se desconecte en mitad de la operación, el equipo continúa procesando la orden hasta su finalización. • SITE SAVESLAVES Esta funcionalidad sólo está disponible en ciertas familias de equipos. Ordena la telecarga de software sobre equipos esclavos dependientes del equipo sobre el que se hace la operación. Para una mayor información, consultar el manual correspondiente en dichos equipos. • SITE STATBUFFER Visualiza el estado de ocupación del buffer temporal. En la respuesta aparecen las siguientes indicaciones: ROUTER TELDAT – Particularidades FTP III - 52 Doc.DM724 Rev. 10.91 • o MAX Máxima cantidad de memoria que el servidor puede solicitar al sistema. Es configurable, por defecto es el tamaño del sistema de ficheros del equipo. En caso de que el tamaño del fichero enviado sea mayor, el sistema indica error de escritura en el envío. o REQ Cantidad de memoria solicitada al sistema por el servidor para su uso para buffer temporal de almacenamiento. o BUSY Ocupación actual del buffer temporal. o Filename Nombre del fichero que ocupa el buffer temporal de almacenamiento. SITE STOREDEVICE Visualiza cual es el sistema de ficheros elegido por defecto para almacenamiento permanente y también indica si la funcionalidad está activa o no. El sistema de ficheros elegido por defecto suele ser el directorio activo y puede cambiarse con el comando CWD. También puede consultarse con el comando PWD. Secuencia de comandos para realizar las telecargas seguras. STOR CIT.BIN SITE STATBUFFER SITE SAVEBUFFER (Envía el fichero CIT.BIN). (Opcional, permite comprobar el contenido del buffer). (Vuelca el fichero en el dispositivo permanente). ATENCION: Al ejecutarse el comando SITE SAVEBUFFER lo que se grabará en el dispositivo de almacenamiento será el contenido del buffer de memoria en ese momento. Hay que tener en cuenta que puede ocurrir la siguiente situación: Un usuario al que se denominará Usuario1 ejecuta el comando STOR. Cuando acaba, el buffer se libera. Entonces llega un Usuario2 y antes de que el Usuario1 haya podido lanzar la orden SITE SAVEBUFFER, Usuario2 modifica el contenido del buffer. Cuando Usuario1 ejecuta SITE SAVEBUFFER grabará lo que dejó Usuario2 en el buffer y no lo que él quería. ROUTER TELDAT – Particularidades FTP III - 53 Doc.DM724 Rev. 10.91 6. Comprobación de INTEGRIDAD Existe en el equipo un sistema que permite comprobar la integridad o coherencia del contenido del sistema de ficheros principal (DSK). El comando que se encarga de comprobar si el equipo es capaz de arrancar con el software disponible es el siguiente: • SITE COHERENCE Este comando devuelve como respuesta la comprobación completa del software. La respuesta comienza por una cifra numérica (ver RFC). Si la cifra comienza por “2” significa que la comprobación es correcta. En caso contrario, en la respuesta, el equipo puede indicar el problema para poder subsanarlo. Nota: La operación se limita a comprobar que está todo el software necesario y que la interdependencia de los distintos módulos en cuanto a necesidades de versiones de software es correcta. Una respuesta positiva no indica que el equipo sea accesible remotamente, ya que ello implica que la configuración esté correcta, cosa que no se comprueba. También, una respuesta negativa, no implica necesariamente que el equipo no pueda arrancar o no sea accesible remotamente. Otros comandos que permiten obtener información: • SITE GETAPPNAME Devuelve el nombre del fichero de aplicación con la que arranca el equipo. Permite saber que fichero se utiliza en caso de existir varios con extensión BIN. • SITE GETBIOSVER Devuelve el número de versión de BIOS del equipo. • SITE GETCFGNAME Devuelve el nombre del fichero de configuración con la que arranca el equipo. Permite saber que fichero se utiliza en caso de existir varios con extensión CFG. • SITE GETFILEVER Necesita un parámetro que es un nombre de fichero. Devuelve el número de versión del fichero en caso de que tenga el formato de aplicación de Teldat. Permite a los clientes que lo soporten saber la versión de la aplicación. • SITE GETHDWLVL Devuelve el número de revisión de hardware del equipo. Consta de dos números, uno correspondiente para las BIOS y otro para las aplicaciones. • SITE LISTFIRMWARES Devuelve la lista de ficheros de firmware que necesita el equipo para hacer funcionar ciertos dispositivos. Permite a los clientes que lo soporten saber los módulos de firmware necesarios para el correcto funcionamiento del equipo. ROUTER TELDAT – Particularidades FTP III - 54 Doc.DM724 Rev. 10.91 • SITE SYSTID Devuelve el identificador del sistema. Este identificador indica el tipo de equipo del que se trata. Permite a los clientes que lo puedan soportar saber el software que tienen que enviar. ROUTER TELDAT – Particularidades FTP III - 55 Doc.DM724 Rev. 10.91 7. Modo COMPATIBLE Nota: Este comando ha sido obsoletado a partir de las versiones 10.6.68, 10.7.33, 10.6.19.1.5 y 10.6.62.1.1. Aunque sigue siendo funcional, las operaciones de este comando han pasado a estar soportadas por el nuevo SITE CHECK. A partir de las versiones 10.6.69 y 10.7.41, la funcionalidad COMPATIBLE OFF/ON no controla la desactivación/activación de las funcionalidades enumeradas a continuación y deben ser controladas con los comandos SITE CHECK: PATH-> Ajuste del path de almacenamiento de los ficheros reconocidos. CRC-> Control del CRC de los binarios reconocidos. LENGTH-> Control de la longitud de los binarios reconocidos. NAME -> Renombrado automático intrínseco. La evolución de los equipos provoca que a medida que avanza su desarrollo existan una serie de funcionalidades en los equipos modernos que los equipos antiguos no tenían. Debido a esta evolución, existe en el equipo un modo llamado “COMPATIBLE” con el funcionamiento de equipos antiguos para que las aplicaciones y los procedimientos de telecarga existentes puedan seguir funcionando con los equipos modernos. Dependiendo del estado del modo de compatibilidad, el equipo se comporta de manera diferente, haciendo transparentes ciertas operaciones cuando se encuentra bajo el modo de compatibilidad. Para controlar este modo existen los siguientes comandos: • SITE COMPATIBLE OFF Activa el funcionamiento en modo Extendido. • SITE COMPATIBLE ON Activa el funcionamiento en modo Compatible. En modo compatible el equipo tiene los siguientes comportamientos: • En modo DIRECT OFF, o telecarga segura, se reconocen los ficheros de BIOS y se ordena grabarlos en el sistema “BIO” a la hora de ejecutar la orden SITE SAVEBUFFER. • Se borra el contenido del buffer temporal tras finalizar la correcta ejecución de SITE SAVEBUFFER cuando se configura aceptar conexiones de un solo cliente simultáneamente. • A la hora de enviar ficheros al equipo (comando STOR) con el modo TEST desactivado y enviando el fichero desde su principio, se activa la comprobación de integridad de los ficheros con extensión *.BIN (aplicaciones) y *.BFW (firmwares). En caso de que el fichero no cumpla las condiciones necesarias en la cabecera, la telecarga no se lleva a cabo y se suspende. ATENCIÓN: en caso de que el problema sea que el CRC de los ficheros *.BIN es ROUTER TELDAT – Particularidades FTP III - 56 Doc.DM724 Rev. 10.91 erróneo, en modo DIRECT ON el fichero ya ha sido grabado en el sistema de ficheros y habrá eliminado al antiguo. Las condiciones comprobadas son las siguientes: o o o o o o o • Integridad del software (CRC). Compatibilidad con la BIOS del equipo. Versión más moderna que la que tiene el equipo. Renombrado del fichero según la información de cabecera. Comprobación de firmware correcto. Necesidad del firmware. Comprobación de existencia de firmware. En caso de no configurar el sistema de ficheros activo por defecto. A la hora de establecer la conexión con el cliente, se activa el primer sistema según la disponibilidad en el equipo y la prioridad que, de mayor a menor, es de la siguiente forma: DSK FDA SMC FCO BIO MEM TST TS1 NUL • En equipos con sistema FDA activo, la orden SAVEBUFFER vuelca los ficheros con extensión CFG en el sistema FDA por defecto. • En equipos con sistema FCO activo, la orden SAVEBUFFER vuelca los ficheros con extensiones X y XZ en el sistema FCO por defecto. ROUTER TELDAT – Particularidades FTP III - 57 Doc.DM724 Rev. 10.91 8. Modo CHECK Nota: Este comando ha sido introducido a partir de las versiones 10.6.68, 10.7.33, 10.6.19.1.5 y 10.6.62.1.1, obsoletando el comando SITE COMPATIBLE. Mediante este comando, el equipo puede realizar una serie de comprobaciones y acciones automáticas dirigidas a una gestión de los ficheros recibidos y que sean detectados como ficheros conocidos más cómoda. Los ficheros detectables como conocidos llevan la extensión .BIN o .BFW. Existen varias acciones que pueden ser controladas con este comando. Las comprobaciones sobre ficheros detectados como conocidos sólo se realizan cuando el modo TEST se encuentra desactivado. • SITE CHECK ALL OFF | ON Activa o desactiva todas las comprobaciones y acciones. • SITE CHECK BIOS OFF | ON Activa o desactiva el rechazo de aplicaciones cuya versión mínima de BIOS requerida sea posterior a la de la BIOS actual del sistema. • SITE CHECK CRC OFF | ON Activa o desactiva la comprobación de la integridad del software (CRC). ATENCIÓN: en modo DIRECT ON, en caso de que el CRC del fichero sea erróneo, el fichero ya ha sido grabado en el sistema de ficheros y habrá eliminado al antiguo. • SITE CHECK DELETE OFF | ON Activa o desactiva el borrado automático del contenido del buffer temporal tras finalizar la correcta ejecución de SITE SAVEBUFFER cuando se configura aceptar conexiones de un solo cliente simultáneamente. Esta operación afecta a todos los ficheros, no sólo a los detectados como conocidos. • SITE CHECK FIRMWARE OFF | ON Activa o desactiva la comprobación de la necesidad y compatibilidad del firmware recibido con la aplicación y entorno de funcionamiento actual. • SITE CHECK HARDWARE OFF | ON Activa o desactiva el rechazo de aplicaciones cuya revisión de hardware o “hardware level” estampada sea anterior a la revisión marcada en el equipo. Cuando se activa, se asegura que el software recibido es capaz de soportar o subsanar los problemas hardware conocidos en el equipo. ATENCION: si se desactiva, el equipo puede tener un mal funcionamiento tras el reinicio y su arranque. Esta comprobación no puede controlarla el antiguo comando SITE COMPATIBLE. • SITE CHECK HW SUPPORTED OFF | ON ROUTER TELDAT – Particularidades FTP III - 58 Doc.DM724 Rev. 10.91 Activa o desactiva el rechazo de aplicaciones en cuya lista de hardwares soportados no esté el del propio equipo. Esto evita la carga de software de un equipo en otro para el que no ha sido concebido. Esta comprobación no puede controlarla el antiguo comando SITE COMPATIBLE. • SITE CHECK LENGTH OFF | ON Activa o desactiva la comprobación de la integridad del software (Longitud). ATENCIÓN: en modo DIRECT ON, en caso de que la longitud del fichero sea errónea (distinta de múltiplo de 128), el fichero ya ha sido grabado en el sistema de ficheros y habrá eliminado al antiguo. • SITE CHECK PATH OFF | ON Activa o desactiva el envío automático de los ficheros recibidos reconocidos como BIOS hacia el sistema “BIO” cuando el sistema está en modo DIRECT OFF a la hora de ejecutar la orden SITE SAVEBUFFER, en lugar de enviarlos al sistema activo. • SITE CHECK PROFILE OFF | ON Activa o desactiva el rechazo de ficheros cuya extensión de perfil sea distinta del fichero que actualmente está activo en el equipo. • SITE CHECK RENAME OFF | ON Activa o desactiva el renombrado automático del fichero recibido. Cuando se activa, se utiliza el nombre estampado en el interior del fichero en lugar de utilizar el nombre recibido en la orden STOR. • SITE CHECK SYSTEM OFF | ON Activa o desactiva la selección automática del sistema de ficheros activo por defecto. En realidad, este comando no tiene efecto, ya que la operación se realiza al establecer la conexión con el cliente y no puede ser modificado en el transcurso de la sesión. Se implementa como espejo del comando existente en configuración que sí tiene efecto. Cuando se activa, en caso de no configurar el sistema de ficheros activo por defecto, a la hora de establecer la conexión con el cliente, se activa el primer sistema según la disponibilidad en el equipo y la prioridad que, de mayor a menor es la siguiente: DSK FDA SMC FCO BIO MEM TST TS1 NUL • SITE CHECK UNKNOWN OFF | ON Activa o desactiva el rechazo de ficheros detectados como no reconocidos. Estos ficheros tienen extensión .BIN o .BFW, pero no tienen el formato del software reconocido por el equipo. Cuando se activa el rechazo, estos ficheros no son aceptados y se devuelve error al recibirlos. Esta comprobación no puede controlarla el antiguo comando SITE COMPATIBLE. • SITE CHECK VERSION OFF | ON Activa o desactiva el rechazo de ficheros cuya versión sea anterior a la que actualmente está activa en el equipo. ROUTER TELDAT – Particularidades FTP III - 59 Doc.DM724 Rev. 10.91 El comando STAT permite ver el estado de las comprobaciones. Cada comprobación activa aparece con la letra inicial, y cada inactiva se representa con un guión. En caso de que se encuentren todas o ninguna activa aparece “ALL” o “NONE” respectivamente. ROUTER TELDAT – Particularidades FTP III - 60 Doc.DM724 Rev. 10.91 9. Modo REPLY Existen una serie de comandos que, por su naturaleza, tardan en ejecutarse una cantidad de tiempo considerable. Estos comandos son: • • • • SITE COHERENCE SITE BACKUP SITE SAVEBUFFER SITE SAVESLAVES Debido a ello, algunos clientes cuando no reciben respuesta en un tiempo que tienen establecido, deciden cortar la conexión pensando que ha habido un problema con el servidor. Para evitar este problema, se utiliza una facilidad de la norma que permite contestar con una respuesta provisional que indica que el comando está en fase de ejecución. Esta respuesta provisional comienza por “1” (ver RFC) y una vez que el comando ha finalizado se envía la respuesta correspondiente. Desgraciadamente, existen algunos clientes que sólo soportan recibir este tipo de respuestas con ciertos comandos de transferencia de ficheros. En caso de los comandos enunciados antes, la respuesta provisional la toman como respuesta final de ejecución correcta, con lo que al recibir la respuesta final se desincroniza su receptor de respuestas, haciendo que el cliente funcione anómalamente a partir de ese momento, teniendo que desconectar y volver a conectar. Para evitar estos problemas se han implementado los comandos: • SITE REPLY OFF Desactiva el envío de reply 119 en comandos especiales. • SITE REPLY ON Activa el envío de reply 119 en comandos especiales. Nota: El cliente FTP de Windows corta la conexión si no se envía respuesta en un tiempo (REPLY OFF) porque el comando tarda en ejecutarse. Pero si se envía la respuesta 119 (REPLY ON), la toma como respuesta final y a partir de ese momento no es capaz de interpretar correctamente las respuestas del servidor a sus comandos, necesitando desconectar y volver a conectar la sesión en caso de tener que seguir trabajando. Este problema es de este cliente y no se puede subsanar desde el equipo. ROUTER TELDAT – Particularidades FTP III - 61 Doc.DM724 Rev. 10.91 Como alternativa, en el Anexo A detallamos algunos clientes FTP que pueden utilizarse para transferir archivos hacia o desde el router y explicamos cómo se realizaría una actualización de software utilizando cada uno de ellos ROUTER TELDAT – Particularidades FTP III - 62 Doc.DM724 Rev. 10.91 10. RECARGA (COLD BOOT) Al igual que desde consola, se ha implementado un comando que permite reiniciar el equipo desde una sesión FTP. De esta forma se puede arrancar con el software recién telecargado. Para ello existen los siguientes comandos: • SITE RELOAD OFF Desactiva el modo RELOAD. Es el funcionamiento normal del equipo. • SITE RELOAD ON Activa el modo RELOAD. Permite resetear o reiniciar el equipo una vez que el enlace o conexión de control ha sido cerrada. El reinicio se produce una vez que se ha cerrado la conexión de control. Para cerrar una conexión de control, existen dos procedimientos: • • El cliente cierra la conexión TCP. En este caso, el reinicio se produce de forma inmediata tras cerrar la conexión de control. El cliente envía el comando “QUIT”. En este caso, quien cierra la conexión es el servidor y, debido al funcionamiento de TCP, el reinicio tiene lugar unos segundos después de cerrar la conexión de control (habitualmente 30 segundos). ROUTER TELDAT – Particularidades FTP III - 63 Doc.DM724 Rev. 10.91 11. Miscelánea Existen varios comandos SITE que se han implementado a parte de los ya mencionados en apartados anteriores. • SITE IMMEDIATE OFF Desactiva el modo IMMEDIATE. La recepción de datos por el enlace de datos TCP se realiza mediante cola de indicaciones. Esto significa que la recepción de datos se realiza según la prioridad que se haya configurado. Este comando se utilizaba en equipos antiguos para que la telecarga no supusiera un consumo de CPU que penalizara el funcionamiento del resto de sistemas (la telecarga puede ralentizarse). Nota: Utilizar bajo supervisión técnica. • SITE IMMEDIATE ON Activa el modo IMMEDIATE. La recepción de datos por el enlace de datos TCP se realiza directamente. Es el modo de funcionamiento habitual del sistema y la telecarga se acelera. • SITE KEEPALIVE OFF Desactiva el envío de KEEPALIVE por el enlace de datos. Se utiliza con algunos equipos que dan problemas al no contestar al KEEPALIVE. • SITE KEEPALIVE ON Activa el envío de KEEPALIVE por el enlace de datos. Permite detectar la caída del enlace de datos. • SITE SYSTMODE MSDOS Utiliza el formato de MS-DOS para visualizar el contenido de los sistemas de ficheros cuando se le ordena un comando “LIST”. • SITE SYSTMODE UNIX Utiliza el formato de UNIX para visualizar el contenido de los sistemas de ficheros cuando se le ordena un comando “LIST”. ROUTER TELDAT – Particularidades FTP III - 64 Doc.DM724 Rev. 10.91 Capítulo 4 Particularidades sFTP 1. Configuración El servidor sFTP no tiene configuración propia como tal. Para activarlo, es necesario activar y configurar el sistema SSH con compatibilidad con la versión 2 del protocolo (ver documentación sobre el uso de SSH). ROUTER TELDAT – Particularidades sFTP IV - 66 Doc.DM724 Rev. 10.91 2. Sistemas de Ficheros Todo el funcionamiento de los sistemas de ficheros explicados en capítulos anteriores se aplica al servidor sFTP. El servidor sFTP es capaz de mantener establecidas conexiones con varios clientes simultáneamente, también es capaz de mantener varias operaciones abiertas con cada uno de ellos. No obstante, sólo se podrán realizar operaciones simultáneas sobre distintos sistemas de ficheros. ROUTER TELDAT – Particularidades sFTP IV - 67 Doc.DM724 Rev. 10.91 3. Usuarios (Login) La autenticación del usuario la realiza el protocolo SSH2, por lo tanto no tiene sentido el concepto de usuario en el servidor sFTP. ROUTER TELDAT – Particularidades sFTP IV - 68 Doc.DM724 Rev. 10.91 4. Modo TEST El modo TEST no existe como tal, pero sigue siendo posible utilizarlo sin necesidad de operaciones específicas para activarlo. Permite comprobar el funcionamiento del servidor y realizar transferencias sin poner en peligro el contenido del sistema de ficheros. Utiliza los sistemas “TST” y TS1” para realizar las transferencias. Todo el funcionamiento de los sistemas “TST” y “TS1” explicado anteriormente es aplicable al servidor sFTP. ROUTER TELDAT – Particularidades sFTP IV - 69 Doc.DM724 Rev. 10.91 5. Funcionalidad de BACKUP Funcionalidad no soportada. ROUTER TELDAT – Particularidades sFTP IV - 70 Doc.DM724 Rev. 10.91 6. Telecarga SEGURA Esta funcionalidad del servidor permite realizar telecargas teniendo en cuenta que puede haber problemas en las líneas y la telecarga de ficheros puede resultar fallida. En ese caso, el contenido del sistema de ficheros podría aparecer corrupto y podría perderse el control del equipo, quedando inservible y requiriendo asistencia técnica. Para realizar la telecarga segura se dispone de un buffer temporal de almacenamiento. Este buffer puede ser gestionado como un sistema de ficheros ya que también se identifica como “MEM”. Normalmente, el servidor, comprueba la extensión de los ficheros que se le envían y dependiendo del tipo, permite o impide la telecarga directa. Las extensiones reconocidas son: • • BIN BFW Ficheros binarios como CIT o BIOS. Ficheros de firmwares. En caso de reconocer alguno de estos tipos de fichero, si el sistema de CHECK configurado para el servidor FTP tiene activa alguna comprobación que hacer a los ficheros recibidos, no se permite la telecarga directa a los sistemas de ficheros (normalmente “DSK” o “BIO”). Para realizar la telecarga segura, se envía el fichero al sistema “MEM”. Al no existir un comando del tipo “SITE SAVEBUFFER” la forma de salvar el fichero en el sistema correspondiente, es mandar una orden de renombrado del fichero desde el cliente. Secuencia de comandos para realizar las telecargas seguras desde los clientes con línea de comandos. put cit.bin /mem/cit.bin mv /mem/cit.bin /dsk/cit.bin (Envía el fichero CIT.BIN). (Vuelca el fichero en el dispositivo permanente). ATENCION: Al ejecutarse el comando “mv” lo que se grabará en el dispositivo de almacenamiento será el contenido del buffer de memoria en ese momento. ROUTER TELDAT – Particularidades sFTP IV - 71 Doc.DM724 Rev. 10.91 7. Comprobación de INTEGRIDAD Funcionalidad no soportada. ROUTER TELDAT – Particularidades sFTP IV - 72 Doc.DM724 Rev. 10.91 8. Modo COMPATIBLE Funcionalidad inexistente. ROUTER TELDAT – Particularidades sFTP IV - 73 Doc.DM724 Rev. 10.91 9. Modo CHECK Esta funcionalidad está soportada pero control está limitado. No existen comandos para modificar las comprobaciones en plena conexión (no existen comandos SITE). Su control se realiza desde el menú de configuración dinámica y tienen efecto sobre las nuevas conexiones establecidas tras la modificación en configuración. El equipo puede realizar una serie de comprobaciones y acciones automáticas dirigidas a una gestión de los ficheros recibidos y que sean detectados como ficheros conocidos más cómoda. Los ficheros detectables como conocidos llevan la extensión .BIN o .BFW. Existen varias acciones que pueden ser controladas con este comando. Estas comprobaciones se llevan a cabo cuando se realiza el volcado del fichero desde el sistema “MEM” al sistema definitivo cuando se realiza una telecarga segura. Según la configuración, son las siguientes: • CHECK BIOS Rechazo de aplicaciones cuya versión mínima de BIOS requerida sea posterior a la de la BIOS actual del sistema. • CHECK CRC Integridad del software (CRC). • CHECK FIRMWARE Comprobación de la necesidad y compatibilidad del firmware recibido con la aplicación y entorno de funcionamiento actual. • CHECK HARDWARE Rechazo de aplicaciones cuya revisión de hardware o “hardware level” estampada sea anterior a la revisión marcada en el equipo. Se asegura que el software recibido es capaz de soportar o subsanar los problemas hardware conocidos en el equipo. ATENCION: si se desactiva, el equipo puede tener un mal funcionamiento tras el reinicio y su arranque. • CHECK LENGTH Comprobación de la integridad del software (Longitud). • CHECK PATH Envío automático al sistema asignado de los ficheros recibidos reconocidos independientemente del sistema elegido para almacenarlos al realizar la telecarga segura: • BIOS hacia el sistema “BIO”. • CIT hacia el sistema “DSK”. • Firmware hacia el sistema “DSK”. • CHECK RENAME ROUTER TELDAT – Particularidades sFTP IV - 74 Doc.DM724 Rev. 10.91 Renombrado automático del fichero recibido. Cuando está activa, se utiliza el nombre estampado en el interior del fichero en lugar de utilizar el nombre recibido en la orden de almacenamiento en la telecarga segura. • CHECK UNKNOWN Rechazo de ficheros detectados como no reconocidos. Estos ficheros tienen extensión .BIN o .BFW, pero no tienen el formato del software reconocido por el equipo. Cuando se activa el rechazo, estos ficheros no son aceptados y se devuelve error al intentar almacenarlos en la telecarga segura. • CHECK VERSION Rechazo de ficheros cuya versión sea anterior a la que actualmente está activa en el equipo. ROUTER TELDAT – Particularidades sFTP IV - 75 Doc.DM724 Rev. 10.91 10. Modo REPLY Funcionalidad inexistente. ROUTER TELDAT – Particularidades sFTP IV - 76 Doc.DM724 Rev. 10.91 11. RECARGA (COLD BOOT) Funcionalidad inexistente. ROUTER TELDAT – Particularidades sFTP IV - 77 Doc.DM724 Rev. 10.91 12. Miscelánea En el protocolo sFTP está definido el comando “EXTENDED” que similar al comando “SITE” de FTP. No es de uso frecuente, ya que es específico de cada fabricante y los clientes no suelen soportarlo. Por tanto, las funcionalidades “SITE” del servidor FTP se pierden en el servidor sFTP. ROUTER TELDAT – Particularidades sFTP IV - 78 Doc.DM724 Rev. 10.91 Capítulo 5 Problemas 1. Problemas conocidos 1.1. Error writing file (550) Esta respuesta de error la envía el servidor hacia el cliente normalmente cuando se envía un fichero y el sistema de ficheros se queda sin espacio para poder almacenarlo o se produce un error interno. • En caso de que ocurra en modo DIRECT ON, significa que el sistema de ficheros no tiene espacio suficiente para albergar el fichero enviado. Es necesario verificar si hay que borrar ficheros de ese sistema de ficheros para poder enviar el nuevo fichero. • En caso de que ocurra en modo DIRECT OFF (ver telecarga segura), significa que el buffer temporal de memoria se ha llenado y no es capaz de almacenar el fichero completamente. Para averiguar qué está ocurriendo es necesario ejecutar la siguiente orden. SITE STATBUFFER La información que devuelve se interpreta de la siguiente manera: o MAX Si la cifra es menor que la longitud total del fichero, indica que el buffer temporal no es capaz de almacenarlo y es necesario configurar el tamaño del buffer temporal para poder albergarlo (ver configuración TEMP-BUFF). También puede intentarse la telecarga de nuevo en modo no seguro (DIRECT ON). o REQ Si la cifra es menor que la longitud total del fichero, indica que el buffer temporal no puede conseguir más memoria del sistema, esto implica que el equipo no tiene suficiente memoria para poder realizar telecargas seguras. En este caso es necesario desactivar la telecarga segura (DIRECT ON) e intentar enviar de nuevo el fichero. 1.2. Connection closed by remote host Este error lo produce el cliente FTP de windows. Indica que la conexión ha sido cerrada por el servidor, pero no es cierto. La verdad es que la conexión ha sido cerrada por el propio cliente. Este error se suele producir en las siguientes circunstancias. • El servidor está ejecutando una orden SITE SAVEBUFFER. En este caso, el equipo continúa la operación normalmente aunque la conexión se haya cortado. Aparece porque el tiempo de ejecución de la orden puede ser muy grande y el cliente supone que el servidor ha perdido la conexión porque tarda en contestar. (Ver problemas de SITE REPLY). TELDAT ROUTER – Problems V - 80 Doc.DM724-I Rev.10.91 Nota: El cliente FTP de Windows corta la conexión si no se envía respuesta en un tiempo (REPLY OFF) porque el comando tarda en ejecutarse. Pero si se envía la respuesta 119 (REPLY ON), la toma como respuesta final y a partir de ese momento no es capaz de interpretar correctamente las respuestas del servidor a sus comandos, necesitando desconectar y volver a conectar la sesión en caso de tener que seguir trabajando. Este problema es de este cliente y no se puede subsanar desde el equipo. Como alternativa, en el Anexo A detallamos algunos clientes FTP que pueden utilizarse para transferir archivos hacia o desde el router y explicamos cómo se realizaría una actualización de software utilizando cada uno de ellos. • El problema se produce en medio de la transmisión de un fichero. En este caso puede tratarse de un problema con los sistemas de control de tráfico, que no permiten la transmisión si uno de los puertos TCP involucrados en la transferencia no es el puerto 20. En ese caso hay que intentar que el cliente envíe la orden PORT al servidor, ya que el equipo intenta que uno de los puertos sea el número 20. 1.3. La transferencia de ficheros se detiene Algunas veces, con algunos ficheros se produce un problema que produce la detención del envío del fichero, no ocurre con todos los ficheros, pero cuando ocurre con uno, ocurre siempre. Se ha comprobado que el problema se produce cuando el cliente FTP de windows envía paquetes de TCP con checksum erróneo y no se puede llevar a cabo el envío del fichero. Se desconoce por qué se produce este comportamiento con algunos ficheros en concreto. El problema se solventa utilizando otro cliente FTP. 1.4. Unable to open file (550) Esta respuesta de error la envía el servidor hacia el cliente normalmente cuando se envía un fichero para indicar que no se puede abrir el fichero en el servidor. Se ha observado que hay clientes que sólo envían el nombre de fichero al servidor remoto y otros, en cambio, envían el nombre e incluyen el path local. Este efecto ha aparecido cuando el servidor se encuentra en modo DIRECT ON y el cliente incluye el path local en el nombre del fichero que está enviando. Ejemplo con cliente Linux: ftp > put ../85xx/cit.bin local: ../_85xx/cit.bin remote: ../_85xx/cit.bin 200 PORT is set to IP ADDR = 172.24.75.193 PORT 50021 150 Data connection open, checked file transfer in process… TELDAT ROUTER – Problems V - 81 Doc.DM724-I Rev.10.91 ######################## netout: Connection reset by remote peer 550 Unable to open file. En este caso, el sistema de almacenamiento donde va a trabajar el servidor estando en DIRECT ON es “/DSK”, al enviar el nombre del fichero como “../_85xx/cit.bin” el equipo intenta abrir el fichero en “/_85xx/cit.bin”. Como el sistema “/85xx” no existe, el fichero no puede abrirse. Los sistemas de almacenamiento están disponibles solicitando el directorio desde la raíz. Para paliar el problema se pueden utilizar los comando específicos del cliente para el tratamiento del nombre de fichero en sistemas remotos (cada cliente tendrá su gestión), o se puede especificar el nombre que debe utilizar el sistema remoto de la forma que se especifica a continuación. Ejemplo con cliente Linux: ftp > put ../85xx/cit.bin cit.bin local: ../_85xx/cit.bin remote: cit.bin 200 PORT is set to IP ADDR = 172.24.75.193 PORT 50021 150 Data connection open, checked file transfer in process… ################################... 226 STOR completed, 7214720 bytes processed, data connection is closed. 7214720 bytes sent in 41.73 secs (169.1 kB/s) 1.5. Clientes del mundo Unix (modo ascii) Atención: los clientes ftp del mundo Unix, Linux y otros sistemas operativos similares, por defecto, utilizan el modo ASCII para enviar ficheros. Los ficheros binarios que necesitan los equipos es necesario que sean enviados en modo BINARIO, por tanto, es necesario activarlo en el cliente con el comando correspondiente (normalmente es el comando “binary”). Aunque en entornos Windows no es necesario, es una buena práctica activarlo siempre. En caso de no activar el modo binario para transferir ficheros al equipo pueden ocurrir estos problemas: • Modo DIRECT ON: • Modo CHECK LENGTH | CRC ON: Si es un fichero binario reconocido como aplicación o firmware, se comprueba que no está correcto y se produce un error de longitud o de CRC. En ese momento, el fichero que se ha enviado y salvado es incorrecto y es posible que el equipo NO ARRANQUE. • Modo CHECK LENGTH | CRC OFF: En este caso, no se produce error, con lo que el problema es silencioso. En ese momento, el fichero que se ha enviado y salvado es incorrecto y es posible que el equipo NO ARRANQUE. TELDAT ROUTER – Problems V - 82 Doc.DM724-I Rev.10.91 • Modo DIRECT OFF: • Modo CHECK LENGTH | CRC ON: Si es un fichero binario reconocido como aplicación o firmware, se comprueba que no está correcto y se produce un error de longitud o de CRC. En ese momento, se borra el buffer temporal, y aunque se envíe la orden “SITE SAVEBUFFER” el fichero corrupto no se salva en el equipo porque el buffer está vacío. • Modo CHECK LENGTH | CRC OFF: Si es un fichero binario reconocido como aplicación o firmware, se comprueba que no está correcto y se produce un error de longitud o de CRC. En este caso, no se produce error, con lo que el problema es silencioso. 1.6. Comprobación de la longitud y/o checksum Cuando se envía al servidor un fichero binario con una longitud o checksum erróneos, y están activados los modos de comprobación de longitud y/o checksum, podemos recibir una de las siguientes respuestas del servidor: • • Modo CHECK LENGTH ON: 535 Unexpected end of checked file. Modo CHECK CRC ON: 536 Received checked file with bad checksum. • Si los errores ocurren en modo DIRECT ON: significa que el sistema ya ha salvado el fichero binario incorrecto y es posible que el equipo NO ARRANQUE. • Si los errores ocurren en modo DIRECT OFF (ver telecarga segura): significa que el buffer temporal de memoria en el que se almacena el fichero se ha borrado debido a que ha ocurrido un error, y aunque se envíe la orden “SITE SAVEBUFFER”, el fichero no se guardará en la flash porque el buffer temporal está vacío. Si alguno de los modos de comprobación de longitud o checksum no están activados, estaremos en el mismo caso que para el modo DIRECT ON, y es posible que el equipo NO ARRANQUE. TELDAT ROUTER – Problems V - 83 Doc.DM724-I Rev.10.91 Annex A Clientes FTP 1. Introducción Como se ha mencionado en capítulos anteriores, en el protocolo FTP existen algunos comandos que, por su naturaleza, tardan en ejcutarse una cantidad de tiempo considerable. Debido a ello, algunos clientes de FTP deciden cortar la conexión cuando no reciben respuesta en un tiempo que tienen establecido pensando que ha habido un problema con el servidor. Entre estos clientes se encuentra el cliente FTP de Windows. Por ello, en los siguientes apartados explicamos cómo utilizar y configurar determinados clientes FTP para evitar este problema en un proceso tan crítico como el de una actualización de software. En ellos, se explica el proceso haciendo uso de la orden “site savebuffer”, pero el mismo método se aplicaría si lo hiciéramos activando el modo directo con la orden “site direct on”. ROUTER TELDAT – Anexo A VI - 85 Doc.DM724 Rev. 10.91 2. Cliente FileZilla FileZilla es un cliente FTP multiplataforma de código abierto y software libre, licenciado bajo la Licencia Pública General de GNU. Soporta los protocolos FTP, SFTP y FTP sobre SSL/TLS (FTPS). Su interfaz, agradable e intuitiva, muestra tanto la ventana local como la ventana remota permitiendo el paso de archivos de una a otra mediante múltiples técnicas entre ellas el mecanismo “drag and drop”. Las imágenes mostradas pertenecen a la versión para Windows pero el modo de operar es el mismo en ambos sistemas operativos Windows y Linux. Antes de comenzar el proceso de actualización, necesitamos incrementar el tiempo de espera de respuesta para evitar que se corte la conexión durante la ejecución del comando “site savebuffer”. Para ello, realizamos lo siguiente: 1) En el menú “Edit” seleccionamos la opción “Settings…”. ROUTER TELDAT – Anexo A VI - 86 Doc.DM724 Rev. 10.91 2) Hacemos click con el ratón en la opción “Connection” y modificamos el parámetro “Timeout in seconds” asignándole una valor no inferior a 100 segundos. 1 2 3) Pulsamos sobre el botón “OK”. Una vez hecho el cambio, realizamos la actualización del software siguiendo los pasos que se indican a continuación: Siempre debe utilizarse el protocolo FTP. 1) Conectarse al servidor FTP del router Para ello, usaremos la barra de conexión rápida (“Quickconnect”). En ella especificamos la dirección IP del router en el campo “Host”, el usuario en el campo “Username” (utilizar el usuario root cuando no haya usuarios definidos en el router) y la contraseña, si procede, en el campo “Password” (el usuario root carece de contraseña). El campo “Port” (Puerto) puede dejarse libre, a menos que se haya configurado en el sevidor FTP del router un puerto específico distinto al 21. A continuación pulsamos sobre el botón “Quickconnect”. ROUTER TELDAT – Anexo A VI - 87 Doc.DM724 Rev. 10.91 2) Transferir el archivo deseado Para ello, disponemos de varias alternativas: o Mediante un simple click sobre el archivo con el botón derecho del ratón y seleccionando la opción “Upload”. o o Haciendo doble click sobre el archivo. O bien, mediante el mecanismo “drag and drop”. 3) Ordenar la grabación del archivo en el disco y cerrar la conexión FTP ROUTER TELDAT – Anexo A VI - 88 Doc.DM724 Rev. 10.91 Para ello y por cada comando FTP a ejecutar, seleccionamos la opción “Enter custome command…” en el menú “Server” y en la ventana que se muestra escribimos el comando a ejecutar. Una vez escrito, pulsamos sobre el botón “OK” o la tecla “Enter” de nuestro teclado. Los comandos a ejecutar son los siguientes y en el orden indicado: • “site savebuffer” • “site reload on” (comando opcional) • “quit” Durante la ejecución del comando “site savebuffer”, podemos recibir una repuesta inidcando que estamos desconectados del servidor. En este caso, no realizar ninguna acción porque pasado un tiempo recibiremos el mensaje de OK asociado al comando. ROUTER TELDAT – Anexo A VI - 89 Doc.DM724 Rev. 10.91 3. Cliente WinSCP WinSCP es un cliente FTP para Windows de software libre que soporta los protocolos FTP, SFTP y SCP. Esta aplicación permite escoger entre dos tipos de interfaces, en este apartado utilizaremos la interfaz denominada “Commander Interface”. Interfaz “Commander Interface” ROUTER TELDAT – Anexo A VI - 90 Doc.DM724 Rev. 10.91 Interfaz “Explorer Interface” Antes de comenzar el proceso de actualización, necesitamos incrementar el tiempo de espera de respuesta para evitar que se corte la conexión durante la ejecución del comando “site savebuffer”. Para ello, procedemos de la siguiente manera: 1) Activamos el checkbox “Advanced options” si no estuviese activado. 2) Hacemos click con el ratón en la opción “Connection” y modificamos el parámetro “Server response timeout” estableciendo un valor mínimo de 100 segundos. ROUTER TELDAT – Anexo A VI - 91 Doc.DM724 Rev. 10.91 2 1 Una vez realizado el cambio, estaremos listos para llevar a cabo la actualización de software siguiendo los pasos que se indican a continuación: Siempre debe utilizarse el protocolo FTP. 1) Conectarse al servidor FTP del router Para ello, seleccionamos el protocolo FTP en el campo “File protocol” y escribimos la dirección IP del router en el campo “Host name”. Los campos “User name” y “Password” los completamos respectivamente con el nombre del usuario y la contraseña de acceso, en el caso de que el router no disponga de usuarios definidos especificaremos como usuario “root” sin contraseña. El campo “Port number” (número de puerto) únicamente debe modificarse cuando se haya configurado en el sevidor FTP del router un puerto específico distinto al 21. ROUTER TELDAT – Anexo A VI - 92 Doc.DM724 Rev. 10.91 Durante la conexión, puede que la aplicación nos vuelva a pedir las credenciales de acceso. Si esto ocurre, escribimos de nuevo el dato solicitado y pulsamos sobre el botón “OK”. 2) Transferir el archivo deseado La aplicación, tras establecer conexión, nos muestra la siguiente ventana donde encontramos dos paneles, a la derecha el panel de nuestro equipo local y a la izquierda el panel del router. ROUTER TELDAT – Anexo A VI - 93 Doc.DM724 Rev. 10.91 Para transferir un archivo utillizamos el procedimiento de “drag and drop”. Al soltar el ratón nos aparecerá el siguiente cuadro de diálogo. En él simplemente pulsaremos sobre el botón “Copy”. 3) Ordenar la grabación del archivo en el disco y cerrar la conexión FTP Para ello seleccionamos la opción “Open Terminal” en el menú “Commands” que muestra una nueva ventana. ROUTER TELDAT – Anexo A VI - 94 Doc.DM724 Rev. 10.91 En ella, en la parte superior, iremos escribiendo y ejecutando uno por uno los comandos requeridos. Para ejecutar un comando simplemente pulsamos sobre el botón “Execute” o la tecla “Enter” de nuestro teclado. En la parte inferior, la aplicación mostrará el resultado de cada comando. Los comandos a ejecutar son los siguientes y en el orden indicado: • “site savebuffer” • “site reload on” (comando opcional) • “quit” ROUTER TELDAT – Anexo A VI - 95 Doc.DM724 Rev. 10.91 4. Cliente FTP por consola de Linux Otra alternativa para la actualización de software es utilizar el cliente FTP por consola de Linux. Simplemente, tenemos que seguir los mismos pasos que se indican en el subapartado “Actualización FTP” asociado al tipo de software que queramos actualizar. ROUTER TELDAT – Anexo A VI - 96 Doc.DM724 Rev. 10.91