Ejemplo de activacion de un parametro de configuracion a traves de una pagina web parcheadaEl objetivo es poder habilitar el puerto telnet, el SSH o la consola a traves de este metodo y obtener un fichero de configuracion valido para el resto de routers del mismo modelo.
En el EPC3925, para habilitar el Remote Management que activa el puerto 161 del SNMP, hay que seguir los siguientes pasos:
1.- Descargar Opera 12 u Opera 11:http://www.opera.com/download/get/?partner=www&opsys=Windows&classic=1http://www.opera.com/download/get/?id=35879&location=360¬hanks=yes&sub=marinehttp://get.geo.opera.com/pub/opera/win/1216/int/Opera_1216_int_Setup.exePara la extension "Source" no vale una version del navegador Opera distinta de estas.
Por ejemplo, la version 19 solo permite visualizar el codigo fuente, no permite aplicar cambios.
2.- Instalar el navegador:Opera_1216_int_Setup.exe
3.- Instalar la extension "Source" para Opera:Es un plugin que solo funciona en las versiones 11 o 12 de Opera.
https://addons.opera.com/es/extensions/details/source/?display=enhttps://addons.opera.com/extensions/download/source/Desde un navegador distinto de Opera se descargara el archivo:
source-1.0.3-1.oex
Si lo habeis hecho con Opera se habra instalado esta extension.
Esta extension es para editar paginas HTML "al vuelo".
Y esto es lo que se utilizara para modificar las opciones ocultas de las paginas web de los routers cisco.
Se sabe la estructura que tienen las paginas web gracias a otros routers que tienen estas opciones visibles.
4.- Editar la pagina del router donde se modificara la configuracion del Route Management:Pasos:
- Acceder a la web del router, con las contraseñas que se esten utilizando (sin usuario y sin contraseña, o la que le hayamos puesto, no usar admin/W2402).
- Ir a Administration
- Os debera aparecer la pagina de Management
Apariencia:
Esta es la imagen que aparece por defecto en el router
Si se repiten los mismos pasos hasta llegar hasta esta pagina, pero con el Opera 12, con la extension "Source" instalada, sera posible ver y editar el codigo fuente.
Dando a Ctrl+U vemos el codigo fuente:
El siguiente paso es abrir el siguiente archivo de texto:
http://pastebin.com/raw.php?i=W0eQy7mMSeleccionarlo todo con Ctrl+A y copiar con Ctrl+C.
Ir al codigo fuente del Opera 12 abierto anteriormente.
Seleccionarlo todo con Ctrl+A y pegar con Ctrl+V.
Hay que darle al boton Aplicar cambios.
Si vamos a la pestaña de Management, dentro del mismo Opera 12, vemos que el aspecto ha cambiado:
Solo queda fijar un usuario, el password y en "Remote Management" marcar "Enable".
El puerto que indica se puede dejar en 139, porque da igual, ya que utlizara el que hay por defecto, el 161 para el SNMP y creo que el 162 para el SNMP trap.
El resto de opciones no cambiarlas, dejar deshabilitado UPnP.
Vamos otra vez a la pestaña de "Administration", en "Back Up & Restore", y hacemos un "Back Up":
El archivo "filename.gwc" generado pasa de tener en su interior:
Remote Configuration Management (Yes or No)=No;
A tener en su interior:
Remote Configuration Management (Yes or No)=Yes;
Remote Management Port=139;
En los CG3100D y CG3100Dv3 el archivo de configuracion se guarda en un fichero binario con el nombre "GatewaySettings.bin".
En el EPC3825 y en el EPC3925 el archivo de configuracion se guarda en un fichero de texto plano con el nombre "filename.gwc".
Ahora el interes esta en encontrar las paginas htm, html o asp que habiliten el parametro Telnet.
Las siguientes cadenas son las que pueden estar relacionadas con la habilitacion del parametro que activa la conexion telnet:
Telnet Access Enabled =
Telnet Enable Mode =
Posibles procedimientos:1.- SNMP (se tienen que hacer pruebas hasta encontrar el OID y la forma de habilitar la variable de "telnet enable")
2.- Modificacion de pagina web "al vuelo", como se acaba de explicar.
Resultados de algunas pruebas:Capturas de pantalla de "netscan" mostrando como se localiza el router EPC3925 en el puerto 161 del SNMP:
http://www.softperfect.com/products/networkscanner/http://www.softperfect.com/download/freeware/netscan.zipCon otro programa, el "snmptester", puedo mandar OIDs del tipo "custom".
He mandado el mismo OID y he obtenido la misma respuesta que con el programa anterior.
http://www.paessler.com/tools/snmptesterhttp://download-cdn.paessler.com/download/snmptester512.ziphttp://download-cdn.paessler.com/download/snmptester.pdfSe ha encontrado una pagina interesante con OIDs de Cisco:
http://tools.cisco.com/Support/SNMP/public.jspSe ha probado uno relacionado con la habilitacion del telnet:
http://tools.cisco.com/Support/SNMP/do/BrowseOID.do?local=en&translate=Translate&objectInput=1.3.6.1.4.1.14179.1.2.1.2.3Description "Allow new telnet sessions (enable or disable) Config telnet disable means that no new Telnet sessions are to be established. Any already established session remains active until the session is ended or an abnormal network error ends it. "
Pero en esta prueba inicial no ha funcionado ese OID, al menos en mi router.
Posibles communities:public, private, secret, cisco, ono, gesCM1, docsDevNmAccessIp, DevNmAccessIpMask, NmAccessCommunity, DevNmAccessControl, DevNmAccessInterfaces, DexNmAccessStatus, ...
net-snmp:Quien quiera usar comandos SNMP tendra que utilizar una herramienta mas avanzada de linea de comandos:
http://sourceforge.net/projects/net-snmp/files/net-snmp%20binaries/5.7-binaries/net-snmp-5.7.0-1.x86.exe/downloadDespues de instalarla tendra que añadir a la variable de entorno "Path" del sistema operativo la ruta de la carpeta "bin" del programa.
Normalmente:
"c:\Archivos de programa\snmp\bin"
Vamos a empezar con un comando sencillo:
c:\tmp>snmpget -v2c -c public 192.168.100.1 1.3.6.1.2.1.1.1.0
SNMPv2-MIB::sysDescr.0 = STRING: Cisco EPC3925 EuroDocsis 3.0 2-PORT Voice Gateway <<HW_REV: 1.0; VENDOR: Cisco; BOOTR: 2.3.0_R1; SW_REV: epc3925-E10-5-v302r125553-120726c-TLC; MODEL: EPC3925>>
c:\tmp>
Ahora vamos a intentar uno de modificacion de parametros del tipo string:
c:\tmp>snmpset -v2c -c public 192.168.100.1 1.3.6.1.4.1.4413.2.99.1.1.1.2.1.2.1 s password
Error in packet.
Reason: notWritable (That object does not support modification)
Failed object: SNMPv2-SMI::enterprises.4413.2.99.1.1.1.2.1.2.1
c:\tmp>
Ahora vamos a intentar uno de modificacion de parametros del tipo integer:
c:\tmp>snmpset -v2c -c gesCM1 192.168.100.1 1.3.6.1.4.1.14179.1.2.1.2.3 i 1
Error in packet.
Reason: noAccess
Failed object: SNMPv2-SMI::enterprises.14179.1.2.1.2.3
c:\tmp>
Por internet hay algunos comandos snmp para los routers CG3100D, pero no he conseguido que funcionen en mi EPC3925.
Solo hay que hacer una busqueda de: snmpset CG3100D
No solo hay que saber las OIDs que lleva cada router, sino que tambien hay que saber como se utilizan, los tipos de variables que utilizan (si strings o integers i) y como funcionan.
Haciendo pruebas se ha visto que exite otra IP activa, la 192.68.100.5, seguramente es la del propio cablemodem.
Espero que esta informacion le sirva al resto de desarrolladores y se pueda avanzar en estas familias de routers.
Saludos
espeltron