Mostrando entradas con la etiqueta Asus. Mostrar todas las entradas
Mostrando entradas con la etiqueta Asus. Mostrar todas las entradas

5 mar 2019

Asuswrt es el nombre del firmware desarrollado por el fabricante Asus para su uso en sus últimos routers. Esta basado en Tomato, un proyecto de firmware de codigo abierto para routers, este firmware ha sido extensivamente modificado por Asus a lo largo de años para adaptarse a sus propios requisitos y especificaciones.
Asuswrt-Merlin es una iniciativa del desarrollador canadiense Eric Sauvageau  el cual ha personalizado una versión del firmware de Asus. En dicha personalización no se producen grandes cambios, se solucionan algunos pequeños errores y limitaciones, manteniendo para ello el mismo nivel de rendimiento que el firmware original. Por ello se mantienen las siguientes características de Asuswrt soporte completo a aceleración NAT (también conocido como aceleración por hardware), rendimiento NTFS mejorado (a través de los controladores propietarios utilizados por Asus de Paragon o Tuxera) y las características exclusivas de Asus, como AiCloud o AiProtection con tecnología Trend Micro. Pero la fuerza de esta iniciativa es que dicho firmware activa una serie de opciones o características avanzadas extra como son una partición JFFS para Scripts, soporte VPN mejorado ... Si quieres ver una lista de routers oficialmente soportados por Asuswrt-Merlin pulsa aquí.

Hace un tiempo os hablaba en mi entrada "[Proyecto] Mejorando mi Red LAN (Introduccion)" que yo había adquirido en su día un router AC87U (Julio del 2015), al que posteriormente cambie el firmware por el Asuswrt-Merlin. El motivo de este cambio es porque yo quería activar una serie de opciones que el firmware oficial de Asus no trae, por ejemplo que cuando reinicie o cambie la IP Publica que me da mi ISP (Internet Service Provider), reciba en un e-mail con dicha IP. Para hacer esto se realiza mediante un Script en la partición JFFS (Sistema de Ficheros Flash con soporte a Transacciones).

¡¡Atención!! Este procedimiento puede ocasionar graves daños a su equipo, proceda bajo su propio riesgo. Ten en cuenta que este procedimiento tiene una complejidad técnica y recomiendo tener nociones de terminal de Linux. Por favor lee atentamente este procedimiento y si tiene alguna duda te recomiende que leas atentamente mis instrucciones, investigues la bibliografía o preguntes.

Requisitos Previos
  • Tener instalado Asuswrt Merlin, recomendable siempre la ultima versión.
  • En Administración > Sistema  (Administration > System, si lo tenéis en Inglés) tener activadas las siguientes opciones; nota la primera vez  pulsaremos en Si para formatear la partición JFFS en el siguiente arranque (Format JFFS partition at next boot), una vez formateada deberemos dejarla en No. Posteriormente marcaremos en Si Habilitar Scripts y Configuraciones personalizadas en JFFS (Enable JFFS custom scripts and configs).
Persistent JFFS2 partition
Format JFFS partition at next boot No
Enable JFFS custom scripts and configs No

Por ultimo tener habilitado SSH, no me seáis cabestros y habilitarlo solo para la Red LAN, por defecto la conexión sera a través  del puerto 22, tambien hay que habiltar las opciones de aceptar login a través de Password y habilitar protección contra ataques de fuerza bruta SSH.


Pasos a seguir
  1. Conectarnos via SSH al router y el puerto que hayamos puesto. Yo lo he realizado desde Windows por lo que lo hice con el cliente de Telnet y SSH Putty. Nos solicitara que hagamos login en el router. 
  2. Nos dirigimos a  la ruta Raiz Directorio jffs
    cd /jffs
  3. Nos descargamos un certificado seguro (por motivos de presentación en el blog he introducido saltos de línea)
    wget -c -O /jffs/configs/Equifax_Secure_Certificate_Authority.pem
    http://www.geotrust.com/resources/root_certificates/certificates/Equifax_Secure_Certificate_Authority.pem 
    --no-check-certificate
  4. Nos dirigimos a la ruta Raiz Directorio jffs Directorio scripts
    cd /jffs/scripts
  5. Editamos un fichero escribiendo el siguiente comando nano wan-start, sino existe no importa porque este comando lo creara y copiamos en el interior el siguiente script, una vez copiado procederemos a editar los campos  FROM, AUTH, PASS, FRONNAME y TO con nuestros datos:
    #!/bin/sh
    FROM="Direccion email origen: por ejemplo pepitodelospalotes@gmail.com"
    AUTH="Usuario email pepitodelospalotes@gmail.com"
    PASS="Password XXXX"
    FROMNAME="Router Asus"
    TO="Direccion de email destino"
    
    ntpclient -h pool.ntp.org -s &> /dev/null
    sleep 5
    
    echo "Subject: WAN state notification" >/tmp/mail.txt
    echo "From: \\"$FROMNAME\\"<$FROM>" >>/tmp/mail.txt
    echo "Date: $(date -R)" >>/tmp/mail.txt
    echo "" >>/tmp/mail.txt
    echo "I just got connected to the internet." >>/tmp/mail.txt
    echo "" >>/tmp/mail.txt
    echo "My WAN IP is: $(nvram get wan0_ipaddr)" >>/tmp/mail.txt
    echo "Uptime is: $(uptime | cut -d ',' -f1 | sed 's/^.\{12\}//g')" >>/tmp/mail.txt
    echo "" >>/tmp/mail.txt
    echo "---- " >>/tmp/mail.txt
    echo "Your friendly router." >>/tmp/mail.txt
    echo "" >>/tmp/mail.txt
    
    cat /tmp/mail.txt | sendmail -H"exec openssl s_client -quiet \
    -CAfile /jffs/configs/Equifax_Secure_Certificate_Authority.pem \
    -connect smtp.gmail.com:587 -tls1 -starttls smtp" \
    -f"$FROM" \
    -au"$AUTH" -ap"$PASS" $TO 
    
    rm /tmp/mail.txt
  6. Salimos del fichero guardando y si nos pregunta el nombre deberemos poner wan-start, no hay que poner extensiones de ningún tipo.
  7. Cambiamos los permisos a todos los ficheros ubicados en /jffs/scripts añadiendo permisos de lectura y ejecución con el comando:
    chmod a+rx /jffs/scripts
  8. Si el e-mail que vamos a usar para realizar el envío de email es Gmail, deberemos activar la configuración de Acceso de aplicaciones poco seguras. Esta configuración no está disponible para las cuentas que tienen habilitada la verificación en dos pasos (2FA).
  9. Por ultimo lo único que nos quedaría es probar a reiniciar el router de nuestro ISP  y si todo esta correctamente configurado al de unos minutos recibiremos un e-mail con la IP Pública. 
Una de las cosas que me dejo en el tintero es como hacer para que la información de la IP Publica se enviara además mediante un SMS, sobre esto he estado haciendo pruebas y todavia no he conseguido resultados. Por lo demas creo que esta correctamente bien explicado y no hay erratas, pero si los hubiese o si teneis alguna duda o sugerencia teneis a vuestra disposicion los comentarios del Blog.

Compendio Bibliográfico
Información General
Imagenes
  • Logo oficial Asuswrt-Merlin obtenido de la pagina Web Asuswrt Merlin para ilustrar esta entrada. Esta imagen se han puesto en esta entrada para ilustrar la entrada e identificar el firmware en cuestión.

22 may 2017

Existe una máxima que dice "No te acostaras sin aprender nada nuevo", tanto en mi vida profesional como en mi vida personal intento aplicar dicha máxima. Uno de los temas pendientes que tengo como profesional IT es ampliar mi conocimiento sobre Android.  En mi vida me ha tocado pelearme con terminales con la mayoría de  sistemas operativos móviles (Windows Phone, iOS, Firefox OS & BlackBerry OS), pero los terminales Android los he tocado muy poco.

Como sabréis soy usuario de iOS, algún compañero de trabajo me denomina FanBoy de Apple, en cambio mi pareja es usuaria de Android. Hace algunos años cuando se puso a la venta la primera tablet de Google: la Asus Nexus 7 WiFi 16 Gbs (2012), yo fui uno de sus primeros compradores para después regalársela a mi pareja. Mientras hubo actualizaciones automáticas del sistema operativo la tablet iba bastante bien, hace algunos años Google decidió dejo de actualizar el sistema operativo quedándose la tablet en la versión 5.1.1. La Nexus se volvió muy lenta y se volvió inservible, como sino tuviera recursos.
Nexus 7 2012 con Android 4.2.2
Hace un par de meses puse a valores de fábrica la tablet, pero seguía yendo muy lenta. Así que nada me toco investigar en Internet para ver cómo se instalaba una Custom ROM, esta entrada es el procedimiento que yo he usado para instalar la ResurrectionRemix Android 7.1.1 Nougat ROM + GApps.


Ten en cuenta que rootear el terminal puede suponer la perdida de la garantía del fabricante, en mi caso esta última estaba más que expirada. Este procedimiento borrará todos los datos existentes. Proceda bajo su propio riesgo.

Pasos previos:
  1. El primer paso es dar la vuelta físicamente a la tablet, en la parte trasera veremos una pegatina donde nos vendrá el Model Number: ME370T. Seria también interesante que apuntáramos el  la versión de Android y la versión de la compilación. Podéis ver estos datos en Ajustes > Información del tablet.
  2. Hacer Backup de todos los datos. Podemos hacerlos desde el software NRT en el paso 2, aunque yo ese paso no lo voy a explicar.
  3. Tener la batería suficientemente cargada.
  4. Descargar ROM de la página Web AndroidTeam
  5. Instalar drivers Android en un PC con Windows. Podéis descargarlos de aquí la página Web AndroidTeam descargando los de Asus. Creo que el NRT también instala estos drivers ver el Paso 2 del siguiente enlace.
  6. Descargar de la página Web del Proyecto OpenGApps. Para descargar hay que seleccionar las siguientes opciones Plataforma ARM, S.O. Android 7.1 y Variante Pico, de esta última si descargamos otra variante al intentar instalarla os dará un error de que no hay espacio. 
Con el fin de evitar el error  de espacio insuficiente (Error 70) que algunos os ha dado al intentar instalar las GApps, tenéis que realizar el siguiente ajuste, descargaros el txt  gapps-config-grouper.txt y copiarlo en la misma ruta donde copiaremos la ROM y el paquete de GApps. Cuando inicie "opengapps updater-script" este localizara dicho txt y lo tendrá en cuenta. Solución aportada por @P LLiz Kas
Pasos a realizar:
  1. Desbloquear Modo Desarrollador. Para realizar el proceso, vamos a necesitar desbloquear las opciones de desarrollador. Entramos en Ajustes > Información del tablet y buscamos un apartado llamado Número de compilación. Tocamos sobre el código repetidas veces (7 pulsaciones) y comenzará una cuenta atrás con los toques que faltan para habilitar dichas opciones. En cuanto las opciones de desarrollo estén visibles en Ajustes, debemos acceder a ellas encender el interruptor que se corresponde con Depuración USB.
  2. Instalando el software Nexus Root Toolkit (NRT), solo esta para Windows. La instalación es muy simple, no tiene ninguna complicación. Una vez terminada la instalación el programa os preguntara que modelo  de Nexus tenéis y que versión de Android junto a que compilación:
    Aunque el propio software tiene una opción de AutoDetect Device + Build, yo pase de esta opción y elegí las opciones manualmente. Después el software comprobara y actualizara en caso de ser necesario las dependencias de archivos software TWRP Recovery y Chainfire SuperSU, le damos el boton Download + Update All File Dependencies
    Cuando pulsemos el botón nos descargará el software necesario (TWRP Recovery y Chainfire SuperSU), al ir a descargar la nueva versión del TWRP Recovery nos indicara que no ha superado la comprobación de Hash. Pulsamos en el botón Continuar. Chainfire SuperSU puede ser que nos de un error que la nueva versión 2.79-SR3 no ha superado la comprobación de Hash. Pulsamos en el botón Cancel. (ERRÓNEO Modificado 29 Diciembre 2017).

    Nos aparecerá una ventana Import File Dependency. Primer paso hacer doble click sobre el enlace twrp-3.0.2.0-grouper.img. Nos abrirá un navegador Web a Androidhost, donde descargaremos el .img mencionado que necesitamos. Después segundo paso el archivo que hemos descargado previamente lo seleccionamos a través del botón Browse... Por ultimo pulsamos el botón Apply. Después de que cancelemos la descarga de la versión 2.79-SR3, tranquilos tendremos todavía  la versión 1.28 de Chainfire SuperSU, que viene incluida con el NRT. (ERRÓNEO Modificado 29 Diciembre 2017).


    Finalmente pulsamos en el botón Continue >> en la ventana del Dependency Downloader. Nos aparecerá una ventana muy similar a esta:


  3. Desbloquear Bootloader mediante NRT. 
  4. Primero recomendable hacer una copia de seguridad de los datos ya que este paso nos formateara la tablet, después pulsamos en el botón Unlock en el apartado Unlock Bootloader.
    Antes de realizar el desbloqueo del Bootloader nos pondrá este mensaje en pantalla que esta acción borrara el contenido de la tablet, si queremos continuar con el proceso pulsamos en Aceptar.
    El proceso de desbloqueo del BootLoader es automático, nos reiniciara la tablet y entrara en el modo de recuperación de Android, puede ser que os pida una confirmación de que queremos liberar el BootLoader. El equipo trabajará a su ritmo reiniciando el sistema hasta que al final veamos una pantalla de arranque con un candado abierto debajo. Este proceso puede tardar unos 15-20 minutos por lo que ten paciencia y espera que acabe.
  5. Rootear mediante NRT. 
  6. Una vez el bootloader desbloqueado, deberemos rootear la tablet, para ello nos valdremos del botón Root y que este clickada la opción inferior de Custom Recovery.
     
    Antes de realizar el proceso nos saldrá un mensaje en pantalla igual a este, pulsamos en Aceptar para continuar: 
    El proceso de desbloqueo del Root es automático, nos reiniciara la tablet y entrara en el modo de recuperación de Android, puede ser que os pida una confirmación durante el proceso de  rooteo de la tablet. El equipo trabajará a su ritmo reiniciando el sistema hasta que finalmente se reinicie. Este proceso puede tardar unos 10-15 minutos por lo que ten paciencia y espera que acabe. Una vez finalizado el proceso nos aparecerá en pantalla un mensaje igual que el siguiente que pulsaremos en Aceptar:

  7. Añadir ROM y GApps Pico. Pulsamos el botón de Launch situado en el apartado Advanced Utilities.
    En la ventana de herramientas avanzadas que se nos abre pulsamos en Flash ZIPs [ROM, GApps/etc] y la opción inferior Flash Files From Computer:
    Nos aparecerá un mensaje de aviso que deberemos pulsar en Aceptar para continuar: 
    Nos aparecerá una nueva ventana denominada "Open Recovery Script Flash Manager", cuyas opciones estarán deshabilitadas por defecto, deberemos ir pulsando en las opciones para ir habilitándolas: 
    Primero habilitaremos y añadiremos la ROM que queremos instalar en la tablet. Para ello en el apartado "Configuration Suggestions" pulsamos en el tick de Enable, también confirmaremos que tenemos seleccionada la opción ROM/Aio.zip. El resto de opciones inferiores se tickearan automáticamente cuando seleccionemos la opción ROM/Aio.zip:
    Después seleccionamos donde tenemos descargada el zip de la ROM mediante la opción Add ZIP's to flash:
    Una vez añadida la ROM nos tocara añadir la GApps. En el apartado "Configuration Suggestions", seleccionamos la opción THEME/MOD/GAPPS.zip. El resto de opciones inferiores se tickearan automáticamente cuando seleccionemos la opción ROM/Aio.zip
    Después seleccionamos donde tenemos descargada el zip de la ROM mediante la opción Add ZIP's to flash:
    Una vez añadidas la ROM y las GApps podemos pulsar en Confirm Operation para que se realicen las operaciones seleccionadas.
    El proceso de carga de la ROM y de las GApps es automático, nos reiniciara la tablet varias veces y entrara varias veces en el modo de recuperación de Android. El equipo trabajará a su ritmo (pudiendo tardar hasta 30 min., paciencia) hasta que finalmente nos aparezca la pantalla de carga de la ROM y finalmente la pantalla de bienvenida de Android Nougat.  
    Nexus 7 con Android Nougat (v.7.1.1)
  8. Como siempre espero que os sirva este manual de como instalar una ROM en una Nexus 7 2012, si os ha servido comentar vuestra experiencia y si tenéis cualquier pega, problema o sugerencia la caja de comentarios es toda vuestra. Gracias por vuestra atención.
La entrada ha sido corregida el día 29/12/2017 por contener un error en el PASO 2 Instalando el software Nexus Root Toolkit (NRT), en la parte de las dependencias. Quiero agradecer el feedback de varios usuarios (@jeffrey mqm &@musikaio) los cuales han hecho posible que me diera cuenta del error. 
Actualización 05 de Febrero de 2018 se ha añadido la solución al error 70 espacio insuficiente a la hora de instalar  las GApps. Solución aportada por @P LLiz Kas


Compendio Bibliográfico
Información General
ROM
Software
Imágenes 
  • Imagen Nexus 7 con Android 4.2.2 se ha obtenido de la página Web de engadget.com. La imagen al igual que la Nexus 7 son material bajo copyright. Se han puesto en esta entrada para ilustrarla o identificar el dispositivo en cuestión.
  • Signo de exclamación obtenida de la siguiente página web de Imágenes. Imagen con licencia CC0 Public Domain.
  • Signo de Crystal Clear app error.png Autor: Everaldo Coelho and YellowIcon. Imagen bajo licencia GPL.