Catégorie : Ligne de commande

31 mai 2017 /

Coté serveur Centreon CES 3.3 (192.168.122.58)

On commence par installer le script check_nrpe:

yum install -y nrpe-plugin

 

Par défaut, la variable $USER1$ qui correspond au répertoire où sont stockés les scripts Centreon, pointe sur /usr/lib/nagios/plugins/, alors que check_nrpe a été installé dans /usr/lib64/nagios/plugins/ . Nous devons donc créer un lien symbolique pour que check_nrpe y soit présent.

ln -s /usr/lib64/nagios/plugins/check_nrpe /usr/lib/nagios/plugins/check_nrpe

 

Sur l’interface web de Centreon, nous allons maintenant configurer la commande check_nrpe.
Pour cela nous allons dans Configuration / Commandes puis on clique sur ajouter:

Dans ligne de commande on met ceci:

$USER1$/check_nrpe -H $HOSTADDRESS$ -p $_SERVICEPORT$ $_SERVICECOMMAND$

Puis on clique sur « Décrire les macro » puis sauvegarder sur le pop-up qui apparaît, pour générer le texte suivant:

MACRO (SERVICE) PORT :
MACRO (SERVICE) COMMAND :

Nous pouvons maintenant créer des services NRPE. Pour cela nous allons dans Configuration / Services / Modèles puis on clique sur Ajouter:

On rempli le formulaire comme ci dessus pour la création d’un service surveillance de la charge système d’un hôte.

On met la « Commande de vérification » sur la commande « check_nrpe« .

La variable PORT contient le port de service de NRPE, 5666.
La variable COMMAND contient la valeur « check_load« .
Cela correspond au nom de la commande sur le serveur cible (dans nrpe.cfg).

L’hôte que l’on souhaite monitorer doit donc avoir cette commande déclarer dans son fichier nrpe.cfg, comme on peut le voir ici:

vi /etc/nagios/nrpe.cfg

.....
command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
......

 

Puis on va dans l’onglet « Relations » pour lié le modèle à des modèles d’hôtes:

On associe le modèle de service au modèle d’hôte qui fonctionneront avec NRPE comme ci-dessus. Il faudra reproduire la même chose pour chaque service NRPE que l’on désire configurer.

On peut maintenant créer dans Centreon notre première machine à monitorer avec notre service NRPE, « check_load« .

 

Coté client Ubuntu (192.168.0.20)

On installe sur le client Ubuntu le deamon NRPE ainsi que des scipts pour le monitorer:

apt-get install nagios-nrpe-server nagios-plugins

On va autoriser le serveur Centreon dans le fichier de configuration NRPE:

vi /etc/nagios/nrpe.cfg

allowed_hosts=127.0.0.1,192.168.122.58

Puis on démarre le service:

/etc/init.d/nagios-nrpe-server start

ou

systemctl start nagios-nrpe-server

On peut vérifier que le client Ubuntu répond au serveur Centreon avec cette commande (à faire depuis Centreon):

/usr/lib/nagios/plugins/check_nrpe -H 192.168.0.20 -c check_load

OK - load average: 0.06, 0.06, 0.01|load1=0.060;15.000;30.000;0; load5=0.060;10.000;25.000;0; load15=0.010;5.000;20.000;0;

On va maintenant déclarer la machine dans Centreon.
Pour cela on va dans Configuration / Hôtes et on clique sur le bouton ajouter

On rempli le formulaire en ayant spécifié le modèle d’hôte « Serveurs-Ubuntu« .
L’hôte va ainsi hérité du service NRPE que nous avons créer tout à l’heure.

On peut vérifié que le service pour la charge système est bien présent pour notre hôte Ubuntu à monitorer.

Pour cela on va dans Configuration / Services et on clique sur le service de notre hôte:

On vérifie que le « Modèle de service » que l’on souhaite, ici « NRPE_Charge_Système » que l’on a configurer précédemment est bien sélectionné.
On met la « Commande de vérification » sur « check_nrpe« .

On peut vérifier que cela fonctionne depuis le serveur Centreon avec cette commande:

/usr/lib/nagios/plugins/check_nrpe -H 192.168.0.20 -c check_load

Si tous est bon, il ne reste plus qu’a recharger la configuration du Collecteur:

 

Si il n’y à pas d’erreur, on coche également « Déplacer les fichier« , et « Redémarrer l’ordonnanceur »

Puis on clic sur exporter.

 

Coté Client CentOS (192.168.122.172)

Pour installer le deamon NRPE, nous devons passer par les dépôts EPEL:

yum install epel-release -y

Puis

yum -y install nrpe nagios-plugin*

On va autoriser le serveur Centreon dans le fichier de configuration NRPE:

vi /etc/nagios/nrpe.cfg

allowed_hosts=127.0.0.1,192.168.122.58

Puis on démarre le service:

service nrpe start
chkconfig nrpe on

Particularité CentOS 7

systemctl restart nrpe
systemctl enable nrpe
firewall-cmd --permanent --add-port=5666/tcp

 

On va maintenant déclarer la machine CentOS dans Centreon.

En ayant spécifié le modèle d’hôte « Serveurs-CentOS« , l’hôte va ainsi hérité du service NRPE que nous avons créer tout à l’heure.

On peut vérifié que le service pour la charge système est bien présent pour notre hôte CentOS à monitorer.

Pour cela on va dans Configuration / Services et on clique sur le service de notre hôte:

On vérifie que le « Modèle de service » que l’on souhaite, ici « NRPE_Charge_Système » que l’on a configurer précédemment est bien sélectionné.
On vérifie que la « Commande de vérification » est bien « check_nrpe« .

On peut vérifier que cela fonctionne depuis le serveur Centreon avec cette commande:

/usr/lib/nagios/plugins/check_nrpe -H 192.168.122.172 -c check_load

Si tous est bon, il ne reste plus qu’a recharger la configuration du Collecteur:

Si il n’y à pas d’erreur, on coche également « Déplacer les fichier », et « Redémarrer l’ordonnanceur »

Puis on clic sur exporter.

 

18 mai 2017 /

Voici comment détecter rapidement les machines vulnérable à l’exploit WannaCry grâce à Nmap (version 7 minimum) et  du plugin associé à l’exploit : smb-vuln-ms17-010.nse.

Vous pouvez vérifié votre version de Nmap avec la commande suivante:

nmap -V

Nmap version 5.51 ( http://nmap.org )

Si vous avez une version inférieur à la 7, il faudra compiler Nmap à partir de la dernière version disponible (nmap-7.40.tar.bz2 actuellement).

cd /usr/share/
wget https://nmap.org/dist/nmap-7.40.tar.bz2
bzip2 -cd nmap-7.40.tar.bz2 | tar xvf -
cd nmap-7.40
./configure
make
make install

Maintenant que Nmap est installé et en version au moins égale à la 7.4, nous allons installer le plugin nécessaire pour identifier les machines vulnérable à Wannacry.

Pour cela nous devons trouver le répertoire contenant les scripts Nmap, vous pouvez pour cela vous aider de cette commande:

locate -i *.nse

ou

locate -i nmap | grep -i script

Une fois trouvé, on se rend dedans et on télécharge le plugin:

cd /usr/share/nmap-7.40/scripts/
wget https://raw.githubusercontent.com/cldrn/nmap-nse-scripts/master/scripts/smb-vuln-ms17-010.nse

On met à jour la base de donnée de Nmap:

cd /usr/share/nmap-7.40/
./nmap --script-updatedb

Pour scanner une machine en 192.168.0.33 et générer le résultat dans un fichier HTLM:

./nmap -sC -p 445 --script smb-vuln-ms17-010.nse 192.168.0.33 -oX scan.xml && xsltproc scan.xml -o "wannacry_192.168.0.33_`date +%d%m%y`.html"

 

On peut ensuite consulter le fichier HTML contenant rapport généré par Nmap:

 

 

Pour scanner le réseau 192.168.0.0/24 et générer le résultat dans un fichier HTLM:

./nmap -sC -p 445 -max-hostgroup 3 -open --script smb-vuln-ms17-010.nse 192.168.0.0/24 -oX scan.xml && xsltproc scan.xml -o "wannacry_192.168.0.0-24_`date +%d%m%y`.html"

 

On peut ensuite consulter le fichier HTML contenant rapport généré par Nmap:

 

 

Pour scanner une liste d’adresse IP et générer le résultat dans un fichier HTLM:

vi ip.txt

Dans le fichier ip.txt nous allons mettre toute nos adresse IP à scanner (une adresse ip par ligne) et on le donne en argument à Nmap:

./nmap -sC -p 445 -max-hostgroup 3 -open --script smb-vuln-ms17-010.nse -iL ip.txt -oX scan.xml && xsltproc scan.xml -o "wannacry_listeIP_`date +%d%m%y`.html"

 

Si aucune machine vulnérable à l’exploit SMBv1 n’est détectée (ou que le service n’est pas activé, patché ou pas), la sortie sera vide.
Si une machine à le protocole SMBv1 activé mais qu’il a été patché, la sortie affichera « Could not connect to ‘IPC$’ « .

Mais si une machine vulnérable à l’exploit SMBv1 est détectée (service activé et non patché), voici la sortie que vous allez avoir:

Starting Nmap 7.40 ( https://nmap.org ) at 2017-05-18 12:16 CEST
Nmap scan report for 192.168.0.33
Host is up (0.0013s latency).
PORT    STATE SERVICE
445/tcp open  microsoft-ds
MAC Address: 00:0C:29:E5:8A:29 (VMware)

Host script results:
| smb-vuln-ms17-010:
|   VULNERABLE:
|   Remote Code Execution vulnerability in Microsoft SMBv1 servers (ms17-010)

|     State: VULNERABLE

|     IDs:  CVE:CVE-2017-0143

|     Risk factor: HIGH

|       A critical remote code execution vulnerability exists in Microsoft SMBv1

|        servers (ms17-010)
.
|
|     Disclosure date: 2017-03-14
|     References:
|       https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/
|       https://technet.microsoft.com/en-us/library/security/ms17-010.aspx
|_      https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0143

Nmap done: 1 IP address (1 host up) scanned in 13.61 seconds

 

Et voila, vous savez maintenant le nombre machine Windaube qu’il faut patcher…

 

4 mai 2017 /

On commence par installer un environnement graphique ainsi que notre serveur VNC :

yum groupinstall Desktop
yum install gnome-core
yum install tigervnc-server

Puis on active le serveur au démarrage:

chkconfig vncserver on

On va ensuite donner l’accès sur notre serveur VNC à l’utilisateur starmate, on va donc le créer:

useradd starmate

On se connecte dessus et on génère un mot de passe de connexion pour VNC

su - starmate
vncpasswd

Un fois généré, on retourne sous root et on édite la configuration du serveur VNC:

exit
vi /etc/sysconfig/vncservers

On va déclarer l’utilisateur starmate qui va se connecter, ainsi que la résolution d’écran:

VNCSERVERS="1:starmate"
VNCSERVERARGS[1]="-geometry 1024x768"

Il est configuré ici pour être à l’écoute sur 5901 et avec une résolution d’écran de 1024×768.

On redémarre le service VNC, cela va générer un script qu’il faudra modifier (xstartup):

service vncserver restart

On modifie le fichier généré /home/starmate/.vnc/xstartup :

vi /home/starmate/.vnc/xstartup

Et l’on va commenter la ligne contenant « twm & » et ajouter à la suite « gnome-session & » comme ci-dessous en rouge:

#!/bin/sh

[ -r /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n
export LANG
export SYSFONT
vncconfig -iconic &
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
OS=`uname -s`
if [ $OS = 'Linux' ]; then
case "$WINDOWMANAGER" in
*gnome*)
if [ -e /etc/SuSE-release ]; then
PATH=$PATH:/opt/gnome/bin
export PATH
fi
;;
esac
fi
if [ -x /etc/X11/xinit/xinitrc ]; then
exec /etc/X11/xinit/xinitrc
fi
if [ -f /etc/X11/xinit/xinitrc ]; then
exec sh /etc/X11/xinit/xinitrc
fi
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
exec gnome-session &

On redémarre le service VNC:

service vncserver restart

Il ne reste plus qu’a configurer une connexion via un client VNC.
SI la connexion ne passe pas, regardez du coté du pare-feu (service iptables stop).

11 avril 2017 /

Lynis vérifie quasiment tous les paramètres de votre système Linux puis en fait une synthèse complète avec des suggestions pour combler les différents points faibles remontés.

Installation pour Red Hat/CentoS:

yum install lynis -y

Installation pour Ubuntu:

apt-get install lynis -y

Pour afficher les options de Lynis :

lynis

Pour mettre à jour Lynis :

lynis update release

Pour lancer un scan complet sur son système:

lynis audit system

Pour lancer un scan complet sur un système distant:

lynis audit system remote adresse_ip

Une fois l’execution terminée, le rapport généré ce trouve à cet emplacement :

vi /var/log/lynis-report.dat

8 avril 2017 /

Pour installer Webmin sur un serveur Ubuntu 16.04, on commence par installer quelques dépendances:

apt-get install -y perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python libwww-perl liblwp-protocol-https-perl

On ajoute la clef pour vérifier l’intégrité des paquets du dépôts de Webmin:

wget -O- http://www.webmin.com/jcameron-key.asc | sudo apt-key add -

On ajoute les dépôts à la fin du fichier sources.list :

vi /etc/apt/sources.list

#Webmin
deb http://download.webmin.com/download/repository sarge contrib
deb http://webmin.mirror.somersettechsolutions.co.uk/repository sarge contrib

Il ne reste plus qu’a mettre à jour la  liste des paquets:

apt-get update

Et à l’installer:

apt-get install webmin

La fin de l’installation est détaille la façon de se connecter sur l’interface Webmin:

Webmin install complete. You can now login to https://starmind:10000/
as root with your root password, or as any user who can use sudo
to run commands as root.