El firmware de los dispositivos de comunicaciones
Los PC también tienen un firmware que hay que actualizar, pero no resulta tan crítico como en el caso de los Router, switches y servidores especiales (cortafuegos, servidores de seguridad, etc.). Sin embargo, lo especificado para el cambio de firmware puede servir para cualquier tipo de dispositivo.
Definición del concepto de firmware
Se podría considerar como una mezcla de hardware y software. Es un software contenido en un hardware que, en los primeros tiempos de la informática, no se podía modificar. Dicho software se desarrolla en lenguaje de bajo nivel y controla los circuitos electrónicos del dispositivo.
Todos los computadores, desde sus inicios, incorporan circuitos de tipo ROM (Read Only Memory, memoria de solo lectura) con programas básicos para el funcionamiento del equipo. Principalmente, la tarea de esos programas es arrancar la máquina, comprobar el estado del hardware y buscar en algún sistema de almacenamiento (como el disco duro en un PC), un programa al que darle el control (este programa se llama Sistema Operativo). Los circuitos ROM con esos programas básicos reciben el nombre de BIOS (Basic tnput Output System) y pueden verse en las placas base de los dispositivos.
Circuito BIOS instalado en la placa base. Al lado está la batería para que no se borren los datos que maneja.
Antiguamente esos circuitos BIOS no se podían modificar (eran estrictamente de solo lectura), pero se han ido desarrollando tecnologías que permiten escribir en esas memorias para actualizarlas, entre ellas las memorias EE-PROM (ROM programable y que se puede borrar eléctricamente).
En la actualidad, para los circuitos BIOS se utilizan memorias EEPROM de tipo Flash (del mismo tipo de tecnología que las tarjetas usadas en cámaras y elementos USB).
En el caso de dispositivos como swltches, routers y servidores especiales no se tiene la posibilidad de usar un disco duro. Es por ello que el sistema operativo de estos dispositivos reside en una memoria Flash. Por eso a veces se habla de actualizar BIOS y otras veces de actualizar Flash, y a ambos términos se le llama “flashear” o actualizar el firmware.
Importante! Los discos duros son elementos relativamente frágiles, por eso no se suelen usar con swit-ches, routers y otros elementos que pueden estar expuestos a ambientes un tanto agresivos.
Es muy habitual que la memoria Flash que contiene el sistema operativo esté integrada en la placa, como el BIOS, pero también existe la posibilidad de que se utilicen tarjetas flash extraíbles por mayor comodidad y facilidad de mantenimiento.
Vista trasera de un Router con una tarjeta compact-flash a medio insertar en la ranura
Importante! Los equipos con tarjeta flash extraíble pueden actualizarse copiando la nueva versión del sistema operativo directamente desde un lector de tarjetas en un PC, para luego, si es necesario, activar esa versión a través de algún comando del sistema.
Explicación de la necesidad de actualización
Tal como se ha visto, los circuitos BIOS contienen programas que se pueden actualizar. Las funcionalidades que incorporan pueden requerir un cierto mantenimiento (actualizaciones), en algunos casos para corregir bugs que se hayan detectado, pero en otros, para incorporar mejoras de rendimiento o para permitir el uso de nuevos elementos de hardware.
Se pueden conseguir mejoras en el funcionamiento de forma rápida y sin coste (normalmente), ya que las actualizaciones las suministra el propio fabricante.
Otra de las razones por las que a veces se realiza una actualización es para obtener funcionalidades ocultas o no permitidas por el fabricante, como el caso de dispositivos de grabación de DVD, para variar el código de país o para superar la protección contra copias.
El caso más crítico es el de las memorias flash que almacenan el sistema operativo del dispositivo en cuestión. De la misma forma que un PC con una versión vieja de sistema operativo va perdiendo funcionalidades respecto a otro que se haya modernizado, lo mismo ocurre con los sistemas de los routers y switches.
Recordemos! Hay programas que analizan los dispositivos remotamente para encontrar vulnerabilidades, como Nessus, OpenVas y otros. Muchas de esas vulnerabilidades se solucionan con actualizaciones.
Las actualizaciones del sistema de los equipos con Windows, Macintosh y Linux se pueden realizar de forma automática y transparente para el usuario que a veces recibirá la sugerencia de reiniciar el equipo. En los otros casos, la actualización generalmente no es automática, o no puede realizarse automáticamente por alguna circunstancia (por el sistema de seguridad, por ejemplo), y por lo tanto existe el riesgo de que por dejadez el sistema se vaya quedando obsoleto con el problema de que no solo pierda cierta funcionalidad, sino que además, se produzcan agujeros de seguridad. Como dice en algún manual “La actualización del firmware del equipo permite activar y disfrutar completamente de las funciones del mismo”.
Identificación y descripción de las fases del proceso de actualización de firmware
Si no se ha recibido ningún mensaje o correo del fabricante informando de alguna novedad, o no se tiene la posibilidad de realizar actualizaciones automáticas, corresponde al administrador de la red estar al tanto de la existencia de posibles actualizaciones.
Las fases en las que se puede dividir el proceso para la actualización del firmware dependen mucho de los diferentes fabricantes, aunque hay una serie de pasos genéricos que se pueden resumir de la siguiente manera:
- Averiguar la versión de firmware que se está utilizando: normalmente esa Información se encontrará en algún apartado del sistema de configuración, o se podrá averiguar ejecutando algún comando.
- Buscar si hay nuevas versiones: en la propia web del fabricante suele haber abundante Información sobre sus actualizaciones de firmware, normalmente cuentan con un enlace para descargas para buscar la actualización precisa.
- Asegurarse de que la versión es la correcta: para cada modelo de dispositivo existe su versión de firmware específica. Hay que comprobar marca y modelo exacto del equipo que se quiere actualizar. Una equivocación puede dañar el hardware del equipo.
- Realizar una copia de seguridad: la configuración del equipo puede ser que haya que restaurarla después de actualizar el sistema.
- Descargar la actualización: puede ser útil tener la actualización descargada para efectuar su instalación cuando se considere conveniente, y evitar que posibles cortes en la comunicación paralicen el proceso.
- Iniciar el Procedimiento que indique el fabricante: depende de cada fabricante. A veces mientras se descarga ya se inicia el Procedimiento. En todo caso siempre está indicado no apagar o reiniciar el equipo mientras se realiza la actualización. El Procedimiento suele ser:
-Cargar la actualización en el dispositivo.
-Seguir indicaciones, normalmente al finalizar se debe reiniciar.
- Comprobar que funciona correctamente: es necesario comprobar que las configuraciones anteriores se mantienen, ya que puede suceder que la nueva versión provoque cambios en comandos o algún error no esperado.
Página de configuración de un Router Lynksys con la Información sobre la versión resaltada
Recomendaciones básicas de buenas prácticas
Se pueden seguir una serie de recomendaciones para obtener los mejores resultados:
- Actualizaciones automáticas: cuando sea posible se deben utilizar las actualizaciones automáticas. Así se evitan posibles olvidos.
- Registrar el producto: el fabricante mantiene una base de datos con los clientes que se registran para darles soporte. Suele informar de las actualizaciones disponibles, además de facilitar su instalación.
- Asegurarse de emplear actualizaciones auténticas: como ya se ha indicado, el confundir una versión con otra puede crear problemas. En el mejor de los casos no se obtendrá el resultado deseado. El utilizar la web del fabricante, y no otra, es una garantía a tener en cuenta.
- Revisar requisitos: el fabricante puede fijar ciertos requisitos para la actualización (desconectar interfaces, detener servicios, etc.). Revisar la documentación al respecto es una buena práctica.
- Asegurarse de la capacidad: el espacio disponible para la nueva versión de software puede suponer un problema.
- Buscar el momento adecuado: puede que lleve un tiempo la actualización. Durante ese proceso puede dejar de funcionar, causándose pérdida de disponibilidad de servicios. Procurar planificar bien el momento evita ese problema.
- Nunca apagar o reiniciar: si el proceso de actualización no llega a término una vez iniciado, pueden producirse problemas, como poco no funcionará.
- Baterías cargadas: si el dispositivo está usando baterías, estas deberán estar bien cargadas para evitar que se interrumpa el proceso.
Importante! Si se actualiza el circuito BIOS con una versión errónea, o se reinicia por algún motivo antes de que haya terminado la actualización, se corre serio riesgo de que la circuitería quede dañada de forma irreparable. En algunos casos la actualización del sistema operativo no lleva aparejado ese riesgo, en otros sí.
Ejemplo de cómo se puede registrar un cliente en la página de un fabricante
Aplicación práctica
Una empresa ha contratado a un nuevo administrador de sistemas para su red corporativa. En dicha red existen los siguientes elementos:
Varios puntos de acceso inalámbrico con soporte de actualizaciones automáticas, un Router registrado en la base de datos del fabricante y varios switches configurables, comprados de segunda mano, sin manuales ni mantenimiento previsto. ¿Cómo debería plantearse el nuevo administrador el mantenimiento del firmware de todos esos elementos?
Solución:
Los puntos de acceso al tener actualizaciones automáticas no suponen ningún reto, simplemente comprobando que funcionan según lo esperado es suficiente.
El Router, al estar registrado, se puede controlar con los avisos o sugerencias que envíe el fabricante, no obstante sería bueno comprobar si se pueden hacer instalaciones automáticas, y si funcionan como debe esperarse.
Para los switches se debería hacer un inventario para recopdar los diferentes fabricantes y modelos de los que se dispone. Después se comprobarían las versiones de firmware instaladas, para a continuación buscar en las páginas oficiales si existen posibles actualizaciones. Habría que planificar estas tareas para el futuro.