Sagemcom Modem F@st 2764 GV (Power Box GVT) – Desbloqueio

Jan 11, 2014   #f2764gv  #firmware  #hacking  #mod  #sagemcom 

Finalizei o Unlocker para o 2764 GV. Agora podemos ter um daemon SSH rodando no HomeGateway (que nos permite fazer muito mais coisas no device) ou “desbloquear”/alterar o runlevel sem downgrades, apenas com um simples comando, em qualquer versão de firmware. :)

Se usa Windows e quer apenas “desbloquear”/alterar o runlevel do 2764 GV, veja o novo post Sagemcom Modem F@st 2764 GV – Desbloqueio v2 (Windows).

O Unlocker tem 3 modos de operação: install, uninstall e runlevel. Se o único interesse é alterar o runlevel ou “desbloqueio de funções”, vá para “Runlevel”.

Install

O modo install instala um daemon SSH no 2764 GV, que inicia automaticamente com o modem; e altera o runlevel para 4 no próximo reboot após a instalação. O usuário e senha são root / root.

  • Copie o arquivo “f2764gvunlocker.tar” [1] para um pen-drive (FAT32 ou ext2/3), no diretório raiz;
  • Execute o script com a opção install:
./unlocker.py --mode=install
  • Caso o IP, usuário ou senha do HG sejam diferentes do padrão, basta especificá-los:
./unlocker.py --mode=install --host=192.168.25.100 --user=foo --pass=bar
  • Siga as instruções no script.

Uninstall

Para remover o Unlocker, basta executar os mesmos passos acima, apenas trocando o modo: –mode=uninstall.

Runlevel

Caso só pretenda alterar o runlevel e desbloquear todos os recursos:

  • Copie o arquivo “rg_conf_set” [2] para um pen-drive (FAT32 ou ext2/3), no diretório raiz;
  • Execute o script com a opção runlevel:

    ./unlocker.py –mode=runlevel

  • Caso o IP, usuário ou senha do HG sejam diferentes do padrão, basta especificá-los:

    ./unlocker.py –mode=runlevel –host=192.168.25.100 –user=foo –pass=bar

  • Siga as instruções no script.

Como não era possível alterar o runlevel sem o velho método do “suga a configuração” > altera > põe de volta, escrevi um pequeno utilitário complementar ao rg_conf_print (já incluso no 2764 GV) que dá o poder de escrever nas configurações a partir do shell: o rg_conf_set (o’rly?). Caso queiram modificar outros parâmetros, basta usar o HomeGateway.conf extraído para saber os caminhos. Siga a estrutura do conf e converta para um caminho com barras.

Existe uma versão do script para Windows, feito com o py2exe. Não testei muito, mas para quem não tem o interpretador Python instalado, give it a try.

Agradecimentos pelas conversas, ajuda, trocas de ideias e arquivos vão para: facsi, Jonathan Amend (pela falha no GetListOfFiles, big thank you!), navossoc, ofumeta e woytekm. :)

Todo código fonte sob GPL.

Edit 19/04/14: testado no 8440, funciona perfeitamente com os mesmos passos. Aos que estão tendo problemas com o unlocker não encontrando ponto de montagem, usem outro pen-drive, formatado em FAT32, apenas uma partição no disco, sem rótulo de volume.

[1] f2764gvunlocker.tar

[2] rg_conf_set

[3] unlocker.py

[4] unlocker_win.zip (para Windows, execute o unlocker.exe)

[5] rg_conf_set (fontes)