[Topic Officiel] - Huawei B593 - Firmware 4.1 Disponible

1687
8 avril 2017Édité par:"Modprobe"
Salut tout le monde,

Je vous propose d'ouvrir un topic officiel pour le Huawei B593.
Ce sera plus simple que dans les deals et ça permettra de centraliser les informations.

Pour ma part, j'orienterai essentiellement les informations sur les B593u-12 mais j'apporterai également quelques informations pour le s-12 quand cela sera possible...

A suivre !

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Forcer la bande 4G utilisée (s'applique au U-12 et peut-être au S-12 aussi).

Pour cela, il faut disposer d'une connexion Telnet ou SSH au routeur.
- Pour le U-12, soit vous utilisez mon firmware soit vous faites en sorte de pouvoir accéder depuis votre version.
- Pour le S-12, a priori il faut exploiter la faille FTP pour récupérer le mot de passe admin de SSH.

Une fois connecté, vous obtenez la mire "ATP>" : tapez shell.
Cela vous emmène dans un terminal où vous pouvez saisir des commandes : tapez lteat

Vous vous retrouvez à présent avec une mire " AT>".
A partir de là, vous devez faire extrêmement attention aux commandes que vous passez.

La première étape consiste à vérifier/noter votre configuration actuelle : AT^SYSCFGEX?
Cela renvoie par exemple : "^SYSCFGEX:"03",3FFFFFFF,1,2,7FFFFFFFFFFFFFFF"

A- Forcer la bande 800 Mhz : AT^SYSCFGEX="03",3FFFFFFF,2,4,80000,,

B- Forcer la bande 1800 Mhz : AT^SYSCFGEX="03",3FFFFFFF,2,4,4,,

C- Forcer la bande 2600 Mhz : AT^SYSCFGEX="03",3FFFFFFF,2,4,40,,

A noter que :
- Forcer sur une autre fréquence que celle active provoque la resynchronisation du modem : pas de redémarrage nécessaire.
- La modification est persistante (gardée au redémarrage).
- Vous pouvez vérifier la prise en compte avec la première commande : AT^SYSCFGEX?

Pour remettre toutes les bandes, utilisez par exemple : AT^SYSCFGEX="00",3FFFFFFF,1,2,7FFFFFFFFFFFFFFF,,
ATTENTION : vous devez remplacer le "00" par la valeur que vous aviez.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Installation V2.x, V3.x - Pour passer de la V1 à la V2.x.V3.x ou de la V2.x à la V3.x, il y a plusieurs possibilités.
Remarque : pour ceux qui n'ont pas encore installé mon firmware modifié, vous pouvez suivre le deuxième topic en prenant directement les fichiers dans le bon dossier.

Sinon :
- Mettre à jour par l'interface web avec le fichier .tar.bz2.
- Mettre à jour uniquement "Router" avec b593_upgrade.
- Mettre à jour l'intégralité "Modem&Router" avec b593_upgrade.

A l'issue, vous avez un firmware en V2.x/V3.x.

Pour les "utils" (binaires, scripts...), voici une méthode :
- Suivre le topic suivant pour récupérer et déposer le fichier tar des utils sur le routeur dans /upgflash.
- Sauvegarder vos répertoires "scripts" et "apps" : mv apps apps_backup ; mv scripts scripts_backup
- Extraire la nouvelle archive : tar xf b593-utils-v30.tar.
- Recopier vos fichiers modifiés dans les nouveaux répertoires.
Exemple : cp scripts_backup/iptables.sh scripts/

Les changements de la V2 :
- Suppression de Racoon (ne fonctionne pas).
- Intégration de Inadyn dans le firmware.
- Mise à jour de Zabbix en 2.4.8.
- Retour de iperf dans /bin.
- Compilation et intégration de dropbear (client / serveur SSH pour tunnel).
- Création des liens pour .ssh et /home (authentification par clef SSH).
- Création d'un script de démarrage pour Inadyn.

Les changements de la V2.1:
- Déplacement du fichier resolv.conf dans etc au lieu de dns (upgflash/apps).
- Création d'un fichier "hosts" pour la résolution de nom (upgflash/apps).
- Ajout des APN français pour pouvoir utiliser le "Auto APN" dans l'interface web.
- Remplacement de l'APN par défaut "Free" par un factice "Huawei".
- Désactivation des notifications par défaut.
- Création des scripts pour l'utilisation de Zabbix avec le B593.

Les changements de la V3 :
- Traduction en Français (merci à Backanouilles).
- Version disponible en interface noire "Dealabs" et en version blanche "Huawei".
- Retrait de la partie "pushinfo" qui indiquait à tort la présence de MAJ.
- Renommage du "setup.com" en "b593.lte" : vous pouvez accéder par ce nom dans le navigateur.
- Les ports 443 et 631 sont à présents filtrés en "reject" dans iptables : avec un nmap on ne les voit plus (ne reste que http et ssh).
- Ajout d'éléments supplémentaires à la BusyBox personnalisée (strings, tr...).
- Désactivation du démarrage auto de Zabbix (pas utile à tout le monde).
- Définition du hostname "b593" au démarrage.
- Création de terminaux supplémentaires pour SSH (via Dropbear).
- Ajout de la commande "sysctl" et d'un lien "sysctl.conf" dans /etc pour utilisation des options noyau.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Installation V4 - Pour passer d'un firmware autre ou de la V1/V2/V3 à la V4 (mais pas à la V4.1, cf ci-dessous), il faut procéder à une réinstallation complète via b593_upgrade.exe et le firmware complet au format .bz2. Il est déconseillé de ne mettre à jour que la partie routeur (modem différent).

Pour cela, s'appuyer sur le second message qui explique comment installer le firmware, faire un reset et installer les outils additionnels si souhaité.

Les changements de la V4 :
- Mêmes fonctionnalités que la V3.
- Passage sur le firmware Polkomtel (C69-103) jugé plus stable et plus sécurisé.
- Utilisation du SSL possible pour l'interface d'administration.
- Modification du temps d'inactivité de l'interface d'administration.
- Déplacement dans "iperf" et "tcpdump" dans /upgflash/apps/bin car firmware plus petit.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Installation V4.1 - Attention, la MAJ en 4.1 n'est possible qu'à partir d'une V4.x. Celle-ci est non-disruptive (pas de perte de configuration).
Cette MAJ est symbolique (1 an jour pour jour après la V4).

La mise à jour est à réaliser depuis l'interface web.
Pendant la MAJ, le routeur redémarrera 2 fois et au premier redémarrage tous les voyants clignoteront : c'est normal, il faut patienter.

Les changements de la V4.1 :

- Mêmes fonctionnalités que la V4.
- Installation depuis l'interface sans perte de configuration (uniquement à partir de la V4).
- MAJ de l'agent Zabbix de 2.4.8 à 3.0.17 LTS.
- Correction du bug de la page d'accueil (pas de texte affiché, voir ici).
- Possibilité de passer de la version blanche à la version noire et vice-versa sans perte de configuration.
- Modification du Copyright de "2017" à "2018".
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Reverse SSH Tunnel - Si vous souhaitez accéder au routeur depuis l'extérieur via un reverse tunnel SSH, voici comment faire.

A- Utilisation du serveur SSH intégré (une seule session possible avec déconnexion automatique et arrivée sur "ATP>").

Exécutez dbclient de manière à établir de manière permanente la connexion SSH vers un serveur distant.
ssh -f -N -R 1234:127.0.0.1:22 root@votreserveur

Pour vous connecter depuis le serveur "de rebond" :
ssh admin@localhost -p 1234

Le port 1234 peut bien sûr être remplacé par celui de votre choix.

B- Utilisation du serveur dropbear compilé (plusieurs sessions possibles, sans déconnexion automatique et arrivée dans BusyBox directement.

Exécutez dropbear de manière à ce qu'il écoute sur le port de votre choix. Exemple ici avec le port 2222
dropbear -K 0 -I 0 -p 2222

Exécutez dbclient de manière à établir de manière permanente la connexion SSH vers un serveur distant.
ssh -f -N -R 1234:127.0.0.1:2222 root@votreserveur

Pour vous connecter depuis le serveur "de rebond" :
ssh -t 0@localhost -p 1234 "PATH=/bin:/sbin:/usr/bin:/upgflash/apps/bin ; /bin/sh"
Le mot de passe est..... OMG..... : root

Les ports 2222 et 1234 peuvent bien entendu être personnalisés.

C- Utilisation d'une clef SSH pour la connexion au serveur distant afin d'éviter la saisie du mot de passe depuis le routeur.

Générer une clef SSH pour dropbear :
dropbearkey -t rsa -s 2048 -f /etc/dropbear/dropbear_rsa_host_key (vous pouvez utiliser DSA ou ECDSA à votre convenance).

Récupérer la clef publique :
dropbearkey -f /etc/dropbear/dropbear_rsa_host_key -y

La copier dans ~/.ssh/authorized_keys de votre serveur distant (s'assurer qu'elle soit sur une seule ligne).
Ex : ssh-rsa AAAA............................ 0@(none)

Etablir la connexion vers le serveur pour vérifier que cela fonctionne sans mot de passe (adaptez les ports) :
ssh -f -N -i /etc/dropbear/dropbear_rsa_host_key -R 1234:127.0.0.1:22 root@votreserveur

D- Utilisation d'une clef SSH pour la connexion au routeur depuis le serveur distant afin d'éviter la saisie du mot de passe.

Suivez l'étape C pour générer la clef.
Récupérez ensuite la clef publique sur votre serveur de "rebond" et la placer dans /home/.ssh/authorized_keys du routeur (une seule ligne).

Démarrez dropbear serveur avec chargement de sa clef :
dropbear -K 0 -I 0 -r /etc/dropbear/dropbear_rsa_host_key -p 2222

Etablissez la connexion vers le serveur de rebond via la clef :
ssh -f -N -i /etc/dropbear/dropbear_rsa_host_key -R 1234:127.0.0.1:2222 root@votreserveur

Connectez-vous depuis le rebond sur le routeur :
ssh -t 0@localhost -p 1234 "PATH=/usr/bin:/bin:/upgflash/apps/bin ; /bin/sh"

E- Automatisez l'ensemble par script pour éviter la saisie à chaque démarrage.

Pour cela, vous avez un scripts "dropbear.sh" dans /upgflash/scripts/dropbear.sh.
Il vous suffit de mettre dedans les commandes de dessus qui vont bien et elles seront exécutées au démarrage.

F- Interdire la connexion "root" par mot de passe depuis le rebond en raison du mot de passe foireux...
Pour cela, lancez "dropbear" avec en plus le paramètre "-g" ou "-s" qui permettent d'empêcher les connexions par mot de passe.

G - Script de connexion auto depuis le rebond pour éviter la commande compliquée.
Créez un script du nom que vous voulez dans un dossier du PATH (/bin, /sbin, /usr/local/bin...).

Mettez dedans :
#!/bin/sh
ssh -t 0@localhost -p 1234 "PATH=/usr/bin:/bin:/upgflash/apps/bin ; /bin/sh"

En adaptant les ports.
Il ne vous reste à présent plus qu'à appeler le script pour être connecté sur le routeur.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
B593S-12 : MAJ du firmware en S-22

Pour ceux qui sont en version B593S-12, il est possible via une bidouille de passer dans le dernier firmware officiel Huawei destiné au S-22.
Pour se faire il faut :
- Que vous me donniez la version exacte de votre firmware.
- Que je vous donne le firmware modifié.
- Que vous fassiez la MAJ depuis l'interface.
- Que vous fassiez un reset du routeur après l'update.

Je n'ai pas de S-12 donc aucune idée des nouveautés et apports.
Vous vous retrouverez avec le firmware : V200R001B270D10SP00C00 daté de 08/2014.

Un test reste à faire, si quelqu'un veut s'y coller : essayer de câbler le port RJ11 (emplacement disponible sur la carte mère mais pas de connecteur) pour voir si on peut téléphoner directement avec un téléphone connecté, comme avec le S-22.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Mise en oeuvre de Zabbix : installation des scripts, templates et personnalisation.

Pour pouvoir utiliser Zabbix avec toute la personnalisation, vous devez être en version 2.1 ou supérieure.
L'archive "utils" en v21 contient les scripts pour récupérer les valeurs CPU, Mémoire, Réseau...

Par défaut, le template active l'ensemble des items sauf 2 qui sont sans importance.
Attention : la supervision de la consommation LTE n'est pas active non plus car elle ne peut pas être activée automatiquement.

Pour activer le démarrage de Zabbix avec le routeur :
- Connectez-vous en SSH sur le routeur.
- Modifiez le fichier /upgflash/scripts/zabbix.sh et décommentez la ligne de démarrage.
- Démarrez l'agent manuellement : /etc/init.d/zabbix_agentd start ou redémarrez le routeur.

Pour avoir les bons compteurs CPU/Mémoire/Disque :
- Connectez-vous en SSH sur le routeur.
- Réalisez un "crontab -e"
- Ajoutez les 3 entrées suivantes et enregistrez :

* * * * * /upgflash/apps/zabbix/scripts/cpu.sh > /dev/null 2>&1
* * * * * /upgflash/apps/zabbix/scripts/memory.sh > /dev/null 2>&1
* * * * * /upgflash/apps/zabbix/scripts/agentmem.sh > /dev/null 2>&1

Pour activer la supervision de la LTE :
- Importez le template si non fait.
- Créez le host associé.
- Attendez OBLIGATOIREMENT que les interfaces réseaux aient été découvertes (toutes les 900 secondes).
- Modifiez l'item "LTE bandwidth" sur le HOST (pas sur le template !).
- Modifiez la formule par celle-ci : last("net.if.total[hed0]")
- Vérifiez dans "Latest Data" que vous avez récupéré au moins une valeur pour "LTE bandwidth".
- Quand c'est bon, modifiez à nouveau l'item "LTE bandwidth" sur le HOST.
- Remettez la formule d'origine : sum("net.if.total[hed0]",120)+last("sum.hed0")

A partir de là, vous récupérez la consommation LTE automatiquement, de manière cumulative, il n'y a plus rien à changer.
Pour la purge automatique voir ci-dessous.

Pour activer le reset automatique du compteur le premier du mois ou à une date précise (MySQL uniquement).
Je n'ai pas trouvé d'autre moyen que mettre dans la base une valeur à 0 pour la dernière itération de l'item "LTE bandwidth".
Si quelqu'un a une meilleure solution à proposer ça m'intéresse bien sûr.

A noter que ce script n'est pas parfait, loin de là. Lorsque l'on effectue la purge, on perd 2 ou 4 minutes de données (pas dramatique mais bon).

- Récupérez le script "clear-lte-bandwidth.sh".
- Placez-le où vous voulez sur votre serveur Zabbix, pas sur le routeur.
- Sécurisez-le (chmod 600).
- Modifiez le login et le mot de passe de connexion à la base MySQL.
- Attention : si vous n'utilisez pas systemd ou que le nom du service n'est pas "zabbix-server" sur votre distribution vous devez le modifier. Le script est prévu pour Zabbix 3.2 (installation via les .deb) et Debian 8.x (Jessie).
- Ajoutez dans la crontab de votre serveur l'exécution du script pour le jour de votre choix.

Exemple pour RAZ le 10 du mois à minuit :
0 0 10 * * /etc/zabbix/clear-lte-bandwidth.sh > /dev/null 2>&1

Vous pouvez le tester manuellement avant bien entendu en lançant le script "clear-lte-bandwidth.sh" !

Modifier le quota de 4G par défaut à 50 Go
- Dans Zabbix, éditez le template puis les triggers.
- Editez "High LTE bandwidth consumption on {HOST.NAME}".
- Modifiez le "50000000000" par la valeur souhaitée. Pour 100 Go par exemple vous enlevez le "5" et mettez un "10" à la place.
Si vous voulez d'autres options comme l'envoi de mail ou autre, je vous laisse faire (c'est du Zabbix pur :P ).

Modifier le scénario web (par défaut pour 192.168.1.1)
- Dans Zabbix, éditez le template puis le scénario web.
- Modifiez l'adresse IP de "192.168.1.1" à votre IP.

Modifier les intervalles de vérification pour la conso LTE (par défaut à 120 secondes)
Attention : il y a corrélation entre les compteurs "net.if.total[hed0]" et "sum.hed0" (correspondant à LTE Bandwidth).

Si vous voulez modifier le check, il faut impérativement le faire partout sous peine d'avoir des résultats complètement faux.
Dans le template :
- Network discovery : total à changer (item prototypes).
Intervalle : 120

- LTE bandwidth à changer :
Formule : sum("net.if.total[hed0]",120)+last("sum.hed0")
Intervalle : 120
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Renommage du compte "0" en "root" et changement du mot de passe pour SSH via dropbear...

Uniquement pour les versions V2.1 et supérieures !

Comme expliqué ci-dessus dans le tuto SSH, le firmware du B593 n'utilise pas le compte "root" mais "0" (ce qui est la même chose mais le nommage est important) et un mot de passe hyper trivial pour l'accès SSH par Dropbear (à savoir root).

Attention : cela impacte les crontabs. Si vous utilisez "cron" et que vous renommez en autre chose que "root", vous devez créer la crontab associée (crontab -e) et y mettre ce qui est nécessaire (notamment pour Zabbix) !

Remarque : si vous utilisez le serveur SSH embarqué vous n'êtes pas concernés sinon voici la méthodologie :
Dans le script "user.sh" ajoutez :

# Renommage du compte root
/upgflash/apps/bin/sed -e's/^0/root/g' -i /etc/passwd

# Changement du mdp root...
/bin/echo 'root:yourpassword' | /upgflash/apps/bin/chpasswd
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Ajout d'entrées dans la crontab en SSH...

Cela nécessite d'avoir activé le mode "avancé" (via le SSID) et d'avoir installé les "utils"

Depuis Windows, :
- Télécharger putty.exe.
- L'exécuter et saisir l'@ IP du routeur.
- Utiliser le login "admin" (mot de passe à me demander en MP),
- Au prompt "ATP", taper "shell".
- Taper "crontab -e".
- Appuyer sur "G" (majuscule) pour aller à la dernière ligne.
- Appuyer sur "o" (minuscule) pour ajouter une ligne.
- Coller les nouvelles lignes (clic-droit).
- Quitter le mode édition en appuyant sur "Esc".
- Taper ":x" pour sauvegarder.

A noter que :
- Pour annuler, tapez ":q!" au lieu de ":x".
- Pour supprimer une ligne, appuyer sur "Esc" puis "dd" (2 fois la touche d).
- Pour sauvegarder, il faut toujours appuyer sur "Esc" avant de saisir ":x".
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Modification du TTL avec un Raspberry...

Tout est indiqué ici (merci à Maxstars) : dealabs.com/dis…553
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Informations supplémentaires
High-tech & informatique
1687 commentaires
Firmware custom pour le B593-u12.

Attention : ce firmware ne s’applique PAS au modèle B593-s12/s22 et autres.
Il est compatible uniquement avec le B593-u12 et éventuellement le B593-u91.

Attention : ce firmware n’est pas officiel. Vous l’utilisez en connaissance de cause.
Je ne serai pas responsable des mauvaises manipulations que vous pourrez réaliser en mettant à jour ou en personnalisant. Si vous ne savez pas, abstenez-vous !

Ce firmware est basé sur le firmware V100R001C26SP054 pour trois raisons :
- C’est le plus gros en taille (donc possible de mettre plus de choses dedans).
- C’est le plus complet en binaires et pages web.
- Les versions plus récentes (> SP100) utilisent d’autres mécanismes d’accès aux pages et de sécurité qui complexifient les modifications.

La faiblesse des firmwares inférieurs à SP100 était la sécurité (faille telnet, faille web…).
On verra par la suite que c’est corrigé ou contourné dans la version custom.

Interface web :
- Refonte totale du design de l’interface aux couleurs de Dealabs.
- Ajout de l’onglet FTP Download.
- Ajout de l’onglet Remote (serveurs Huawei) avec désactivation par défaut.
- Ajout de l’onglet Notifications.
- Ajout de l’onglet Antennes.

Général :
- Suppression total du serveur telnet.
A noter que le port 23 n’apparaît plus dans la liste des ports filtrés (scan nmap).
A noter également que la faille telnet n’existe donc plus.
- Suppression de la langue DA (complète).
- Suppression des langues FR, PT et PL (incomplètes).
- Suppression du fichier d’aide PDF.
- Serveur SSH actif par défaut.
A noter que l’accès via « ssh admin@192… /bin/sh » n’est plus nécessaire (accès direct).
- Les ports 631 (IPP) et 8081 (Huawei) ouverts en entrée par défaut sont à présent filtrés au niveau du parefeu.
- Modification des serveurs NTP afin d’utiliser fr.pool.ntp.org.
- Faille ping : modification de la page en question.
A noter que cela n’enlève pas la faille mais qu’elle n’est plus là où elle est censée être.
- Désactivation des MAJ automatiques via la GUI.

Linux :
- Création d’un lien /etc/resolv.conf vers un fichier modifiable. Cela permet de modifier les DNS pour le routeur (et non pour les clients !).
- Modification du PATH pour permettre l’accès aux nouveaux binaires et aux nouvelles commandes BusyBox.
- Création des liens pour les nouvelles fonctions BusyBox (cf. plus bas).
- Création d’un shell « ll » pour pouvoir exécuter la commande « ls -l » (alias permanent non possible).
- Mise en place d’un script de démarrage qui vous permet de faire démarrer vos programmes ou vos scripts de manière automatique.
A noter que des modèles sont prédéfinis pour tc, iptables…
A noter également qu’il existe un garde-fou et que si vous vous ratez, en faisant un reset du routeur vous bypassez ces scripts. Ceci étant : testez avant !

Programmes :
A noter que le bon fonctionnement de tous ces binaires reste à valider (je compte sur vous ).

- Compilation des ipsec-tools (racoon + setkey) pour utilisation d’un VPN IPsec : obsolète en V2.x et >.
- Compilation du module crypto « AES » pour permettre son utilisation avec Racoon notamment.
- Compilation de Zabbix Agentd pour supervision du routeur.
- Compilation de Inadyn pour utilisation du DynDNS.
- Compilation de MSMTP pour l’envoi de mail.
- Compilation de BusyBox pour obtenir beaucoup de nouvelles commandes dont notamment le WakeOnLAN (ether-wake) et surtout la crontab pour automatiser !
- Compilation de strace pour suivre ce qu’il se passe en cas de problème sur un binaire.
- Intégration de « ldd » pour connaître les librairies dépendantes.
- Déplacement du binaire iperf.



Passons aux choses sérieuses…

Pour l’installation il vous faut :
- B593_upgrade.exe
- WinRAR adapté à votre OS / Architecture (32 / 64 bits),
- Le firmware V100R001CXXSPXXX-VXX.tar.bz2 modifié avec le modem.

Cela se passe par ici :
Version initiale : ici
Version 2 : ici
Version 2.1 : ici
Version 3 "Black" : ici
Version 3 "White" : ici

Version 4 "Black" : ici
Version 4 "White" : ici
Version 4.1 "Black" (MAJ depuis V4) : ici
Version 4.1 "White" (MAJ depuis V4) : ici

N'oubliez pas, il vous faut WinRAR pour l'installation et TFTPD si vous voulez la partie personnalisation.

Téléchargement :
- Connectez votre PC à un port LAN du routeur.
- Définissez une adresse IP fixe en 192.168.1.x (sauf .1 utilisée par le routeur).
- Lancez B593_upgrade.exe, sélectionnez la carte réseau en question et en dessous « Modem+Router » (choisissez le fichier .tar.bz2). Ne pas cliquer sur start pour l’instant.
- Retirez la carte SIM de votre routeur.
- Eteignez-le et rallumez-le via le bouton.
- Dès que vous avez l’icône rose qui s’allume (à gauche des barres de signal) cliquez sur start dans B593_upgrade.
- L’icône doit passer au jaune et les barres de signal vont se remplir petit à petit (comptez 10-15 minutes).
- Dès que vous avez TOUTES les barres de signal, appuyez sur stop et éteignez le routeur.

Allumez de nouveau le routeur, toujours sans carte SIM.
Dès qu’il a fini de démarrer (icône rose), exécutez un reset en appuyant pendant 5 secondes sur le bouton.

Remarque : dès que toutes les LEDs s’allument, vous pouvez relâcher.
Le routeur va redémarrer une seconde fois.

A présent, vous pouvez accéder à l’interface web : 192.168.1.1
Le mot de passe est normalement indiqué au dos de l’appareil, en deuxième ligne (sous speedport.ip).

Je vous invite à le changer !

A noter : les prochaines MAJ (s’il y en a) devraient pouvoir se faire via l’interface web.

En l’état, tous les éléments de l’interface web sont normalement fonctionnels.
Si vous n’avez pas besoin d’autre chose (Zabbix, Racoon, DynDNS, scripts personnalisés…) il n’est pas obligatoire de suivre les étapes suivantes.


Transfert des binaires et scripts
Comme on n’a pas la place de tout mettre dans le firmware, on va stocker une partie des binaires et scripts dans la mémoire flash (/upgflash).

Pour cela, il nous faut :
- L’archive tar avec scripts et binaires (b593-utils.tar).
- Un serveur TFTP pour Windows. Je vous conseille TFTPD32 : tftpd32.jounin.net/tft…tml
- Putty pour se connecter en SSH.


Exécution de TFTPD :
- Après lancement, choisir le répertoire où vous avez placé l’archive tar.
- Choisissez également l’adresse IP sur laquelle est attachée le routeur.


Connexion SSH :
- Via putty, saisissez « 192.168.1.1 » et protocole SSH.
En ligne de commande sinon : putty -ssh admin@192.168.1.1.

Le compte à utiliser est : admin
Le mot de passe est à me demander, pour éviter qu’il soit diffusé partout.
Si vous ne pouvez pas envoyer de MP, manifestez-vous sur le forum.
Merci de jouer le jeu SVP !

Une fois connecté, vous avez une mire « ATP ».
Saisissez la commande « shell » pour obtenir un terminal BusyBox.

- Rendez vous dans upgflash : cd /upgflash.
- Vérifiez que vous êtes au bon endroit : pwd
Merci de ne rien supprimer sous peine de ne plus pouvoir mettre à jour votre routeur !
- Récupération de l’archive tar : tftp -g -r xxx.tar 192.168.1.x
A noter que « xxx.tar » est à adapter par le nom de votre fichier.
A noter également que « 192.168.1.x » est à remplacer par l’IP du PC disposant du serveur TFTP.

- Vérifiez que vous avez bien l’archive : ls
- Vérifiez que vous arrivez à lister le contenu : tar tvf xxx.tar

- Si oui, procéder à l’extraction : tar xf xxx.tar
- Vérifier la présence des dossiers « scripts » et « apps » : ls
- Supprimer l’archive si souhaité : rm xxx.tar


Activation du mode « custom »
Pour pouvoir profiter des scripts et logiciels, il vous faut activer le mode custom.
Ce mode n’existe que pour éviter qu’en cas de mauvaise manipulation vous ne puissiez plus utiliser votre routeur.

Pour l’activer, il faut :
- Se rendre dans l’interface web,
- Choisir General Settings,
- Choisir WLAN Multi-SSID,
- Editer le SSID index 4,
- Définir le SSID à « ENABLEINITD » (il n’est pas utile d’activer le réseau, le nom suffit).
- Cliquer sur submit.

Après redémarrage du module wifi, le mode custom sera activé.
Vous pouvez à présent redémarrer le routeur.


Personnalisation
Le mode « custom » a été pensé de manière à ce que vous puissiez réaliser ce que vous voulez.

Pour cela, vous pouvez vous connecter en SSH et vous rendre dans /upgflash.
Vous trouvez 2 dossiers :
- scripts : qui contient les différents scripts applicatifs à écrire.
A noter que le dossier etc contient le script général « rc.local » ainsi que le script « cron.sh ».
Par défaut, Zabbix et le démon Cron sont activés systématiquement. Tous les autres scripts sont aussi exécutés mais ils sont vides (donc ne font rien).

- apps : qui contient les binaires (dans bin) et les fichiers de conf à écrire dans chaque dossier.

Existent par défaut :
- cron : contient la crontab root.
- msmtp : vide.
- inadyn : vide.
- dns : contient le resolv.conf du routeur, avec les DNS Google. (obsolète en V2.x).
- racoon : vide. (obsolète en V2.x).
- dropbear : vide (n'existe pas en V1.x).
- zabbix : contient le fichier de configuration de l’agent.
A noter que pour relancer l’agent, vous pouvez utiliser « /etc/init.d/zabbix_agentd stop » puis « start ».

Pour les scripts :
- user.sh : vous définissez ici ce que vous voulez.
- dropbear.sh : pour créer la commande de lancement du serveur SSH Dropbear avec sa configuration. (uniquement V2.x).
- tc.sh : pour créer vos règles de QoS (via la commande « tc »).
- racoon.sh : pour créer la commande de lancement de racoon avec sa configuration. (Obsolète en V2)
- msmtp.sh : pour créer la commande de lancement de msmtp avec sa configuration.
- iptables.sh : pour créer vos règles de parefeu et les appliquer au démarrage.
- inadyn.sh : pour créer la commande de lancement de inadyn avec sa configuration.
- zabbix.sh : pour créer la commande de lancement de l'agent Zabbix.

Je pense vous avoir dit le principal. Je vous laisse vous amuser avec tout ça.
S’il y a des outils que vous aimeriez avoir et qui sont manquants, je peux essayer de les compiler, sans certitude toutefois que cela fonctionne.

Bonne utilisation !

15826212.jpg

15826212.jpg

15826212.jpg

15826212.jpg
White :
15826212-Dsylm.jpg
Black :
15826212-dKAah.jpg
Édité par "Modprobe" 13 mai 2018
Cool :-)
Un véritable acharnement que tu as et c'est bien sympa !
Prems !

.. ah bah non. Tant pis, je suis ca m'intéresse.
Ça vaut quoi par rapport au TP-LINK Archer MR200 ?
60 euros de moins ?
Salut, le firmware Custom sera compatible S-12 ?
Non, que U-12.
Les S-12 n'utilisent pas le même hardware et sont très difficilement modifiables.

Par contre j'aurai peut-être une "surprise" pour les S-12.

Edit : tu peux me dire quelle est la version de ton firmware ?
Drap. En cas de surprise
T'as un S12 aussi ?
Tu peux me donner la version de ton firmware ?

Même question pour ceux qui ont des S12.
Merci
Salut tout le monde.

J'ai mis à jour le deuxième post.
Je vous invite à le lire très attentivement.

Les outils nécessaires vont être uploadés d'ici demain je pense... Dans tous les cas ce sera toujours bon de bien prendre connaissance de tout avant :).

Rappel : ça ne concerne que les B593-U12
bin super mais j'ai un s12
j'attendrai donc la surprise
Bonjour,

Merci pour ce firmware.

Est-ce qu'en passant, tu aurais vu un moyen de désactiver les LED du routeur ?

Note : dans le répertoire bin, il y a un utilitaire panel_light qui a l'air de s'occuper des led. Peut-être une piste...


Merci
juste pour suivre ,merci
un sacré boulot que tu as fait.......j'avais reçu un B593-U12 du Koweit avec Aïn
Je l'ai passé sur le firmware polonais,ça marche pas de souci:
je l'utilise avec une sim Bouygues,en général je surf à 10 mb/s

question: ai-je intérêt à le passer sur ton firmware pour gagner en rapidité, simplicité de réglages...?
Merci de ton avis
Salut tout le monde.

J'ai ajouté le lien dans le 2ème post.

@Titi007 : pour les S-12, il me faut impérativement vos numéros de firmware sinon c'est sûr, il ne se passera rien :).

@Jean-Pie : il va falloir creuser mais si ce n'est qu'un processus qui gère ça, il sera très facile de le désactiver et de l'automatiser... Tu pourras même le faire sans moi ;).

@Jardres : mon firmware ne te fera sans doute pas gagner en performance, puisqu'il s'appuie sur un firmware d'origine.
C'est plus le côté "personnalisation" qui est intéressant. Tu peux toujours essayer et revenir en arrière si ça ne te convient pas.
@Modprobe, je regarde en fin de journée et je te le fourni
ModProbe, merci de ta réponse.

Pour faire des essais sans installer ton firmware, est-ce que je peux facilement modifier le fichier bz2 d'un firmware existant (modification d'un script, suppression d'un fichier...), et l'installer sur le routeur, où est-ce que le fichier est signé ? En gros, je voudrais bien essayer de supprimer simplement le fichier panel_light pour voir ce qu'il se passe.


Merci
Dans le BZ2 tu as le firmware que tu dois modifier avec des outils adéquats.

J'ai essayé de tuer le processus panel_light mais ça ne change rien.
Je vais regarder si je peux te trouver quelque chose ;).

Edit : j'ai regardé un peu le binaire panel_light et visiblement il y a des choses liées au modem.
Je ne sais pas s'il est judicieux de le supprimer... pas sûr.
Merci beaucoup,

Dommage, le process panel_light a l'air d'être référencé dans plusieurs binaires. J'espérais qu'en le tuant, l'état des lumières arrêterait de changer, et qu'en ne le lançant pas du tout, elles restent éteintes.

Est-ce que tu aurais un lien vers ces fameux outils "adéquats" de modification, stp ?

PS : J'ai aussi examiné le binaires. Il y a en effet des commandes liées au modem, apparemment pour désactiver un clignotement indiquant un "heart beat". Mais j'ai quand même l'impression que ce process ne fait que gérer les lumières au final.
Ce serait un peu long à expliquer et il faut un tas d'outil sur un Linux :).

Bon... je vais gâcher ton plaisir mais si tu tues le process panel_light.... l'interface web ne répond plus.
Donc l'enlever, c'est risquer de ne plus avoir d'interface web et même de ne plus pouvoir démarrer.

Ce routeur est très bizarrement fait et il y a des dépendances partout dans les binaires.
La moindre modif peut faire mal...

J'ai commencé à regarder dans /proc si on peut changer les LED mais visiblement non...
Il ne te reste plus que le scotch d'électricien.
Merci pour que le temps que tu y as consacré.

Il faudrait créer un stub de panel_light qui ne fait rien, et pour cela, connaitre son interface. C'est une autre paire de manches ;-)

Je vais essayer de faire des essais une fois ton firmware installé (à moins que je ne trouve un autre endroit pour mettre le routeur, mais mon signal est tellement faible que le moindre changement me fait perdre beaucoup en débit).

Le scotch d'électricien, ça ne marche pas bien, ça rayonne par les grilles d'aération (ou alors, il faut ouvrir le routeur et directement entourer les leds de scotch...).

Si jamais le routeur ne démarre plus suite à mes essais, est-ce que je peux reflasher le firmware avec les outils que tu as fournis ?
A mon avis non... On ne peut flasher qu'après le boot du routeur.
Il existe un mode "recovery" avec un firmware "Small" qui permet de reflasher par l'interface web mais a priori ça fonctionne pas très bien de ce que j'ai lu.

Après c'est utilisation d'un câble JTAG et autre et flash par RS232 mais c'est plus compliqué...

A ta place je serais prudent :).
Ok, je vais éviter de trop jouer alors.

Ou est-ce que tu as trouvé toutes ces infos sur le routeur ? J'ai fait beaucoup de recherches, et je n'ai pas trouvé grand chose (à part un blog de 'hacking B593', un thread anglais de plus de 100 pages, et quelques informations mineures sur des sites allemands avec google translate).
J'ai trouvé a peu près les mêmes choses. C'est après en décortiquant le firmware que j'en ai appris un peu plus... Et surtout que c'était une horreur et que Huawei aurait pu faire un effort sur les sources livrées... Notamment sur le kernel.
Est-ce que je peux te demander un dernier service ?
Est-ce que tu pourrais :
- tuer le process panel_light
- lancer lteat
- envoyer la commande "AT^HEARTBT=0".

Est-ce que ça a un effet sur les led ? (arrêter le clignotement par exemple).

Merci
Passe mon firmware et essaye
C'est ce que je vais faire, désolé ;-) (un petit coup de flemme).
Une question qui n'a rien à voir, mais puisque tu as l'air de bien t'y connaitre, j'en profite.

Il y a un truc qui m'intringue avec le firmware par défaut.
J'ai modifié l'adresse du routeur de 192.168.1.1 en 192.168.1.4, et j'ai désactivé le DHCP.
Lorsque j'essaie d'accéder à la page web en tapant l'adresse, il y a une redirection vers speedport.ip, mais qui échoue, puisque aucun DNS n'est déclaré. Je m'en sors en déclarant speedport.ip dans mon fichier hosts, mais du coup, je ne peux y accéder que sur mon PC, pas depuis mon mobile.
C'est quand même très bête, ce truc, j'accède bien au routeur puisque la redirection est activée, mais du coup, je ne peux pas y accéder (sans modifier du /etc/hosts).

Ce n'est pas bien grave, mais je suis curieux de savoir à quel endroit se trouve cette redirection. Est-ce que tu le saurais ?

J'ai l'impression que dans les firmware Huawei, et dans le tien en particulier, cette redirection n'a pas lieu, est-ce que je me trompe ?

Merci,
Modprobe

T'as un S12 aussi ? Tu peux me donner la version de ton firmware ?Même … T'as un S12 aussi ? Tu peux me donner la version de ton firmware ?Même question pour ceux qui ont des S12.Merci


Salut Modprobe et chapeau bas pour l travail fourni
Moi j'ai un S12 avec la version frimaware V200R001B180D35SP03C748. Y a t-il un firmware modifié et qui peut rapporter des améliorations notable ?

Merci
Modprobe

T'as un S12 aussi ? Tu peux me donner la version de ton firmware ?Même … T'as un S12 aussi ? Tu peux me donner la version de ton firmware ?Même question pour ceux qui ont des S12.Merci


Alors... V200R001B180D35SP00C748

J'espère avoir tout bien tapé...
Jean-Pie : tu as une variable "MACRO_THOME_DOMAIN" dans les pages index.asp, domainError.asp et pushinfo.asp.
Je pense que c'est ça que tu dois modifier.

Salut Yassin.
Pour les S-12, ce que je peux peut-être faire, c'est proposer de passer en version V200R001B270D10SP03C182 qui est normalement destinée aux versions S-22.

Ca permet de passer d'une version majeure B180 à B270 (il existe un B236 en intermédiaire).
Je ne sais par contre absolument pas ce qu'il apporte, peut-être à fouiller chez Huawei.

Il y a le V200R001B270D10SP00C00 qui est le dernier fourni par Huawei (Global) mais il est un peu plus gros que les autres alors je ne sais pas trop s'il passerait ou pas.

Bien noter que :
- Aujourd'hui je n'ai aucun moyen de tester. Si ça se passe mal il y a un risque de tuer le routeur.
- La MAJ nécessite de connaître votre version actuelle car sinon le firmware du S-22 ne s'installera pas c'est sûr.
- Si vous voulez revenir en arrière, ce restera normalement possible (à condition d'avoir le firmware d'origine bien sûr) en faisant la manipulation inverse (mettre le nouvel ID pour l'ancien firmware).

On est loin de ce qu'on a pu faire avec le U-12 mais si quelqu'un veut tester, je peux fournir le firmware modifié.
Je proposerai le V200R001B270D10SP03C182 (fourni par l'opérateur DNA) qui fait une taille proche du B180 des speedport pour vérifier que ça fonctionne.
Salut,

+1 pour l'investissement !

dit moi avec ton firmware on peut modifier le tll en direct ? (pour bouygues illimité le week)
Est-ce que ceci répond à ta question ?

cat /proc/sys/net/ipv4/ip_default_ttl
64
# echo 65 > /proc/sys/net/ipv4/ip_default_ttl
# cat /proc/sys/net/ipv4/ip_default_ttl
65

Un petit ajout dans le script "user.sh" que j'ai créé à cet effet... et c'est appliqué au démarrage :).
Et comment sait-on si on a un S12 ou un U12 ??
C'est écrit derrière le routeur.
B593....
Merci j'irai vérifier dans le grenier alors
J'ai "googolé" ma version de FW et à priori j'ai bien un U12.
Si ton firmware commence par V100R001 c'est un U-12.
Les S commencent par V200R001 car hardware différent.
merci pour le boulot
Modprobe

Jean-Pie : tu as une variable "MACRO_THOME_DOMAIN" dans les pages … Jean-Pie : tu as une variable "MACRO_THOME_DOMAIN" dans les pages index.asp, domainError.asp et pushinfo.asp.Je pense que c'est ça que tu dois modifier.Salut Yassin.Pour les S-12, ce que je peux peut-être faire, c'est proposer de passer en version V200R001B270D10SP03C182 qui est normalement destinée aux versions S-22.Ca permet de passer d'une version majeure B180 à B270 (il existe un B236 en intermédiaire).Je ne sais par contre absolument pas ce qu'il apporte, peut-être à fouiller chez Huawei.Il y a le V200R001B270D10SP00C00 qui est le dernier fourni par Huawei (Global) mais il est un peu plus gros que les autres alors je ne sais pas trop s'il passerait ou pas.Bien noter que : - Aujourd'hui je n'ai aucun moyen de tester. Si ça se passe mal il y a un risque de tuer le routeur.- La MAJ nécessite de connaître votre version actuelle car sinon le firmware du S-22 ne s'installera pas c'est sûr.- Si vous voulez revenir en arrière, ce restera normalement possible (à condition d'avoir le firmware d'origine bien sûr) en faisant la manipulation inverse (mettre le nouvel ID pour l'ancien firmware).On est loin de ce qu'on a pu faire avec le U-12 mais si quelqu'un veut tester, je peux fournir le firmware modifié.Je proposerai le V200R001B270D10SP03C182 (fourni par l'opérateur DNA) qui fait une taille proche du B180 des speedport pour vérifier que ça fonctionne.



Salut Modprobe.
Je suis bien tenté d'essayer sur mon S12. Si tu peux m'envoyer la bonne version.

Merci
Laisser un commentaire
Avatar
@
    Texte

    Discussions