📖 Le blog de lili, édition 2020 😷

Retour à l'accueil


Salut à tous, vous retrouverez ici mes billets de l'année 2020. Pour voir les billets toutes dates confondues, cliquez ici

Faire marcher Pi-hole et votre Livebox V2 ensemble.

[lienbillet seul]

Bonjour à tous,
J'ai bien galéré pour faire marcher pihole sur un vieux pc avec une livebox v2 en tant que routeur parce que celle-ci ne permet pas de changer les DNS directement. Voici comment faire, étape par étape:

Il sera probablement nécessaire de déconnecter et reconnecter vos équipements connectés en WiFi. Dorénavant, les requêtes DNS devrait passer par le Pihole ! Moins de pubs pour tout le monde à la maison.


[1]L'addresse IP donnée via l'interface de la box à un bail, ce qui veut dire qu'au bout d'une certaine durée (de ce que j'ai vu et senti: 1 jour) la machine n'en tiendra plus compte.
Plus d'IP = plus reconnu sous le réseau et vu que c'est le Pi-hole qui s'occupe du DHCP ET du DNS, ça veut échec de la connexion au réseau pour les autres équipements.
Voici donc ci-dessous un script (pour Linux) sur la machine Pihole permettant de mettre à jour son IP. À exécuter toutes les heures grâce à crontab pour éviter de le faire en manuel.

#!/bin/sh
ip address change x.x.x.x/24 dev eth0 # remplacez x.x.x.x par l'adresse IP
notée de la Pihole
ip route add default via 192.168.1.1 dev eth0 # 192.168.1.1 est la
passerelle, c'est à dire la box qui nous donne l'accés à internet.
jeu., 31 déc. 2020 19:41:40 +0100

Extrait d'une config client ssh pour un admin gitolite

[lienbillet seul]


tl;dr: l'option Hostname dans la config client ssh est bien pratique quand on a plusieurs clef secrète pour le même utilisateur sur le serveur distant.
Salut totu le monde,

Ça me servira de pense-bête et j'espère que ça aidera quelqu'un dans le futur.
Voici le soucis: vous venez d'installer gitolite et cgit sur votre serveur web mais il faut jongler avec les clefs secrètes pour soit:

Un moyen que j'ai appris est la l'option Hostname dans les blocs Hosts de votre config ssh client (~/.ssh/config pour rappel). J'ai quelque chose qui ressemble à ça de mon côté:

Host admin_gitolite
    Hostname git.nomdedomaine.com
    IdentityFile ~/.ssh/admin_gitolite
    User gitolite

Host utilisateur_gitolite
    Hostname git.nomdedomaine.com
    IdentityFile ~/.ssh/utilisateur_gitolite
    User gitolite

Host serveurweb
    Hostname git.nomdedomaine.com
    IdentityFile ~/.ssh/serveurweb
    User utilnormal

Donc si vous renommer l'URL de rapatriement de votre répertoire d'administration de gitolite en ssh://admin_gitolite:/gitolite-admin, ssh le comprendra et demandera le mot de passe pour la clé secrète ~/.ssh/admin_gitolite lors du push. C'est le même principe pour utilisateur_gitolite sauf que le mot de passe pour la clé secrète ~/.ssh/utilisateur_gitolite sera demandée.
Enfin, exécuter ssh serveurweb permettra d'accéder tout simplement à l'interpréteur de commande de l'utilisateur utilnormal sur la machine avec le nom d'hôte git.nomdedomaine.com.

C'est tout ce que j'ai à dire, bonnes fêtes et bon Noël à vous tous ! 🎄🎄🎄

jeu., 24 déc. 2020 23:44:12 +0100

Passage à cgit

[lienbillet seul]

Salut tout le monde,

J'avais l'habitude de faire des tarballs de mes logiciels mais je vais laisser cgit le faire maintenant. C'est la raison pour laquelle il n'y a plus le tableau de mes projets sur la page d'accueil du site.
Dorénavant, vous pouvez retrouvez mes projets sur mon git.

mar., 22 déc. 2020 17:20:01 +0100

Dépanner le serveur CUPS et l'impression de documents sous Arch Linux 🖨️💯

[lienbillet seul]

Si un beau matin vous n'arrivez plus à imprimer des documents via lp ou que system-config-printer n'affiche plus les imprimantes configurées et que l'interface web locale d'administration de CUPS vous 404 Not Found dans la face ou bien encore ce message maudit apparaît dans la sortie de journalctl -xe:

The unit org.cups.cupsd.service has entered the 'failed' state with result 'protocol'

Il est alors fort probable que le fichier /etc/cups/cupsd.conf soit mal formé (pour moi en tout cas du code HTML avait remplacé tout le fichier !). La solution est d'exécuter ceci:

su -c 'cp /etc/cups/cupsd.conf.O /etc/cups/cupsd.conf'

Il se peut que ça ne soit pas un O mais 'default' dans certains cas, ici j'ai testé avec un CUPS 2.3.3 sous Arch.

Merci et sûrement à bientôt, les imprimantes vont bien chauffer avec les autorisations de déplacements dérogatoires.

jeu., 10 déc. 2020 18:37:55 +0100

Aspire A31732 v104 sous (Arch)Linux: test et constat

[lienbillet seul]

Bonjour à tous,


Voici les caractéristiques basiques du système (nombre de paquets variant selon votre installation): neofetch sous
archlinux avec un Aspire A317-32 V1.04


J'étais avant sur un Notebook d'ASUS et disons que tout ne marchait pas direct (son, microphone, bluetooth, touche Fn+), il fallait creuser/attendre.


Avec le Aspire, l'installation d'ArchLinux (version d'août 2020) c'est bien passé. Le wifi, microphone, bluetooth, écran et son marche bien (en téléchargeant les paquets linux-firmware et alsa-firmware, même si je pense que ce dernier n'est pas forcément nécessaire, voir la section suivante).

Une chose à noter pour le son: le pilote c'est snd-hda-intel. La chose que j'ai fait c'est d'ajouter options snd-hda-intel model=auto dans le fichier /etc/modprobe.d/alba-base.conf et autospawn = yes dans ~/.config/pulse/client.conf, comme ça le serveur pulseaudio se démarre tout seul si une appli demande/envoie du son (coucou pavucontrol).

jeu., 10 déc. 2020 17:02:46 +0100

Retrouver le nom des comptes créés avec prosodyctl

[lienbillet seul]

Salut à tous! Si comme moi vous avez une instance Jitsi et que vous ne vous souvenez plus des utilisateurs créé, voici une astuce pour les lister car prosodyctl n'est pas capable de le faire de base.

Exécutez ceci: ls /var/lib/prosody/*/accounts|grep .dat|sed s/'.dat'//g capture
d'écran de la méthode utilisant 'ls'

Si vous avez plusieurs domaines, la méthode suivante est meilleure (si vous vous débrouillez bien en anglais, regardez cette réponse dans une liste de diffusion dédiée à prosody pour plus de détails):
curl -OJL http://prosody.im/files/mod_listusers.lua
chmod 755 mod_listusers.lua
mv mod_listusers.lua /usr/lib/prosody/modules/
capture d'écran de la méthode utilisant 'mod_listusers'

Maintenant, exécuter prosodyctl mod_listusers devrait retourner les comptes créés comme avec la première méthode mais suivi de leur domaine respectif.
Merci beaucoup à Jan "Arsimael" Schneeberger en tout cas, ça m'a bien dépanné

. jeu., 10 déc. 2020 17:02:24 +0100

Mon programme 'gpigeon' a donéravant un installateur !

[lienbillet seul]

Salut à tous,
J'ai un script perl, gpigeon, qui me permet de créer et d'envoyer des liens à des personnes ne connaissant pas GPG de m'envoyer des mails chiffrés lorsque je leur donne un lien créé par le script.
Il est téléchargeable depuis ma page d'accueil depuis quelques mois, mais je n'étais pas satisfait par rapport à la lisibilité du code: si quelqu'un venait à mettre en place le script pour son usage personnel, les informations à compléter était disséminée un peu partout.
Voilà pourquoi j'ai créé un installateur! Je vais aussi profiter de ce billet pour faire un tour de l'application.

Donc, ceci est la page HTML de base pour s'authentifier sur le script. Notez qu'une page ayant un formulaire avec saisie de texte (avec name="password" dans l'input) + bouton pointant vers le script CGI fait tout autant l'affaire. Voici un example, retrouvable ici:
image de la page
d'authentification de gpigeon.


Une fois authentifié avec le mot de passe définie dans l'installateur on arrive ici, le look étant modifiable via le gpigeon.css:
Interface de gpigeon après login. Il y a un bouton Déconnecter,
Actualiser, Générer lien (avec un champ de texte pour rentrer l'email juste à
côté), Supprimer liens. Un tableau avec les liens générés est aussi présent,
chaque lien étant rattaché à un mail et un lien vers le formulaire d'envoi.

On peut voir que j'ai commencé à générer un lien et que celui-ci s'est affiché dans le tableau des liens en bas de la page. À quoi ressemble un lien? Ceci:
Une page web avec une zone de texte
multiligne éditable et un bouton `M'envoyer le mail`.


Côté mail, je reçois donc ceci (notez que j'ai fais déchiffré d'abord, d'où le mail en vert en bas à droite):
Mon client de mail avec le mail
GPG déchiffré, le mail étant le contenu du formulaire de l'image
précédente. L'envoi du mail chiffré est donc un succés!


Il y a aussi quelque chose d'important à savoir: une fois que le mail est envoyé, le formulaire (lien) s'autodétruit. Ça évite le spam si quelqu'un trouve ou partage un lien et évite que tout le monde sache qui veut vous envoyer des mails.
Pour ce qui est d'autres capture d'écrans, les voici :
On a rentré un
mail invalide, 'test', et on a un mail d'erreur en retour.


Quand on supprime un lien, il y a une notification juste en dessous le tableau:
Notif de réussite de suppression d'un lien


Voilà pour le moment. Si vous avez des questions sur ce script, n'hésitez pas à les poser en m'écrivant un mail !

jeu., 10 déc. 2020 17:01:58 +0100

Faire une entrée de menu grub pour KeyTool.efi

[lienbillet seul]

J'ai bien galéré pour complété la partie de l'insertion des clés dans un BIOS pour profiter du Secure Boot avec GRUB & linux.


Vu que le BIOS de ma machine proposait de nettoyer les clés mais pas d'options pour en insérer, il faut passer par une tierce-partie, ici KeyTool.efi (ce fichier sera installé avec le paquet efitools sous arch, peut-être le même cas pour d'autres distrib).

Trêve de bavardages, voici à quoi ressemble /etc/grub.d/40_custom après avoir copié KeyTool.efi dans /efi/EFI/arch/KeyTool.efi. N'oubliez pas de remplaçer 1234-5678 par l'UUID de votre partition contenant le répertoire /efi:


#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "KeyTool unsigned" {
    load_video
    set gfxpayload=keep
    insmod part_gpt
    insmod ext2
    insmod fat
    insmod chain
    search --no-floppy --fs-uuid --set=root 1234-5678
    chainloader /efi/arch/KeyTool.efi
}
jeu., 10 déc. 2020 17:00:43 +0100

🆒 Comment avoir des émojis colorées dans les programmes st,dmenu,dwm,slstatus sur Archlinux 👌

[lienbillet seul]

J'utilisais slstatus/dwm/st et dmenu depuis un bon bout de temps, et je ne comprenais pas pourquoi certaines émojis s'affichait correctement, d'autres en noir et blanc. Ça cassait la "consistance".

La bonne réponse bien sûr est que je m'y suis mal pris. Je vais vous expliquer comment faire afin de vous éviter moults pertes de cheveux et prises de têtes.


  1. S'assurer d'avoir fakeroot ou sudo d'installé, vu que l'on va compiler des paquets depuis l'AUR grâce à makepkg -s .
  2. Téléchargez et compilez la version patchée de libxft par Maxime Coste: libxft-bgra-git.
    Pour l'installer exécutez les commandes suivantes:
    curl -OJL https://aur.archlinux.org/cgit/aur.git/snapshot/libxft-bgra-git.tar.gz
    tar xvzf libxft-bgra-git.tar.gz
    cd libxft-bgra-git/
    makepkg -s
    pacman -U libxft-bgra-git*.pkg.tar.zst

    Si on vous informe d'un conflit avec libxft, foncez quand même.
  3. Choisissez ensuite une police de caractères ayant des émojis. Il y en a plusieurs (noto-fonts-emoji,ttf-joypixels par exemple), pour ma part j'ai choisi ttf-twemoji. Si vous l'avez vous aussi choisie, n'oubliez pas de copier 75-twemoji.conf dans le répertoire /etc/fonts/conf.d.
    Exécutez
    pacman -U ttf-twemoji*.pkg.tar.xz
    dans le répertoire de ttf-twemoji afin d'installer la police de caractères après sa compilation.
  4. N'oubliez pas de commenter ou supprimer les lignes 142 à 146 dans le fichier drw.c du code source de dwm et dmenu quand vous les recompilez. Sans ça, les émojis ne s'afficheront pas ou pas correctement.
  5. Tout est bon ! Vous pouvez maitenant tester tout ça grâce àun simple script affichant une liste d'émojis :
    curl -OJL https://github.com/LukeSmithxyz/voidrice/raw/master/.local/share/larbs/emoji
    mv emoji ~/.local/share/emojis
    cat ~/.local/share/emojis | dmenu -i -b -l 5

Merci à Luke Smith et Unicode pour la liste d'émojis et la standardisation des émojis, respectivement. Très 🆒.

mar., 08 sept. 2020 19:49:16 +0200