[GUIDA] Root e Modding Smart Modem Plus AGTEF DGA4130 (VBNT-K)

  • 9588 Risposte
  • 5810202 Visite

0 Utenti e 10 Visitatori stanno visualizzando questo topic.

Offline shdf

  • Esperto
  • ****
  • 981
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4575 il: 30 Novembre 2017, 14:52 »
ho una copia della GUI 3.29.2 nel mio MEGA  ;)
https://mega.nz/#F!nNcWXS4R!lU6RRMcIZwnsuC0dN8IykA
Basta mettere il file in /tmp (con Winscp) e fare da putty:
bzcat /tmp/GUI.tar.bz2 | tar -C / -xvf -
/etc/init.d/rootdevice force

il mio italiano ? Grazie Google  :rotfl:
« Ultima modifica: 30 Novembre 2017, 14:54 da shdf »
Scusa, sono francese non parlo molto bene italiano
DGA4130 sbloccato firmware 2.2.0 + GUI TIM Unlocked
DGA4132 sbloccato firmware 2.2.0 + GUI TIM Unlocked

Offline shdf

  • Esperto
  • ****
  • 981
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4576 il: 30 Novembre 2017, 14:56 »
@Ansuel aspetto il tuo tip per Aria2ng sul router...  :P
Scusa, sono francese non parlo molto bene italiano
DGA4130 sbloccato firmware 2.2.0 + GUI TIM Unlocked
DGA4132 sbloccato firmware 2.2.0 + GUI TIM Unlocked

Offline Ansuel

  • VIP
  • *****
  • 3166
  • Sesso: Maschio
  • Il trucco è avere tanti modem da brikkare :P
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4577 il: 30 Novembre 2017, 15:03 »
sto prima cercando di fixare sto robo... che è nato così a caso

Offline olicar

  • Membro Giovane
  • **
  • 56
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4578 il: 30 Novembre 2017, 15:11 »
Aggiornato alla gui 3.29.2 tutto ok per me nulla da segnalare
con aggiornamento 3.29.4 non chiude aggiornamento ho dovuto spegnere modem
riavviare, riavviare browser, dopo di che sembra funzionare tutto.
Il caffè quando esce :nod:

Offline Ansuel

  • VIP
  • *****
  • 3166
  • Sesso: Maschio
  • Il trucco è avere tanti modem da brikkare :P
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4579 il: 30 Novembre 2017, 15:25 »
PERFECT mi ci so volute 18 revisioni ma finalmente ce l'ho fatta :)

ora funziona tutto regolarmente... SPERO!

il telnet rimane e se cambiato non riavvia il mondo...

telegestone da me rimane attiva normalmente...

Offline mixmax

  • Esperto
  • ****
  • 698
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4580 il: 30 Novembre 2017, 15:31 »
Versione Gui
3.29.18   telegestione  on-off  OK  :clap:
TIM 200/20  AGTEF_2.2.0  :tumbleweed:

Offline Ansuel

  • VIP
  • *****
  • 3166
  • Sesso: Maschio
  • Il trucco è avere tanti modem da brikkare :P
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4581 il: 30 Novembre 2017, 15:35 »
@shdf nello specifico ecco la config...

Codice: [Seleziona]
aria2c --enable-rpc --rpc-allow-origin-all --rpc-listen-all

user nobody nogroup;
# DO NOT EVER change the number of worker processes!
worker_processes  1;

error_log   syslog:server=unix:/dev/log,facility=daemon,nohostname warn;

events {
    worker_connections  256;
}

http {
    access_log  off;
    server_tokens off;
   
   gzip             on;
   gzip_comp_level  5;
   gzip_min_length  1000;
   gzip_proxied     expired no-cache no-store private auth;
   gzip_types       text/plain application/x-javascript text/xml text/css application/xml;
 
    include     mime.types;

    lua_package_path ';;${prefix}lib/lua/?.lua;/www/lua/?.lua';
    lua_package_cpath '${prefix}lib/lua/?.so';

    keepalive_timeout  65;
 
    add_header X-Frame-Options SAMEORIGIN;
   

    init_by_lua '
        local state_dir = "/var/run/assistance"
        local cmd = string.format("if [ ! -d %s ]; then mkdir %s && chown nobody %s; fi;rm -f %s/*", state_dir, state_dir, state_dir, state_dir)
        os.execute(cmd)
    ';
    init_worker_by_lua '
        local sessioncontrol = require("web.sessioncontrol")
        sessioncontrol.setManagerForPort("default", "80")
        sessioncontrol.setManagerForPort("assistance", "443")
    ';

    server {
        # ipv4
        listen       80;
        listen       443 ssl;
        # ipv6
        listen       [::]:80;
        listen       [::]:443 ssl;

        ssl_certificate /etc/nginx/server.crt;
        ssl_certificate_key /etc/nginx/server.key;
        # based on https://wiki.mozilla.org/Security/Server_Side_TLS
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS;
        ssl_prefer_server_ciphers on;
        ssl_session_tickets off;

        server_name  localhost;
        root /www/docroot;
        client_body_buffer_size 64k;

        # platform/custo specific values
        include ui_server.conf;

        location = / {
         add_header Content-Security-Policy "default-src 'self';script-src 'self' 'unsafe-eval' 'unsafe-inline';style-src 'self' 'unsafe-inline'";
            index gateway.lp;
        }

        location ^~ /css/ {
          #do nothing
        }

        location ^~ /img/ {
          #do nothing
        }

        location ^~ /fonts/ {
          #do nothing
        }

        location ^~ /js/ {
          #do nothing
        }
     
      location /aria {
          index index.html;
        alias /www/docroot/aria;
        }
     
      location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
        expires 365d;
      }

        location ^~ / {
            access_by_lua '
              require("web.assistance").enable()
              local mgr = require("web.sessioncontrol").getmgr()
         if ngx.req.get_uri_args().auto_update == "true" then
                 mgr:checkrequest(true)
              else
                 mgr:checkrequest()
              end
              mgr:handleAuth()
            ';
            content_by_lua '
              require("cards").setpath("/www/cards")
              require("web.lp").setpath("/www/cards/")
              require("web.web").process()
            ';
        }

        location = /api {
            # We read the complete request in memory so to prevent DoS attack we
            # must limit the allowed request size.
            # For simplicity this should be the same as client_body_buffer_size so the
            # body does not get spilled into a temp file.
            client_body_buffer_size 64k;
            client_max_body_size 64k;
            content_by_lua '
              local role = require("webservice.accesscontrol_token").authenticate()
              require("webservice.api").process(role)
            ';
        }

        # additional/custom configuration
        include main_*.conf;
    }

    server {
        listen       127.0.0.1:55555;
        server_name  127.0.0.1;
        root         /www;

        location = /ra {
            access_by_lua '
              require("web.assistance").enable()
            ';

            content_by_lua '
              local assistance = require("web.assistance")
              local getargs = ngx.req.get_uri_args()
              for k, v in pairs(getargs) do
                local assistant = assistance.getAssistant(k)
                local enable, mode, pwdcfg, pwd = string.match(string.untaint(v), "(.*)_(.*)_(.*)_(.*)")
                if pwdcfg == "random" then
                  pwd=nil
                elseif pwdcfg == "keep" then
                  pwd=false
                elseif pwdcfg == "srpuci" then
                  local dm = require("datamodel")
                  local srp_pair, user_map = {}, {}
                  local cfg=dm.get("uci.web.user.")
                  if cfg then
                    for _, entry in ipairs(cfg) do
                      local ra_name = string.match(string.untaint(entry.path),"%.@([^.]*)%.")
                      if ra_name then
                        if entry.param == "name" then
                          user_map[entry.value] = ra_name
                        end
                        if (entry.param == "srp_salt" or entry.param == "srp_verifier") and entry.value ~= "" then
                          srp_pair[ra_name] = srp_pair[ra_name] or {}
                          srp_pair[ra_name][string.match(entry.param, "srp_(.*)")] = string.untaint(entry.value)
                        end
                      end
                    end
                  end

                  local result = dm.get("uci.web.assistance.@" .. k .. ".user")
                  if result then
                    local user = result[1].value
                    pwd = srp_pair[user_map[user]]
                  end
                  if pwd and (not pwd["salt"] or not pwd["verifier"]) then
                    pwd = nil
                  end
                end
                if enable == "on" then
                  assistant:enable(true, mode=="permanent", pwd)
                elseif enable == "off" then
                  assistant:enable(false, mode=="permanent", pwd)
                end
              end
          ';
        }
        location = /reloadWebUsers {
            content_by_lua '
              require("web.sessioncontrol").reloadUsers()
            ';
        }
        location = /api/reload {
          content_by_lua '
            require("webservice.accesscontrol_token").reload_config()
          ';
        }
    }

    server {
        # ipv4
        listen 8080 tproxy;
        # ipv6
        listen [::]:8080 tproxy;

        #access_log /var/log/nginx/intercept.log;

        access_by_lua '
          require("web.intercept").process()
        ';
    }

    include server_*.conf;
}
LA CARTELLA DI ARIANG va messa in /www/docroot crei la cartella aria qui e ci metti dentro tutti i file dove trovi index.html :)
« Ultima modifica: 30 Novembre 2017, 15:50 da MisterFTTH »

Offline LorenzoL

  • Membro Anziano
  • ***
  • 417
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4582 il: 30 Novembre 2017, 15:44 »
Grazie Ansuel, la 3.29.18, da una prima occhiata gira bene ed è tornato il telefono, cosa MOLTO gradita.....so far, so good.
I'm the WIFI Ninja.......sono solo un praticone che si arrangia

Offline olicar

  • Membro Giovane
  • **
  • 56
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4583 il: 30 Novembre 2017, 15:46 »
Tutto OK 3.29.18

Offline Ansuel

  • VIP
  • *****
  • 3166
  • Sesso: Maschio
  • Il trucco è avere tanti modem da brikkare :P
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4584 il: 30 Novembre 2017, 15:59 »
si scusa, andavo un attimo di fretta e non facevo in tempo se usavo l'editor avanzato grazie per la correzione

Offline freddy0h

  • Membro Anziano
  • ***
  • 174
  • asd
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4585 il: 30 Novembre 2017, 16:14 »
@Ansuel volevo accedere al seriale del modem agtot (il technicolor tg789vac2) ma non ho capito come si apre (essendoci quello specie di attacco a stella) tu sapresti indicarmi come si può smontare il case?
asd.
TG789vac2 - root 17.3
Tim HUB - root 17.3
AGTEF - root 17.3

Offline shdf

  • Esperto
  • ****
  • 981
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4586 il: 30 Novembre 2017, 18:07 »
@shdf nello specifico ecco la config...

Codice: [Seleziona]
aria2c --enable-rpc --rpc-allow-origin-all --rpc-listen-all

user nobody nogroup;
# DO NOT EVER change the number of worker processes!
worker_processes  1;

error_log   syslog:server=unix:/dev/log,facility=daemon,nohostname warn;

events {
    worker_connections  256;
}

http {
    access_log  off;
    server_tokens off;
   
   gzip             on;
   gzip_comp_level  5;
   gzip_min_length  1000;
   gzip_proxied     expired no-cache no-store private auth;
   gzip_types       text/plain application/x-javascript text/xml text/css application/xml;
 
    include     mime.types;

    lua_package_path ';;${prefix}lib/lua/?.lua;/www/lua/?.lua';
    lua_package_cpath '${prefix}lib/lua/?.so';

    keepalive_timeout  65;
 
    add_header X-Frame-Options SAMEORIGIN;
   

    init_by_lua '
        local state_dir = "/var/run/assistance"
        local cmd = string.format("if [ ! -d %s ]; then mkdir %s && chown nobody %s; fi;rm -f %s/*", state_dir, state_dir, state_dir, state_dir)
        os.execute(cmd)
    ';
    init_worker_by_lua '
        local sessioncontrol = require("web.sessioncontrol")
        sessioncontrol.setManagerForPort("default", "80")
        sessioncontrol.setManagerForPort("assistance", "443")
    ';

    server {
        # ipv4
        listen       80;
        listen       443 ssl;
        # ipv6
        listen       [::]:80;
        listen       [::]:443 ssl;

        ssl_certificate /etc/nginx/server.crt;
        ssl_certificate_key /etc/nginx/server.key;
        # based on https://wiki.mozilla.org/Security/Server_Side_TLS
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS;
        ssl_prefer_server_ciphers on;
        ssl_session_tickets off;

        server_name  localhost;
        root /www/docroot;
        client_body_buffer_size 64k;

        # platform/custo specific values
        include ui_server.conf;

        location = / {
         add_header Content-Security-Policy "default-src 'self';script-src 'self' 'unsafe-eval' 'unsafe-inline';style-src 'self' 'unsafe-inline'";
            index gateway.lp;
        }

        location ^~ /css/ {
          #do nothing
        }

        location ^~ /img/ {
          #do nothing
        }

        location ^~ /fonts/ {
          #do nothing
        }

        location ^~ /js/ {
          #do nothing
        }
     
      location /aria {
          index index.html;
        alias /www/docroot/aria;
        }
     
      location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
        expires 365d;
      }

        location ^~ / {
            access_by_lua '
              require("web.assistance").enable()
              local mgr = require("web.sessioncontrol").getmgr()
         if ngx.req.get_uri_args().auto_update == "true" then
                 mgr:checkrequest(true)
              else
                 mgr:checkrequest()
              end
              mgr:handleAuth()
            ';
            content_by_lua '
              require("cards").setpath("/www/cards")
              require("web.lp").setpath("/www/cards/")
              require("web.web").process()
            ';
        }

        location = /api {
            # We read the complete request in memory so to prevent DoS attack we
            # must limit the allowed request size.
            # For simplicity this should be the same as client_body_buffer_size so the
            # body does not get spilled into a temp file.
            client_body_buffer_size 64k;
            client_max_body_size 64k;
            content_by_lua '
              local role = require("webservice.accesscontrol_token").authenticate()
              require("webservice.api").process(role)
            ';
        }

        # additional/custom configuration
        include main_*.conf;
    }

    server {
        listen       127.0.0.1:55555;
        server_name  127.0.0.1;
        root         /www;

        location = /ra {
            access_by_lua '
              require("web.assistance").enable()
            ';

            content_by_lua '
              local assistance = require("web.assistance")
              local getargs = ngx.req.get_uri_args()
              for k, v in pairs(getargs) do
                local assistant = assistance.getAssistant(k)
                local enable, mode, pwdcfg, pwd = string.match(string.untaint(v), "(.*)_(.*)_(.*)_(.*)")
                if pwdcfg == "random" then
                  pwd=nil
                elseif pwdcfg == "keep" then
                  pwd=false
                elseif pwdcfg == "srpuci" then
                  local dm = require("datamodel")
                  local srp_pair, user_map = {}, {}
                  local cfg=dm.get("uci.web.user.")
                  if cfg then
                    for _, entry in ipairs(cfg) do
                      local ra_name = string.match(string.untaint(entry.path),"%.@([^.]*)%.")
                      if ra_name then
                        if entry.param == "name" then
                          user_map[entry.value] = ra_name
                        end
                        if (entry.param == "srp_salt" or entry.param == "srp_verifier") and entry.value ~= "" then
                          srp_pair[ra_name] = srp_pair[ra_name] or {}
                          srp_pair[ra_name][string.match(entry.param, "srp_(.*)")] = string.untaint(entry.value)
                        end
                      end
                    end
                  end

                  local result = dm.get("uci.web.assistance.@" .. k .. ".user")
                  if result then
                    local user = result[1].value
                    pwd = srp_pair[user_map[user]]
                  end
                  if pwd and (not pwd["salt"] or not pwd["verifier"]) then
                    pwd = nil
                  end
                end
                if enable == "on" then
                  assistant:enable(true, mode=="permanent", pwd)
                elseif enable == "off" then
                  assistant:enable(false, mode=="permanent", pwd)
                end
              end
          ';
        }
        location = /reloadWebUsers {
            content_by_lua '
              require("web.sessioncontrol").reloadUsers()
            ';
        }
        location = /api/reload {
          content_by_lua '
            require("webservice.accesscontrol_token").reload_config()
          ';
        }
    }

    server {
        # ipv4
        listen 8080 tproxy;
        # ipv6
        listen [::]:8080 tproxy;

        #access_log /var/log/nginx/intercept.log;

        access_by_lua '
          require("web.intercept").process()
        ';
    }

    include server_*.conf;
}
LA CARTELLA DI ARIANG va messa in /www/docroot crei la cartella aria qui e ci metti dentro tutti i file dove trovi index.html :)
:clap: Funziona, Grazie 1000 !
Scusa, sono francese non parlo molto bene italiano
DGA4130 sbloccato firmware 2.2.0 + GUI TIM Unlocked
DGA4132 sbloccato firmware 2.2.0 + GUI TIM Unlocked

Offline shdf

  • Esperto
  • ****
  • 981
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4587 il: 30 Novembre 2017, 18:28 »
humm
Ho aggiornato due volte la GUI, con la gui e con SSH. ho pulito il cache, vedo sempre nella GUI la versione 3.16  ::) (la mia versione precedente)
ma il changelog conferma che sono con l'ultima 3.29.x
Citazione
root@livebox:~# uci get env.var.gui_version
3.29.18
Altra cosa, quando si fa l'upgrade della GUI, si perde la config nginx, dunque "Adios" aria2 e altre cose personalizzate... :(

EDIT:
ho fatto /etc/init.d/transformer restart e ora vedo bene la versione giusta  ;)
« Ultima modifica: 30 Novembre 2017, 18:36 da shdf »
Scusa, sono francese non parlo molto bene italiano
DGA4130 sbloccato firmware 2.2.0 + GUI TIM Unlocked
DGA4132 sbloccato firmware 2.2.0 + GUI TIM Unlocked

Offline Ansuel

  • VIP
  • *****
  • 3166
  • Sesso: Maschio
  • Il trucco è avere tanti modem da brikkare :P
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4588 il: 30 Novembre 2017, 18:36 »
humm
Ho aggiornato due volte la GUI, con la gui e con SSH. ho pulito il cache, vedo sempre nella GUI la versione 3.16  ::) (la mia versione precedente)
ma il changelog conferma che sono con l'ultima 3.29.xAltra cosa, quando si fa l'upgrade della GUI, si perde la config nginx, dunque "Adios" aria2 e altre cose personalizzate... :(

provato a riavviare?

Offline shdf

  • Esperto
  • ****
  • 981
  • Sesso: Maschio
Re:[GUIDA] Sblocco Smart Modem Evolution DGA4130 (AGTEF)
« Risposta #4589 il: 30 Novembre 2017, 18:37 »
bastava fare un  /etc/init.d/transformer restart  ;)
Scusa, sono francese non parlo molto bene italiano
DGA4130 sbloccato firmware 2.2.0 + GUI TIM Unlocked
DGA4132 sbloccato firmware 2.2.0 + GUI TIM Unlocked