Les petites infos – 8
Tout seul on va plus vite, ensemble on va plus loin. Yeah man !
Déchiffrer les disques sans intervention
Opensource.com est un des gros sites en Anglais à suivre, articles nombreux et de qualité, « supported by Red Hat ». Unlock encrypted disks on Linux automatically présente une solution que je ne connaissais pas : Network-Bound Disk Encryption (NBDE). Elle répond au problème de déchiffrer les disques sans intervention de l’utilisateur au boot.
Je n’utilise pas mais j’ai trouvé l’info et les outils présentés intéressants.
Ctrl-s
Si vous passez du temps dans un terminal, vous avez déjà malencontreusement appuyé sur la combinaison de touches Ctrl et s. Pour parler simplement le terminal freeze, vous tapez sur votre clavier mais rien ne change à l’écran. Pour reprendre la main, il suffit de faire Ctrl et q.
J’ai voulu désactiver cette fonctionnalité, j’ai opté pour ajouter stty -ixon
dans mon .bashrc. Cependant une fois désactivée, l’appui sur Ctrl-s lance forward-search-history (bind -p | grep C-s
) ce qui a tendance à m’emmerder encore plus. Au final j’ai rollback, Ctrl-s peut parfois servir quand on a des tonnes d’infos balancées sur le terminal (pour debug).
scp -3
Deprecating scp est paru début novembre sur LWN.net et fait le constat que scp est dépassé, peu sécurisé, de la daube. En attendant on continue à l’utiliser et j’ai découvert récemment scp -3
: Copies between two remote hosts are transferred through the local host.
En général dans le monde pro on ne peut pas scp d’un serveur à un autre pour des mesures de sécurité, il faut ouvrir le firewall, valider la connexion SSH… pénible. scp -3 server1:/home/toto/file.txt server2:/home/titi/
va faire le job (si vous pouvez vous connecter aux 2 serveurs évidemment).
man en Français
Saviez-vous que les manpages sont disponibles en d’autres langues que l’Anglais ? Personnellement je sudo apt install manpages-fr manpages-fr-dev
(dispo sur Debian Testing mais pas Buster, dispo sur Ubuntu). L’Anglais technique peut parfois être un frein à la compréhension surtout « au démarrage », j’apprécie commencer en lisant dans ma langue natale pour aller ensuite vers l’Anglais plus précis, exact et à jour.
Le gros point négatif des manpages autres qu’Anglais est qu’ils ne sont pas à jour parfois mal traduits. Je maintiens que c’est utile pour certains.
Il faut cependant un moyen rapide et simple de passer du man en Français à l’Anglais. Mon système étant en fr_FR.UTF-8 (locale
), man ls
affichera le man en Français, men ls
en Anglais. J’ai créé l’alias alias men='man -Len'
dans mon .bashrc.
dpkg -S
Souvent on veut savoir de quel paquet provient un fichier et régulièrement je vois utilisé apt-file, un des rares outils que je trouve mauvais voire inutile.
sudo apt install apt-file # Un paquet à installer
sudo apt-file update # Il faut mettre à jour la base
apt-file search -x '/usr/bin/free$' # 5 secondes d'attente, notez la syntaxe simple
dpkg est dispo de base avec l’option -S : Search for a filename from installed packages. Il n’est capable que de faire la relation entre fichiers et paquets installés mais c’est suffisant 9 fois sur 10.
dpkg -S /usr/share/themes/Mint-X-Aqua/gtk-2.0/styles/panel.rc
mint-themes: /usr/share/themes/Mint-X-Aqua/gtk-2.0/styles/panel.rc
dpkg -S /usr/bin/free
procps: /usr/bin/free
Professionnellement je cherche souvent d’où provient un programme, il est pénible de fournir le chemin complet alors je procède ainsi.
dpkg -S $(which free)
procps: /usr/bin/free
Cependant on peut rencontrer.
dpkg -S $(which ls)
dpkg-query: aucun chemin ne correspond à /usr/bin/ls
Lié à UsrMerge, petit rappel pour Debian.
ls -l /bin /sbin /lib*
lrwxrwxrwx 1 root root 7 28 janv. 2020 /bin -> usr/bin
lrwxrwxrwx 1 root root 7 28 janv. 2020 /lib -> usr/lib
lrwxrwxrwx 1 root root 9 28 janv. 2020 /lib32 -> usr/lib32
lrwxrwxrwx 1 root root 9 28 janv. 2020 /lib64 -> usr/lib64
lrwxrwxrwx 1 root root 10 28 janv. 2020 /libx32 -> usr/libx32
lrwxrwxrwx 1 root root 8 28 janv. 2020 /sbin -> usr/sbin
La solution élégante.
dpkg -S $(which -a ls) # Flemme maximale
dpkg-query: aucun chemin ne correspond à /usr/bin/ls
coreutils: /bin/ls
dpkg -S $(which -a ls) 2>/dev/null # Propre mais qu'on ne tapera jamais par flemme
coreutils: /bin/ls
Bref retenez dpkg -S $(which -a ls)
surtout.
Déjà 9 avis pertinents dans Les petites infos – 8
Les commentaires sont fermés.
Pourquoi ?
Un sysadmin a le nécessaire pour se connecter sur chaque serveur. En revanche tu ne peux pas te connecter du serveur A au serveur B (de base), ça voudrait dire que le client « Picard » peut se connecter sur le serveur/client « Lacoste », l’accès est évidemment fermé pour des raisons de sécurité.
Tcho !
Tcho !
Tu mélanges les sujets.
Point 1/ J’attends ta réponse à la question : « Pourquoi permettre une connexion SSH du serveur/client « Picard » vers le serveur/client « Lacoste » ? » Aucune raison. À partir de là, la discussion devrait déjà être terminée.
Point 2/ « me semble suffisamment sécurisé pour ouvrir le port » donc tes pneus sont bien gonflés, tes freins sont neufs, pas besoin de mettre la ceinture ? Puis on retombe sur le point 1/, pourquoi ouvrir le port si il n’y a aucune raison ?
Point 3/ En général d’un point de vue sécurité on bloque tout puis on permet/ouvre seulement ce qui est nécessaire
Je ne sais pas si il faut qu’on s’explique différemment ou si tu as un exemple précis en tête. Je précise que dans mon job, les clients ne sont pas root sur les serveurs.
Tcho !
Tcho !