🔬 Monitorer
Plusieurs outils et façon de faire
Netdata
Une communauté grandissante
Installation
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
Interface web htt://127.0.0.1:19999
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
Espace disque
ncdu
ce placer à la racine, l'argument -x permet de ignorer les média
cd /
sudo ncdu -x
Fichier temporaire
tmpreaper
Installer tmpreaper avec apt
lors de l'installation avec apt, il faut commenter la ligne showing dans le fichier etc/tmpreaper
Journal et Log
log monitor
cd var/log
ls -ltr
ll | more
Voir les log de demarrage toujours dans var/log
more boot.log
voir quand est-ce que boot.log a été modifié
ls -l boot.log
voir les log du matériel
dmesg
lnav
Analyser les log avec lnav installation simple avec apt
lnav /var/log/messages*
journalctl | lnav
journalctl -f | lnav
journalctl -o short-iso | lnav
journalctl -o json | lnav
journalctl -a -o json | lnav
journalctl -o json --output-fields=MESSAGE,PRIORITY,_PID,SYSLOG_IDENTIFIER,_SYSTEMD_UNIT | lnav
logrotate
Si on travail avec des outils qui générent des fichiers log
logrotate est déja présent sur les distribution linux, il permet d'effecctuer des actions de rotations et de compression sur les logs
Assurons-nous que cette ligne n'est pas commentez
cat /etc/logrotate.conf | grep "include"
Voici un exemple
/var/log/mylogs/auth.log {
su <user> <group>
monthly
rotate 3
compress
missingok
create 644 <user> <group>
}
/var/log/mylogs/errors.log {
su <user> <group>
monthly
rotate 3
compress
missingok
create 644 <user> <group>
}
- monthly : la rotation se fait mensuellement
- rotate 3 : le nombre de fichiers qu’on souhaite conserver
- compress : les anciens fichiers sont compressés
- missingok : ne considère pas l’absence du fichier comme une erreur
- create 644 root root : créer le fichier de log immédiatement après la rotation avec les droits adéquats
Petite verification
logrotate --force /etc/logrotate.d/mylogs
Supprimer ces traces
history
supprimer une ligne génante
history -d numeroligne
Tout nettoyer
history -c
Si je veux l'historique sans les ligne de commande ls -l
export HISTIGNORE='ls -l:pwd:history'
tout l'historique sont sauvegardé ici
/home/yourname/.bash_history
ctrl+r permet de faire une recherche dans les lignes de commande tapé
Message
Pour afficher un message il faudra l'écrire la dedans
/etc/motd
/etc/nologin
Suppression en masse
Il peux arriver qu'un dossier comporte tellement de fichier que vider le dossier deviens impossible meme avec un rm
find . -name "*.toto" -exec rm {} \;
Creer en masse
Cette ligne de commande creer 9 fichiers
touch abcd{1..9}-wyz
Rechercher
Rechercher une chaine de caractère dans tout les fichiers du repertoire courant
grep -rnw './' -e 'machainearechercher'
Process and Jobs
Crtl-z, jobs, bg, fg, nohup &, ps, pkill, nice
systemctl ps -aux top crontab -e pour creer un crontab crontab -l pour lister les crontab
on peux definir plus facilement les cron dans /etc/
ls -l | grep cron
Mot de passe
passwd
Commande sed
Remplacer tout les mots ancien
par les mots nouveau
du fichier MonFichier
sed 's/ancien/nouveau/g' MonFichier
Rajouter l'argument -i pour que cela soit actif
sed -i 's/ancien/nouveau/g' MonFichier
Supprimer toutes les lignes dans le fichier contenant le mot ancien
dans MonFichier
sed '/ancien/d' MonFichier
Supprimer toutes les lignes vide dans MonFichier
sed -i '/^$/d' MonFichier
Tester chiffrement TSL/SSL (STARTTLS)
git clone –depth 1 https://github.com/drwetter/testssl.sh.git
cd testssl.sh
./testssl.sh https://qwant.com
Detecter le traffic malicieux
https://github.com/stamparm/maltrail
Voir quel paquets sont installés
dpkg -l | grep <paquet>
Gestion utilisateurs
Creer l'utilisateur toto
et l'ajouter au group sudo
useradd toto
usermod -aG sudo toto
Supprimer un utilisateur
userdel -r toto
Chercher toto dans /etc/group
grep toto /etc/group
Creer un groupe TEST
groupadd TEST
Voir la liste de tout les groupes
cat /etc/group/
rsync
Synchroniser deux repertoire sur un serveur local
rsync -zvr /var/opt/installation/inventory /root/temp
Récupération de disque dur
Recupérer dd_rescue
Décompressez, puis make pour créer le binaire
Si le disque enfommagé est /dev/sdb1 Si le disque libre est /dev/sdc1
Information du disque
fdisk -l
Se placer dans le repertoire dd_rescue
dd_rescue -l transfert_errors.log /dev/sdb1 /dev/sdc1
Le fichier log va être créé et qui va lister les blocs qu'il n'a pas plus traiter
Choisisser un des lignes de commande ci-dessous selon votre système de fichiers
fsck.ext2
fsck.ext3
fsck.ext4
fsck.vfat
Autre
df -h
top
dmesg
iostat 1
free
cat /proc/cpuinfo
cat /proc/meminfo
iftop
nethogs
iptraf-ng
apt install sysstat
# Regarder la crontab
cat /etc/cron.d/sysstat
# les fichiers générés
ls /var/log/sa
# CPU
sar -u
# Memoire
sar -r
# Swap
sar -W
# Etat des IO disque
sar -b
# Entree sortie
sar -d
# Une période
sadf -s 05:00:01 -e 06:00:01 -dT /var/log/sa/sa15 -- -A