Catégorie : Ligne de commande

12 juillet 2019 /

Partager rapidement des fichiers entre deux postes Linux, via le réseau local et sans installer de logiciel supplémentaire ou configuration d’un service c’est possible via deux methodes:

Avec Python

Sur le Linux qui partage
cd ~/repertoire_a_partager
python3 -m http.server

Un message nous confirme le lancement du service web sur le port 8000:

Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/

Maintenant depuis le poste qui veux accéder au partage, on ouvre firefox et on tape:

http://adresse_ip_du_linux_qui_partage:8000

Vous avez maintenant accès à tous les fichiers du répertoire.
Une fois que vous avez récupérer les fichier, faire un CTRL+c pour arrêter le partage.

Avec Netcat

Sur le Linux qui partage
nc -vv -l -p 1664 < fichier_a_partager.txt

Ici, netcat écoute sur le port 1664.
Vérifier que le pare-feu ne bloque pas ce port sinon modifier les règles ou choisir un autre port qui lui serait ouvert.

Sur le Linux veut récupérer le fichier
nc adresse_ip_du_linux_qui_partage 1664 > fichier_a_partager.txt

Dans ces deux méthodes, la sécurité a été laissée de côté au profit de la simplicité.

8 juillet 2019 /

Lorsque le nombre de fichiers dans un répertoire dépasse les 30000, cela peut constituer un problème.

Voici les étapes à suivre pour mener à bien cette tâche
find . -name '*.txt' -print >/tmp/fichiers_a_archiver
tar -cvzf fichiers_a_archiver.tar.gz --files-from /tmp/fichiers_a_archiver
find . -name '*.txt' | xargs rm -v

 

21 juin 2019 /

DRBD fait référence aux périphériques en mode bloc conçus pour former des clusters haute disponibilité (HA). Pour ce faire, un périphérique de bloc entier est mis en miroir via le réseau. DRBD peut être compris comme un raid-1 réseau.

Le problème est le suivant, DRBD ne se connecte pas à tous ses volumes réseaux suite à une panne d’un des contrôleurs de la baie de disques.

Après la remise en état du contrôleur, je me retrouve avec l’erreur suivante:

Supervision de l'etat des volumes DRBD depuis la baie n° 1
drbd-overview

0:datastores/0 Connected Primary/Secondary UpToDate/UpToDate
1:datastores/1 Connected Primary/Secondary UpToDate/UpToDate
2:images-stores02/0 StandAlone Primary/Unknown UpToDate/DUnknown 
3:images-stores03/0 Connected Primary/Secondary UpToDate/UpToDate
4:images-storesHS/0 StandAlone Primary/Unknown UpToDate/DUnknown

Supervision de l'etat des volumes DRBD depuis la baie n° 2
drbd-overview

0:datastores/0 Connected Secondary/Primary UpToDate/UpToDate
1:datastores/1 Connected Secondary/Primary UpToDate/UpToDate
2:images-stores02/0 WFConnection Primary/Unknown UpToDate/DUnknown
3:images-stores03/0 Connected Secondary/Primary UpToDate/UpToDate
4:images-storesHS/0 WFConnection Primary/Unknown UpToDate/DUnknown

Pour réparer cela:

Depuis la baie n° 2
drbdadm secondary images-stores02/0
drbdadm disconnect images-stores02/0
drbdadm connect --discard-my-data images-stores02/0

drbdadm secondary images-storesHS/0
drbdadm disconnect images-storesHS/0
drbdadm connect --discard-my-data images-storesHS/0
Depuis la baie n°1
drbdadm primairy mages-storesHS/0
drbdadm disconnect images-storesHS/0
drbdadm connect images-storesHS/0

drbdadm primairy images-stores02/0
drbdadm disconnect images-stores02/0
drbdadm connect images-stores02/0

On verifie que syncronisation s’est bien lancée:

Depuis la baie n°1 ou n°2
cat /proc/drbd

version: 8.4.3 (api:1/proto:86-101)
srcversion: 1A9F77B1CA5FF92235C2213
0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:59608 dw:232804 dr:0 al:0 bm:23 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
2: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r—–
ns:0 nr:888388 dw:888376 dr:972 al:0 bm:477 lo:3 pe:0 ua:3 ap:0 ep:1 wo:f oos:1404644
[===>…………….] sync’ed: 22.3% (1404644/1800120)K
finish: 0:13:30 speed: 1,724 (1,716) want: 102,400 K/sec
3: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:436052 dw:3326216 dr:0 al:0 bm:196 lo:1 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
4: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r—–
ns:0 nr:8702052 dw:8700428 dr:992 al:0 bm:606 lo:2 pe:0 ua:2 ap:0 ep:1 wo:f oos:4173260
[============>…….] sync’ed: 67.5% (4072/12488)Mfinish: 0:01:32 speed: 44,952 (36,060) want: 0 K/sec

Une fois la syncronisation terminée, vous devriez avoir cela:

cat /proc/drbd

version: 8.4.3 (api:1/proto:86-101)
srcversion: 1A9F77B1CA5FF92235C2213
0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:183320 dw:356516 dr:0 al:0 bm:23 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
2: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:7518312 dw:7518312 dr:972 al:0 bm:1437 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
3: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:1377700 dw:4267864 dr:0 al:0 bm:196 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
4: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:23442304 dw:23442288 dr:992 al:0 bm:1936 lo:1 pe:0 ua:1 ap:0 ep:1 wo:f oos:0

Depuis la baie n°1
drbd-overview

0:datastores/0 Connected Primary/Secondary UpToDate/UpToDate
1:datastores/1 Connected Primary/Secondary UpToDate/UpToDate
2:images-stores02/0 Connected Primary/Secondary UpToDate/UpToDate
3:images-stores03/0 Connected Primary/Secondary UpToDate/UpToDate
4:images-storesHS/0 Connected Primary/Secondary UpToDate/UpToDate

Depuis la baie n°2
drbd-overview

0:datastores/0 Connected Secondary/Primary UpToDate/UpToDate
1:datastores/1 Connected Secondary/Primary UpToDate/UpToDate
2:images-stores02/0 Connected Secondary/Primary UpToDate/UpToDate
3:images-stores03/0 Connected Secondary/Primary UpToDate/UpToDate
4:images-storesHS/0 Connected Secondary/Primary UpToDate/UpToDate

 

25 avril 2019 /
Avec tree
tree -ihafF / | tr '[]' ' '| sort -k1hr | head -20
Avec find
find / -type f -exec du -h {} \; | sort -rh | head -20
24 janvier 2019 /

Le 22 janvier 2019, Debian a publié un avis de sécurité (Référence: CERTFR-2019-ALE-001) indiquant que leur gestionnaire de paquets était vulnérable à une injection de code.

Par défaut, les mises à jour sont récupérées en HTTP. Toutefois des vérifications sont effectuées en local afin de vérifier l’intégrité des fichiers récupérés.

Un attaquant en position d’intercepteur actif (Man In The Middle) peut injecter un paquet malveillant qui sera considéré comme valide. Cette vulnérabilité n’est présente que dans le cadre de l’utilisation de redirections par APT.

Le logiciel APT s’exécute avec un niveau de privilège élevé, une attaque réussie garanti donc à l’attaquant une compromission totale du système.

Il s’agit donc d’une vulnérabilité sérieuse, d’autant plus qu’elle impacte directement le mécanisme de mise à jour. Il est nécessaire d’appliquer le correctif tout en minimisant les risques d’exploitation.

Uniquement dans le cadre de cette mise à jour, Debian recommande de désactiver les redirections par les commandes suivantes

apt -o Acquire::http::AllowRedirect=false update;
apt -o Acquire::http::AllowRedirect=false upgrade

Toutefois, cela peut ne pas fonctionner lorsque l’on est placé derrière un proxy et que l’on cherche à atteindre le miroir security.debian.org.

Dans ce cas, il est possible d’utiliser la source suivante : http://security-cdn.debian.org/debian-security/

Si la mise à jour d’APT sans la désactivation des redirections est impossible, il est alors recommandé de télécharger manuellement le paquet. Il convient ensuite d’effectuer la vérification d’intégrité avant de l’installer.

Source