Vim 03 – Diviser et redimensionner des fenêtres

Vim sima78, juin 2020
Vim sima78

Diviser « Splitter » et redimensionner des fenêtres dans l’éditeur Vim.

Lorsque vous travaillez avec un éditeur de texte il est souvent utile de pouvoir diviser en plusieurs fenêtres.

Vim permet de diviser facilement la fenêtre, verticalement et/ou horizontalement. Il est ensuite possible de redimensionner chacune des fenêtres pour les adapter à nos besoins.

L’intérêt d’avoir plusieurs fenêtres (deux, trois, quatre, etc.) est de permettre de voir  d’autres parties du fichier en cours d’édition, d’autres fichiers, l’aide de Vim, etc.

Voyons comment diviser une fenêtre sur l’éditeur Vim

Horizontalement :

:sp

Verticalement :

:vsp

Vous pouvez également utiliser les deux commandes simultanément en fonction des besoins, voir ci-dessous.
Vous déplacer d’une fenêtre à l’autre « Ctrl »+ »w »+ »flèche » ou comme vu dans VimTutor pour les déplacements (h, j, k, l)

Dès que vous faites « Ctrl+w » vous devez voir en bas à droite de votre console « ^w »
C’est-à-dire que nous appuyons sur la touche Ctrl et la touche w et nous pouvons relâcher, puis sur la touche dont nous avons besoin.

^w(+)Flèche haut : Passer à la fenêtre supérieure
^w(+)Flèche bas : Passer à la fenêtre inférieure
^w(+)Flèche droite : Passer à la fenêtre de droite (au même niveau !)
^w(+)Flèche gauche : Passer à la fenêtre de gauche (au même niveau !)

ou

^w(+)h : Placer le curseur à la fenêtre de gauche
^w(+)j : Placer le curseur à la fenêtre inférieure
^w(+)k : Placer le curseur à la fenêtre supérieure
^w(+)l : Placer le curseur à la fenêtre de droite

Je dois vous dire que ^w(+)lettre ne fonctionne pas sur mon pc? J’utilise les flèches, alors qu’en mode normal les lettres de déplacement fonctionnent aussi bien que les flèches.

Il est aussi possible de redimensionner les fenêtres à nos besoins.

^w(+)+ : pour agrandir la fenêtre
^w(+)- : pour réduire la taille de la fenêtre

Si nous voulons augmenter ou diminuer la fenêtre de 10 lignes

^w(+)10+ : pour agrandir la fenêtre de 10 lignes

Réduire de 5 lignes

^w(+)5- : pour réduire la fenêtre de 5 lignes

Pour agrandir ou réduire une fenêtre divisée verticalement

^w(+)>
^w(+)<

De même, si nous souhaitons agrandir ou réduire d’un certain nombre de colonnes

^w(+)10>
^w(+)10<

Pour dimensionner une fenêtre à la taille maximale autorisée

^w(+)| : pour la division verticale
^w(+)_ : pour la division horizontale

Enfin, si nous souhaitons une répartition égale des espaces

^w(+)=
vim-03 Sima78, juin 2020
vim-03 Sima78

Rajout suite au commentaire:

Bien entendu, pour fermer les fenêtres il suffit de se positionner dessus et de taper (en mode normal)

:q

Fin de rajout

Fin de ce billet sur Vim et la division et la dimension des fenêtres.

Pour retrouver les billets concernant la série Vim:
https://sima78.chispa.fr/sima78/index.php?tag/Vim

VIM 02 – Afficher les numéros de ligne dans l’éditeur

Vim sima78, juin 2020
Vim sima78

Afficher les numéros de ligne dans l’éditeur Vim

Deuxième billet de la série Vim.

Il arrive souvent lors d’un bug que le message d’erreur vous renvoi vers un numéro de ligne d’un fichier, ou un tutoriel vous suggère de modifier tel mot par tel autre à la ligne n°x.

L’éditeur Vim n’affiche pas par défaut les numéros de ligne d’un fichier. Voyons comment les activer et autres astuces.

Il faut dire que Vim pourrait être un peu plus « convivial ». Ce qui manque dès le démarrage, c’est que les numéros de ligne d’un fichier ne soient pas affichés.

Les activer est une chose très simple, comme nous le verrons. Mais nous en apprendrons aussi davantage sur ces informations pratiques offertes par Vim et sur d’autres façons alternatives d’afficher les numéros de ligne dans Vim.

Pour que l’éditeur Vim puisse afficher les numéros de ligne d’un fichier, il doit être configuré, car par défaut il n’est pas activé. Mais Vim a plusieurs options pour cette fonctionnalité.

PS: Si vous avez suivi le tutoriel VimTutor, vous devriez savoir que pour activer la « zone commande » (mode normal)vous devez  appuyer sur la touche « Echap » ou « Esc ». Par défaut, lorsque vous ouvrez vim, il s’ouvre en mode « normal », si vous souhaitez modifier du texte il faut passer en mode « Insertion » en tapant :i (il y a d’autre touches mode insertion…

Rajout du 22/06/2020 suite à une question dans les commentaires

Ouvrir un fichier à une ligne bien précise:

Vous souhaitez ouvrir le fichier toto.txt à la ligne 127. La commande est :

vim +[numéro-de-ligne] nom-du-fichier dans notre exemple:

vim +127 toto.txt

Fin du rajout.

L’une des commandes suivantes peut être exécutée pour afficher les numéros de ligne :

:set number
:set nu

Si nous voulons les désactiver, nous pouvons exécuter l’une des commandes suivantes :

:set nonumber
:set nonu

Si nous voulons passer d’un mode à l’autre, nous pouvons exécuter l’une des commandes suivantes :

:set number!
:set nu!

Ce qui signifie que si vous tapez la commande « :set nu! » une première fois vous aurez la numérotation, si vous retapez « :set nu! », annule la numérotation.

Vous pouvez aussi aller à une ligne spécifique. Par exemple, pour aller à la ligne 17 de votre document, étant en mode normal, nous exécutons la commande : (cela fonctionne même si les numéros de ligne ne sont pas affichés.)

:17

Afficher les numéros de ligne dans Vim de manière relative

Avec cette option, chaque numéro de ligne est numéroté non pas à partir du début du texte de manière immuable, mais à partir de la position du curseur, qui sera marquée comme la position 0.

Bien entendu, comme celui-ci change de position au fur et à mesure que nous avançons dans le document, ces chiffres relatifs changeront également.

Pour activer cette option, nous pouvons le faire en exécutant l’une des commandes suivantes :

:set relativenumber
:set rnu

Pour désactiver :

:set norelativenumber
:set nornu

Heu, juste une précision, les commandes qui sont données par deux sont similaires, ce qui signifie que vous pouvez activer avec « :set relativenumber » et désactiver avec « :set nornu » et inversement.

Pour alterner entre une option et une autre, nous pouvons le faire au moyen de n’importe laquelle de ces commandes :

:set relativenumber!
:set rnu!

Si nous voulons faire un saut de 5 lignes à partir de la position du curseur, nous pouvons le faire avec la commande :

5k

Afficher les numéros de ligne dans Vim de manière « hybride »

Depuis la version 7.4 de Vim, l’activation des deux options « number » et « relativenumber » produit un mode de numérotation de ligne hybride.

Il affiche tous les numéros de ligne de manière relative, à l’exception de la ligne où se trouve le curseur, qui affichera le numéro de ligne absolu, au lieu du numéro 0 qu’elle affichait en mode relatif.

Pour activer ce mode de numérotation des lignes, nous pouvons le faire avec n’importe laquelle de ces commandes :

:set number relativenumber
:set nu rnu

Ce qui signifie que vous pouvez également le faire en deux fois… vous avez besoin de la numérotation vous faites « :set nu », puis vous avez besoin de la numérotation relative sans perdre votre numéro de ligne, tapez « :set rnu »… Vous souhaitez revenir à la numérotation basique, tapez « :set nornu »…

La largeur de la colonne où sont indiqués les numéros de ligne est configurable. Vous pouvez régler la largeur à l’aide de n’importe laquelle des commandes :

:set numberwidth=4
:set nuw=4

Fin de ce billet sur Vim et la numérotation.

Pour retrouver les billets concernant la série Vim:
https://sima78.chispa.fr/sima78/index.php?tag/Vim

VIM 01 – Entrer et sortir de Vim et Vimtutor

Vim sima78, juin 2020Mon premier article d’une série sur Vim. Beaucoup de choses ont déjà été publiés sur le sujet, j’en suis conscient, j’espère faire découvrir Vim d’une façon différente et c’est surtout un prétexte pour m’y replonger, me redonner le reflex Vim et certainement me perfectionner.

Ce premier billet sur le sujet est très basique, le but est de savoir entrer et sortir de vim d’apprendre le minimum syndical au niveau des commandes pour éviter de revenir sur certaines commandes dans les articles qui suivront.

Je ne compte pas parler des versions graphiques, ni comment installer Vim car il me semble que cela l’est par défaut sur toutes les distributions linux (je n’ai pas souvenir d’avoir fait un jour « apt-get [ou apt] install vim », mais bon.)[voir les commentaires en fin de billet]. Je ne rentrerai pas dans la bataille Vim contre Emacs, ni dans les comparaisons avec d’autres éditeurs de textes que j’utilise régulièrement « Gedit« , « Nano » qui ont aussi toute leur utilité.

Là c’est simple, ouvrez une console et tapez « vim » :

$ vim

vim 01 01sima78, juin 2020

Comment sortir de l’éditeur Vim ?

Vous êtes coincé dans l’éditeur de Vim et vous ne savez pas comment en sortir ? Vous n’êtes pas le seul à qui cela est arrivé !

Pourtant c’est écrit à l’ouverture de vim.

Mais cela arrive au débutant, surtout si pour une raison quelconque, un fichier a été ouvert dans l’éditeur Vim (que vous découvrez) et que vous souhaitez quitter mais ne trouvez pas comment le faire, nous allons maintenant voir la solution. Mais ne soyez pas frustré, vous n’êtes pas le premier.

Une question banale ?

Le site web Stack Overflow est l’une des communautés de développeurs importantes et réputées qui cherchent des solutions, de l’aide sur la façon de résoudre les différents problèmes rencontrés par les programmeurs de nombreux domaines et langages.
Et pourtant il y a la question d’un utilisateur qui demande à la communauté comment sortir de l’éditeur de Vim ? Alors une question plutôt banale… ou pas tant que ça ! il suffit de lire le fil pour voir l’importance de la question.
Pendant des années, cette question a été une blague récurrente sur certains réseaux sociaux.

Alors que personne ne se moque de ceux qui pose la question et ne retardons pas plus longtemps la solution. Voici la réponse à la question « comment sortir de l’éditeur Vim? » :

  • Appuyez sur la touche Echap ou Esc. Le curseur va se placer en bas (la zone de commande)
  • Appuyez sur la séquence de touches :q
  • Vous pouvez également appuyer sur :q! pour quitter l’éditeur sans enregistrer les modifications
  • Appuyez sur la touche Entrée

Résumé des commandes. D’abord, nous appuyons sur Echap ou Esc pour nous placer dans le tampon inférieur en mode normal, et :

  • : q → quitte le fichier, si nous n’avons aucune modification sans l’enregistrer, il suffit de quitter.
  • : q! → quitte le fichier en supprimant les modifications non enregistrées.
  • : w → enregistre les modifications apportées au fichier, mais ne quitte pas Vim pour continuer à modifier le fichier.
  • : wq → enregistrer les modifications et quitter Vim.
  • : x → identique à la précédente.

Bien, vous savez entrer et sortir de l’éditeur Vim. Bon, finalement rien de compliqué jusque-là, alors passons à la suite, c’est encore plus simple.

VimTutor

Une application pour apprendre pas à pas les premières commandes sur Vim, avec cela vous allez vous familiariser avec Vim.
Bah, pourquoi tu n’as pas commencé par ça Sima78 ?
Commencer par quelques difficultés lorsque l’on découvre une application (bon, ce n’était pas non plus l’enfer…) et que l’on passe soudainement à quelque chose de plus ludique, celui qui n’a pas décroché va se dire « bah, moi aussi je peux utiliser Vim »… Du moins j’espère que ce sera la réaction du débutant.

Donc Vimtutor pour apprendre pas à pas, il faut commencer par l’installer (sur Debian et dérivées) :

# apt install vimtutor

ou

$ sudo apt install vimtutor

Puis on lance Vimtutor

$ vimtutor

Le résultat :

vim 01 03, juin 2020

Suivez le tuto pendant 25, 30 minutes. Recommencez jusqu’à bien maîtriser ces commandes de bases, vous aurez l’essentiel pour commencer à utiliser basiquement Vim et surtout pour aller plus loin.

Rasage de qualité avec des produits durables

rasage intro sima78, mai 2020Dans ce billet je vais vous parler rasage, des produits de qualité et durables en espérant ne pas être barbantWouah, ça commence… blague à deux balles.

J’en vois déjà certains:
Bah Sima, qu’est-ce que tu nous fais? Quel rapport avec le Libre, l’Open Source?…

Le rapport est basé sur le durable (car l’Open Source et le Libre sont ancrés aussi sur le durable)… Et donc, le « non gaspillage »… Le lien, ici, c’est la durée à moindre coût (mon serveur est un pc d’une dizaine d’années, mon pc familiale d’une quinzaine d’années, le premier est sous Debian, le derniers sur Debian également mais a vu passer de nombreuses distributions sur son système)… Et cela dure, pas de gaspillage, pas de remplacement, pas besoin d’être au soi-disant « In » technologique coûteux du dernier pc.

Revenons à notre sujet, le rasage, mais avant un petit point concernant la pub.

Je suis contre la publicité agressive par écran interposé, pop-up, panneaux extérieurs, abris de bus, dans nos boites aux lettres… Voire aussi les présentations intéressées, il y en a plein youtube et sur les sites et blogs. Vous savez, le mec ou la nana qui vous vente les mérites d’un produit qu’en réalité on lui a offert ou contre rétribution…

Je vais faire un peu de pub totalement désintéressé, c’est plus une prétexte pour parler et revoir nos comportements, s’orienter vers un usage durable, de qualité, et au final moins coûteux que le jetables que nous impose toutes les pubs agressives dans cette société de consommation.

L’axe: le rasage (Je parle ici de la barbe)
Le rasage corporel est un sujet que je ne traite pas ici, pourtant il y a aussi matière (une marque de rasoir vent un bleu pour les hommes et un rose pour les femmes, le rose est plus cher?). Contrairement à l’idée reçue le rasage corporel ne concerne pas que les femmes, certains hommes aussi le pratique soit pas esthétisme, soit pour le sport… Et puis on rentrerai dans le débat « vaut-il mieux s’épiler, ou se raser? ». Je ne maîtrise pas le sujet. Donc…

Le rasage (de la barbe)
Chez les industriels:
Lors des achat dans les magasins que nous propose t-on? Pour les rasoirs, soit du jetable « à pas cher » (vous remarquerez les guillemets), soit des lames à un prix exorbitant et dont la durée est courte (les simple, double, triple, quadruple lames…). Pour les savons il en va de même, soit en aérosol, pour ceux qui utilise encore le blaireau, les tubes de qualité moindre et pas très naturel.
Bref, une consommation de mauvaise qualité, très polluante et pas si économique que cela, même en se basant sur les produits les moins chers. Il suffit de comparer dans la durée et non pas sur l’achat impulsif.
J’en avais marre de ce gaspillage, puis un jour, mes enfants m’ont offert un rasoir de sécurité.
Bon, ok, « de sécurité », il n’y a que le nom, on peut se couper avec… C’est un rasoir!

Le rasoir:
Il s’agit d’un Merkur Progress 500, il existe d’autres modèles mais aussi d’autres marques équivalentes et c’est vrai qu’il faut mettre le prix, c’est un investissement mais cela dure toute une vie.

Les lames:
Les lames sont beaucoup moins chères, durent plusieurs rasages et même dans les plus chères, cela reste très très raisonnables. J’ai testé les « Gillette », « Feather », « Astra », il en existe plein d’autres, chacun peut trouver la lame qui lui convient. Personnellement, les trois que j’ai testé me conviennent… Et lorsque l’on compare les prix avec les double, triple, etc lames vendu par 5 ou 10 et qui coûtent beaucoup plus chères, de plus la boite est en plastique et toutes les lames contiennent du plastique, il n’y a pas photo. Pour les lames à double tranchants pour les rasoirs de sécurité reste un progrès à faire pour certains fabricants dont le contenant est en plastique, mais il y en a tout de même beaucoup moins. Les lames à double tranchants pour rasoirs de sécurité sont donc moins polluantes et beaucoup plus économiques.

Le savon de rasage:
Vu l’économie que je fais le long de l’année sur les lames de rasage je peux me permettre de me faire plaisir avec un savon de qualité, artisanal, sans colorant, sans conservateur (le 98gr me dure 1 an, je me rase tous les trois/quatre jours, je pourrai prendre le 200gr je resterai encore largement gagnant) et au parfum que j’aime… J’ai fait le choix des savons « Le Père Lucien« , jamais déçu, une mousse danse, parfumée, vraiment adaptée au rasage, en plus un petit geste qui fait plaisir, lorsque je reçois mon petit colis, il est toujours accompagné d’un petit mot écrit à la main et d’un bonbon… C’est plaisant! Je n’envisage vraiment pas changer!

Le-Père-Lucien.jpg, mai 2020

Le blaireau:
Vous pouvez y mettre le prix, misez sur la qualité faites-vous plaisir, cela vous durera des décennies. J’en ai un qui me vient de mon père qui a plus de trente années et n’envisage pas le changer dans l’immédiat mais certainement l’année prochaine (pourtant il pourrait encore durer, mais un caprice, j’ai envie d’avoir le mien). De vous à moi, j’en ai repéré plusieurs qui me plaisent, toujours chez « Le père Lucien« .

Pre-shave et after-shave:
En pre-shave j’utilise une lotion d’huile bio « Sergent Stanley’s », elle est très fine, bien hydratante, sent bon, et prépare très bien la peau.  En after-shave… Si j’ai des micros coupures ou irritations, j’utilise une pierre d’alun et me rince à l’eau. Ensuite, plutôt qu’un after-shave à base d’alcool je préfère une lotion hydratante. Je prends donc soit du « Sergent Stanley’s » ou d’autres lotions conseillées par mon épouse ou mes filles… Tien! Si « Le Père Lucien » passe par ici, c’est peut-être une idée à développer (lotions pre-shave et after-shave à base d’huiles bio et sans alcool).

Pour conclure:
Tout cela me coûte beaucoup moins cher que lorsque que je me rasais avec les produits industriels vendus dans les grandes surfaces. Le rasage est devenu un vrai plaisir et non plus une corvée. Un instant où l’on est avec soi-même. Et j’ai vraiment le sentiment de faire moins de gaspillage, d’être moins polluant et je pense qu’il s’agit d’un comportement « In » du rasage de qualité à moindre coût.

rasage-nécessaire-sima78.jpg, mai 2020

Les 20 ans de Root66.Net

anniversaire-root66-sima78-logo.jpg, nov. 2019Hier on fêtait les 20 ans de Root66.Net.

C’était le 9 novembre 2019.

Superbe ambiance et très bonne organisation.
Quiz, présentation de vieux ordinateurs, d’anciens jeux vidéos… Un membre de root66 nous a fait un petit concert privatif sur des chansons à la demande.
En plus des membres de root66 et leurs amis il y avait des invités, certains ayants faits des présentations pour Root66 et aussi les initiateurs, du moins trois qui ont pu se déplacer. Ils avaient la vingtaine il y a 20 ans !

Bref, on a passé une excellente soirée entre rires et émotions… Une soirée mémorable !

anniversaire-root66-sima78-001.jpg, nov. 2019

anniversaire-root66-Sima78-002.jpg, nov. 2019

Iptables – insserv: warning: script ‘moniptables’ missing LSB tags and overrides

iptables sima78 linuxCes derniers temps j’avais le message suivant:

insserv: warning: script 'moniptables' missing LSB tags and overrides

Ceci-dit, cela n’empêchait pas de fonctionner.
Je jette un oeil sur l’entête:

$ more /etc/init.d/moniptables | less
#!/bin/bash

## BEGIN INIT INFO
# Provides:          moniptables
# Required-Start:
# Required-Stop:
# Default-Start:
# Default-Stop:
### END INIT INFO

J’arrête le service:

# service moniptables stop

Avec un éditeur je le modifie ainsi:

#!/bin/bash
### BEGIN INIT INFO
# Provides:          moniptables
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Démarre les règles iptables
# Description:       Charge la configuration du pare-feu iptables
### END INIT INFO

Je relance le service

# service moniptables start

Je vérifie:

# service moniptables status
● moniptables.service
   Loaded: loaded
   Active: active (exited) since dim. 2019-07-07 17:59:10 CEST; 36s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 2048 ExecStart=/etc/init.d/moniptables start (code=exited, status=0/SUCCESS)

J’automatise le démarrage.

# update-rc.d -f moniptables default

Tout fonctionne correctement!

Petit clin d’oeil à Tutox pour son update-rc.d (on se comprend, c’est entre nous…).

Quand Youtube-dl ne fonctionne pas – Mettre à jour youtube-dl

Télécharger des vidéos et sons avec Youtube-dl (multi sites)Un billet très court, oui je sais, je ne suis pas très actif sur mon blog actuellement.
Il faut dire que ces derniers temps je suis fainéant trop occupé, voire débordé.

Dernièrement je souhaitais récupérer une musique (heeuuu… libre de droit, bien sûr, je suis quelqu’un de respectable) sur youtube pour pouvoir l’écouter dans ma voiture et rendre plus doux les embouteillages…

J’ouvre ma console et je tape ma petite ligne ci-dessous avec l’option « -F » pour choisir la meilleure définition:

$ youtube-dl -F [URL]

Et là…. Horreur! S’en suit des lignes que l’on n’aime pas lire:

[youtube] mgQg4ze1_KU: Downloading webpage
[youtube] mgQg4ze1_KU: Downloading video info webpage
[youtube] mgQg4ze1_KU: Downloading js player vfliSA6ma
ERROR: Signature extraction failed: Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 1236, in _decrypt_signature
(etc.)

Pas de panique… Il suffit de mettre à jour youtube-dl.
Pour cela il suffit de taper…
Sur débian:

$ su - root
Mot de passe :

et ensuite:

# youtube-dl -U

Sur Ubuntu:

$ sudo youtube-dl -U

Et le tour est joué, tout fonctionne correctement.
Pour connaître les possibilités de youtube-dl, vous pouvez jeter un œil sur l’un de mon ancien billet:
Télécharger des vidéos et sons avec Youtube-dl (multi sites)
Ok, il date, donc il faut chercher à adapter en fonction des plates-formes qui se modifient avec le temps.
Vous pouvez aussi lire un billet de Benzo sur le sujet: Télécharger toutes les vidéos d’une chaine Youtube en « one shot »

Ghidra – La NSA libère son outil de rétro-ingénierie

ghidra sima78 logoDe temps en temps, quand ils s’ennuient à espionner, l’« intelligence agency » les agences de renseignements des États-Unis nous permettent de jeter un œil à certains de leurs jouets. Par exemple, le logiciel Ghidra, qui peut intéresser des experts en « reverse engineering » Rétro-Ingénierie et sécurité informatique.

Écrit en langage de programmation Java, il est distribué, sous forme incomplète mais sous licence libre Apache 2.0. De plus il est gratuit, ce qui en fait une alternative intéressante à IDA Pro, un programme fermé et pas vraiment bon marché.

Développée de manière réservée depuis de nombreuses années, il a été montré au public pour la première fois lors de la conférence RSA qui s’est tenue à San Francisco.

Un logiciel capable d’analyser des fichiers binaires (par exemple des logiciels malveillants) inversant le processus de compilation, vers pseudo-code C, permettant aux analystes de comprendre la fonctionnalité de celui-ci.

Il est multi-plateforme (Linux, MacOos, Windows), et compatible avec des logiciels destinés à tous les types de processeurs et de multiples architectures (environ une douzaine). Également extensible dans ses fonctions à base de plugins, à la fois Python et Java, que l’utilisateur peut créer lui-même.

Il se caractérise par ses nombreuses possibilités : effectuer un travail collaboratif, assembleur/dés-assembleur, mode interactif ou automatique, graphiques et diagrammes de flux, raccourcis clavier avancés, possibilité d’annuler les changements. Plus d’une centaine de fonctions différentes et beaucoup à explorer dans cet outil.

Comme toujours, il est conseillé un minimum de précaution dans l’exécution du code de la NSA. Bien qu’ils jurent  qu’il n’y a pas de backdoor (porte dérobée) dans The Register, ils ont déjà fait écho à un bug qui, en mode débogueur, permet à Ghidra de se connecter à d’autres systèmes de son réseau et d’exécuter du code.

Site Ghidra pour le téléchargement.

Voyez les photos d’écran plus bas…
Pour l’exécuter, il faut avoir Java runtime.
Une fois Ghidra installé, pour le lancer :

./ghidra_run

Ghidra sima78 001

Ghidra sima78 002

Ghidra sima78 003

Ghidra site la MiradaSource: une traduction d’un article du site « La Mirada Del Replicante » – La NSA libera su herramienta de ingeniería inversa Ghidra

Renouvellement des certificats LetsEncrypt et message d’erreur.

Arrive le moment du renouvellement de mes certificats Let’s Encrypt. Oui, je sais, il suffit de le faire de façon automatique par une tâche cron… Mais cela n’aurait pas empêché les messages d’erreurs.

Il faut dire que j’avais un peu « bricolé » mon serveur ses derniers temps et activé de nouveaux sites et autres bricoles.

Bref, je lance le renouvellement des certificats par:

# /opt/letsencrypt/letsencrypt-auto renew

Et là j’ai le message d’erreur suivant:

(...)
Attempting to renew cert (chispa.fr/) from /etc/letsencrypt/renewal/chispa.fr.conf produced an unexpected error: Unable to find a virtual host listening on port 80 which is currently needed for Certbot to prove to the CA that you control your domain. Please add a virtual host for port 80.. Skipping.
All renewal attempts failed. The following certs could not be renewed:
  /etc/letsencrypt/livechispa.fr/fullchain.pem (failure)
(...)

Et plus d’accès en https
Suite à cela, je vous fais grâce de toutes mes tentatives de réparation plus laborieuses les unes que les autres multipliant les messages d’erreur.

Il y a un moment où il faut savoir se lever de sa chaise, prendre un thé…

Il y a un moment où il faut savoir se lever de sa chaise, prendre un thé avec des biscuits pour prendre du recul et appréhender le problème la tête reposée.

Je décide donc de faire le ménage, sur le serveur, la maison ça attendra.

Je désactive tous les sites dans /etc/apache2/sites-enabled/ avec la commande a2dissite

# a2dissite nom-du-site.fr

Je refais le site 000-default.conf dans /etc/apache2/sites-available/

# nano /etc/apache2/sites-available/000-default.conf

Configuration au plus simple :

<VirtualHost *:80>
# Redirect permanent / https://sima78.chispa.fr/
        ServerName chispa.fr/
        ServerAdmin mon-mail@truc.fr
        DocumentRoot /var/www/
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Redémarrage d’Apaches2

# systemctl restart apache2

Je recrée des certificats tout neufs

# /opt/letsencrypt/letsencrypt-auto --apache --renew-by-default -d monsite.fr

Au message :

1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.

J’ai choisi l’option 2

Tout c’est bien passé, pas de message d’erreur.

Reste à modifier le fichier de configuration Stunnel, car j’ai Geneweb qui tourne en service en passant par Stunnel pour un accès en https à Geneweb.

# nano /etc/stunnel/stunnel.conf

Je modifie les lignes pour mettre le chemin des nouveaux certificats

cert=/etc/letsencrypt/livechispa.fr/-0002/fullchain.pem
key=/etc/letsencrypt/livechispa.fr/-0002/privkey.pem

Un « reboot » et tout fonctionne de nouveau jusqu’à la prochaine aventure.
Pour info, la configuration réécrite de 000-default.conf lors de la création des nouveaux certificats :

<VirtualHost *:80>
# Redirect permanent / https://sima78.chispa.fr/
        ServerName chispa.fr/
        ServerAdmin chispa.admin@free.fr
        DocumentRoot /var/www/
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =chispa.fr/
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noete

Pour automatiser le renouvellement de certificats, je vous invite à lire l’excellent billet de Tutox « Renouveler automatiquement son certif Let’s Encrypt (one shot)« 

Wget – Aspirer un site n’est pas un crime

wget n'est pas un crime - sima78Aspirer un site n’est pas un crime, ni un vol, tout dépend le but !

Avant de donner les lignes de commande, l’anecdote qui m’a poussé a utiliser wget pour aspirer un site.
Pour la petite histoire
Je m’intéresse à la généalogie et j’ai moi-même un site sur la généalogie de ma famille sous geneweb.
Il y a quelques années déjà j’ai découvert un site qui regroupe une branche de ma famille. Pour ce qui concerne la branche de ma famille rien de vraiment nouveau sauf quelques cousins très éloignés.
Par contre le travail effectué sur cet arbre généalogique est pharaonique.
Soit, le site est un cms dépassé et plus suivi depuis déjà plus de deux ans à l’époque. J’alerte donc le gestionnaire du site des risques, j’échange avec lui, une sympathie s’installe et surtout un gros respect de ma part. Je parcours même de milliers de kilomètres pour le rencontrer. Ce fût pour moi une rencontre mémorable.
Nous avons continuer d’échanger mais il est resté sur ce cms de généalogie complètement dépassé malgré mes avertissements.

Puis, un jour, et les jours suivants, plus de nouvelles, plus de réponses à mes mails… j’insiste de nombreux mois, rien, pas de signe de vie.
Inquiet, je décide d’aspirer son site pour que tout le travail qu’il a effectué ne soit pas perdu (je mets plus bas la ligne de commande utilisée).

Je me suis fait traité de tous les noms d’oiseaux

Pour tenter de faire mieux je vais sur un forum et demande si quelqu’un n’aurait pas connaissance d’un script permettant de créer un fichier Gedcom depuis le site aspiré… J’ai été traité de voleur, d’escroc et autres allégations désagréables. Ça m’a rappelé ma jeunesse, lorsque je trollais sur les forums, sauf que là, je ne trollais pas. Bon, après quelques explications, nombreux m’ont soutenu dans ma démarche, quelques rares obtus ont continué leurs réprobations, de plus en plus timidement pour finalement s’éteindre.

Bref ! Je n’ai pas de script pour créer un gedcom mais j’ai le travail d’une personne dans un coin de mon disque dur que je remettrai à un de ses descendants, du moins j’espère car il n’a de valeur que pour eux.

Passons à Wget et quelques commandes

Aspirer un site web

Le mieux est de contacter le gestionnaire du site pour lui demander si l’on peut vous envoyer les informations qui vous intéressent. L’intérêt de l’aspiration est d’avoir les infos du site Off-Line. Mais évitez d’en abuser, utilisez-le que lorsqu’il n’y a vraiment pas d’autres solution (ou pour télécharger des fichiers, c’est un autre usage et c’est aussi plus bas).
Certains serveurs sont protégés contre l’aspiration de site et il se peut que cela ne fonctionne pas.

Wget et aspirer un site

# wget -r -k -E -np --limit-rate=100k https://site-aspired.com

Cible est https://site-aspired.com.
Options :
 -r pour parcourir tous les liens du sites.
 -k conversion des liens en liens locaux.
 -E conversion php vers HTML, facilite la lecture depuis votre navigateur.
 -np pour ne pas remonter dans l’arborescence du site
–limit-rate=100k limite la vitesse de téléchargement à 100k/s

Toutes les lignes de commande ci-dessous m’ont été inspirées par le site de TecMint et plus particulièrement par le billet traitant wget

Utiliser wget pour télécharger des fichiers

Téléchargement d’un fichier

# wget http://ftp.gnu.org/gnu/wget/wget-1.19.5.tar.gz

La commande téléchargera le fichier dans un répertoire actuel. Il montre aussi le progrès de téléchargement, la taille, la date et heure.

Télécharger un fichier en le renommant

# wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.19.5.tar.gz

L’utilisation-O l’option (majuscule), télécharge le fichier en le renommant. Ici nous avons choisi le nom « wget.zip » comme exemple.

Téléchargez plusieurs fichiers avec les protocoles ftp et http

# wget http://ftp.gnu.org/gnu/wget/wget-1.19.5.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.19.5.tar.gz.sig

Ici nous voyons comment télécharger de multiples fichiers en utilisant les protocoles HTTP et FTP avec la commande de wget.
Téléchargez depuis plusieurs URLs d’un fichier
Vous pouvez stocker plusieurs URLs dans un fichier texte et les télécharger avec l’option -i. Ci-dessous nous avons créé tmp.txt dans le répertoire wget où nous mettons la série d’URL (1 par ligne).
Exemple :

nano /wget/tmp.txt

Ajoutez les lignes:

http://ftp.gnu.org/gnu/wget/wget-1.19.5.tar.gz
ftp://ftp.gnu.org/gnu/wget/wget-1.19.5.tar.gz.sig

Il suffit de lancer:

# wget -i /wget/tmp.txt

Reprenez un téléchargement inachevé

En cas de téléchargement de gros fichiers, il peut arriver que le téléchargement s’interrompre pour une raison quelconque. Avec l’option -c le téléchargement reprendra là où il s’est arrêté.
Sans cet option le téléchargement reprendra depuis le début et wget ajoutera « .1 » à la fin du nouveau fichier.
L’option -c est donc la bonne pratique.

# wget -c https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-9.5.0-amd64-DVD-1.iso

Si « .1 » existe déjà il ajoutera « .2 », etc.

Télécharger en arrière-plan

Avec l’option -b, envoyez le téléchargement en arrière-plan immédiatement après le début du téléchargement, les journaux sont écrits dans le fichier /wget/log.txt.

# wget -b /wget/log.txt ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso
Continuing in background, pid 3550.

Limiter la vitesse de téléchargement
Avec Option –limit-rate = 100k, le téléchargement est limitée à 100k/s et les journaux sont créés sous /wget/log.txt, comme indiqué ci-dessous.

# wget -c --limit-rate=100k  /wget/log.txt https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-9.5.0-amd64-DVD-1.iso

Téléchargent FTP ou HTTP avec identification
Avec des Options -http-user=username, -http-password=password et -ftp-user=username, -ftp-password=password, vous pouvez télécharger avec Login/mot_de_passe

# wget --http-user=narad --http-password=password http://mirrors.fantome.in/truc/machin-LiveDVD.iso
# wget --ftp-user=narad --ftp-password=password ftp://ftp.fantome.net.au/truc/machin-LiveDVD.iso

WGET – Version et aide

$ wget --version
$ wget --help
$ man wget