« Atelier SysRes SE5 2023/2024 E16 » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 1 : | Ligne 1 : | ||
==Configuration des machines de services== | ==Configuration des machines de services== | ||
Ligne 17 : | Ligne 5 : | ||
==== Création des partitions ==== | ==== Création des partitions ==== | ||
< | <syntaxhighlight lang="bash"> | ||
root@capbreton:~# lvcreate -L 10G -n exegol-home storage | root@capbreton:~# lvcreate -L 10G -n exegol-home storage | ||
Ligne 25 : | Ligne 13 : | ||
Logical volume "exegol-var" created. | Logical volume "exegol-var" created. | ||
</ | </syntaxhighlight > | ||
Il faut ensuite modifier le fichier `/etc/exegol.cfg` pour y rajouter les partitions que nous voulons associer : | Il faut ensuite modifier le fichier `/etc/exegol.cfg` pour y rajouter les partitions que nous voulons associer : | ||
< | <syntaxhighlight lang="bash"> | ||
'phy:/dev/<nomVG>/exegol-home,xvda3,w' | 'phy:/dev/<nomVG>/exegol-home,xvda3,w' | ||
'phy:/dev/<nomVG>/exegol-var,xvda4,w' | 'phy:/dev/<nomVG>/exegol-var,xvda4,w' | ||
</ | </syntaxhighlight > | ||
Nous allons ensuite créer le commutateur virtuel. Pour cela nous allons mettre dans `/etc/network/interfaces.d/cruella.cfg` | Nous allons ensuite créer le commutateur virtuel. Pour cela nous allons mettre dans `/etc/network/interfaces.d/cruella.cfg` | ||
< | <syntaxhighlight lang="bash"> | ||
auto cruella | auto cruella | ||
Ligne 48 : | Ligne 36 : | ||
post-down ip link set $IFACE down | post-down ip link set $IFACE down | ||
</ | </syntaxhighlight > | ||
Puis, il faudrait réaliser la commande “ifup cruella” | Puis, il faudrait réaliser la commande “ifup cruella” | ||
Ligne 68 : | Ligne 56 : | ||
Tout d’abord monter les disques “manuellement” pour y placer nos répertoires. Tout d’abord il faut créer deux répertoires : | Tout d’abord monter les disques “manuellement” pour y placer nos répertoires. Tout d’abord il faut créer deux répertoires : | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# mkdir /mnt/xvda3 | root@exegol:~# mkdir /mnt/xvda3 | ||
root@exegol:~# mkdir /mnt/xvda4 | root@exegol:~# mkdir /mnt/xvda4 | ||
</ | </syntaxhighlight > | ||
Nous vérifions si les répertoires ont bien été créées : | Nous vérifions si les répertoires ont bien été créées : | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# cd /mnt | root@exegol:~# cd /mnt | ||
root@exegol:/mnt# ls | root@exegol:/mnt# ls | ||
</ | </syntaxhighlight > | ||
Nous allons ensuite devoir formater et créer les systèmes de fichiers, que nous allons par la suite associer aux répertoires créés au dessus : | Nous allons ensuite devoir formater et créer les systèmes de fichiers, que nous allons par la suite associer aux répertoires créés au dessus : | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# mkfs /dev/xvda3 | root@exegol:~# mkfs /dev/xvda3 | ||
*mke2fs 1.46.2 (28-Feb-2021) | *mke2fs 1.46.2 (28-Feb-2021) | ||
Ligne 93 : | Ligne 81 : | ||
Writing inode tables: done | Writing inode tables: done | ||
Writing superblocks and filesystem accounting information: done* | Writing superblocks and filesystem accounting information: done* | ||
</ | </syntaxhighlight > | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# mkfs /dev/xvda4 | root@exegol:~# mkfs /dev/xvda4 | ||
*mke2fs 1.46.2 (28-Feb-2021) | *mke2fs 1.46.2 (28-Feb-2021) | ||
Ligne 106 : | Ligne 94 : | ||
Writing inode tables: done | Writing inode tables: done | ||
Writing superblocks and filesystem accounting information: done* | Writing superblocks and filesystem accounting information: done* | ||
</ | </syntaxhighlight > | ||
Nous allons ensuite créer les points de montage des partitions (la commande ici monte le système de fichier /dev/xvda3 sur le répertoire /mtn/xvda3): | Nous allons ensuite créer les points de montage des partitions (la commande ici monte le système de fichier /dev/xvda3 sur le répertoire /mtn/xvda3): | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# mount /dev/xvda3 /mnt/xvda3 | root@exegol:~# mount /dev/xvda3 /mnt/xvda3 | ||
root@exegol:~# mount /dev/xvda4 /mnt/xvda4 | root@exegol:~# mount /dev/xvda4 /mnt/xvda4 | ||
</ | </syntaxhighlight > | ||
Comme le répertoire home est déjà vide, nous pouvons uniquement déplacer le répertoire /var sur le disque xvda4, mais par précaution nous le faisons aussi pour /home dans xvda3 : | Comme le répertoire home est déjà vide, nous pouvons uniquement déplacer le répertoire /var sur le disque xvda4, mais par précaution nous le faisons aussi pour /home dans xvda3 : | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# mv /var/* /mnt/xvda4 | root@exegol:~# mv /var/* /mnt/xvda4 | ||
root@exegol:~# mv /home/* /mnt/xvda3 | root@exegol:~# mv /home/* /mnt/xvda3 | ||
mv: cannot stat '/home/*': No such file or directory | mv: cannot stat '/home/*': No such file or directory | ||
</ | </syntaxhighlight > | ||
< | <syntaxhighlight lang="bash"> | ||
*root@jiruus:~# cd /home/ | *root@jiruus:~# cd /home/ | ||
root@jiruus:/home# ls -la | root@jiruus:/home# ls -la | ||
Ligne 129 : | Ligne 117 : | ||
drwxr-xr-x 2 root root 4096 Oct 11 2021 . | drwxr-xr-x 2 root root 4096 Oct 11 2021 . | ||
drwxr-xr-x 22 root root 4096 Jan 22 2017 ..* | drwxr-xr-x 22 root root 4096 Jan 22 2017 ..* | ||
</ | </syntaxhighlight > | ||
Nous faisons ensuite un lsblk pour lister les LVM sur notre serveur: | Nous faisons ensuite un lsblk pour lister les LVM sur notre serveur: | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# lsblk | root@exegol:~# lsblk | ||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | ||
Ligne 140 : | Ligne 128 : | ||
xvda3 202:3 0 10G 0 disk /mnt/xvda3 | xvda3 202:3 0 10G 0 disk /mnt/xvda3 | ||
xvda4 202:4 0 10G 0 disk /mnt/xvda4 | xvda4 202:4 0 10G 0 disk /mnt/xvda4 | ||
</ | </syntaxhighlight > | ||
Il faut ensuite modifier le fichier /etc/fstab pour monter correctement nos disques : | Il faut ensuite modifier le fichier /etc/fstab pour monter correctement nos disques : | ||
Ligne 150 : | Ligne 138 : | ||
Nous allons rajouter les lignes concernant `/dev/xvda3` et `/dev/xvda4` | Nous allons rajouter les lignes concernant `/dev/xvda3` et `/dev/xvda4` | ||
< | <syntaxhighlight lang="bash"> | ||
# /etc/fstab: static file system information. | # /etc/fstab: static file system information. | ||
# | # | ||
Ligne 162 : | Ligne 150 : | ||
# mettre repertoire /var de la VM jiruus dans la partition LVM jiruus-var | # mettre repertoire /var de la VM jiruus dans la partition LVM jiruus-var | ||
/dev/xvda4 /var ext4 defaults 0 2 | /dev/xvda4 /var ext4 defaults 0 2 | ||
</ | </syntaxhighlight > | ||
Puis, nous allons démonter les 2 volumes/répertoires que nous avons créé : | Puis, nous allons démonter les 2 volumes/répertoires que nous avons créé : | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# umount /mnt/xvda3 | root@exegol:~# umount /mnt/xvda3 | ||
root@exegol:~# umount /mnt/xvda4 | root@exegol:~# umount /mnt/xvda4 | ||
</ | </syntaxhighlight > | ||
Si nous faisons un lsblk, nous voyons bien que c’est démonté (car on ne voit plus /mnt/xvdx dans la partie MOUNTPOINT) | Si nous faisons un lsblk, nous voyons bien que c’est démonté (car on ne voit plus /mnt/xvdx dans la partie MOUNTPOINT) | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:/mnt# lsblk | root@exegol:/mnt# lsblk | ||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | ||
Ligne 180 : | Ligne 168 : | ||
xvda3 202:3 0 10G 0 disk | xvda3 202:3 0 10G 0 disk | ||
xvda4 202:4 0 10G 0 disk | xvda4 202:4 0 10G 0 disk | ||
</ | </syntaxhighlight > | ||
Puis, nous allons enfin, avec la commande suivante, monter tous les systèmes de fichiers qui sont spécifiés dans `/etc/fstab` | Puis, nous allons enfin, avec la commande suivante, monter tous les systèmes de fichiers qui sont spécifiés dans `/etc/fstab` | ||
Ligne 190 : | Ligne 178 : | ||
Pour vérifier notre action, encore un lsblk : | Pour vérifier notre action, encore un lsblk : | ||
< | <syntaxhighlight lang="bash"> | ||
root@exegol:~# lsblk | root@exegol:~# lsblk | ||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | ||
Ligne 197 : | Ligne 185 : | ||
xvda3 202:3 0 10G 0 disk /home | xvda3 202:3 0 10G 0 disk /home | ||
xvda4 202:4 0 10G 0 disk /var | xvda4 202:4 0 10G 0 disk /var | ||
</ | </syntaxhighlight > | ||
Et la on voit bien que notre xvda3 est monté sur /home et xvda4 sur /var | Et la on voit bien que notre xvda3 est monté sur /home et xvda4 sur /var | ||
Ligne 229 : | Ligne 217 : | ||
[[Fichier:Wpa_psk_force_brute.png|600px]] | [[Fichier:Wpa_psk_force_brute.png|600px]] | ||
= Services Internet = | |||
== Filtrage des services == | |||
Sur la machine mandataire, nous allons vérifier dans le fichier de log /var/log/auth.log si il y a des tentatives d’authentification par ssh. Vérification simplifiée par la commande suivante qui va nous donner le nombre d’authentifications qui ont fail sur environ une journée (contenu du fihcier de log): <br> | |||
<syntaxhighlight lang="bash"> | |||
root@cruella:/var/log# cat auth.log | grep Failed | wc -l | |||
763 | |||
</syntaxhighlight> | |||
Par exemple nous avons :<br> | |||
<syntaxhighlight lang="bash"> | |||
Jan 15 09:34:35 cruella sshd[15112]: Failed password for invalid user git from 64.227.185.241 port 33352 ssh2 | |||
Jan 15 09:41:21 cruella sshd[15122]: Failed password for invalid user guest from 64.227.185.241 port 52478 ssh2 | |||
Jan 15 09:48:07 cruella sshd[15127]: Failed password for invalid user www from 64.227.185.241 port 37134 ssh2 | |||
Jan 15 09:53:06 cruella sshd[15134]: Failed password for root from 193.105.134.95 port 54196 ssh2 | |||
Jan 15 09:55:01 cruella sshd[15136]: Failed password for invalid user mysql from 64.227.185.241 port 42730 ssh2 | |||
Jan 15 10:01:46 cruella sshd[15141]: Failed password for invalid user debian from 64.227.185.241 port 42378 ssh2 | |||
Jan 15 10:02:18 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2 | |||
Jan 15 10:02:21 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2 | |||
Jan 15 10:02:25 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2 | |||
Jan 15 10:02:28 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2 | |||
Jan 15 10:02:33 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2 | |||
Jan 15 10:08:31 cruella sshd[15152]: Failed password for invalid user testuser from 64.227.185.241 port 52646 ssh2 | |||
Jan 15 10:15:20 cruella sshd[15157]: Failed password for invalid user pi from 64.227.185.241 port 56514 ssh2 | |||
Jan 15 10:22:05 cruella sshd[15170]: Failed password for invalid user hadoop from 64.227.185.241 port 49388 ssh2 | |||
Jan 15 10:28:51 cruella sshd[15372]: Failed password for invalid user steam from 64.227.185.241 port 39384 ssh2 | |||
Jan 15 10:35:40 cruella sshd[15502]: Failed password for invalid user test1 from 64.227.185.241 port 36486 ssh2 | |||
Jan 15 10:42:26 cruella sshd[15551]: Failed password for invalid user es from 64.227.185.241 port 39242 ssh2 | |||
Jan 15 10:49:16 cruella sshd[15559]: Failed password for invalid user deploy from 64.227.185.241 port 36742 ssh2 | |||
Jan 15 10:56:07 cruella sshd[15568]: Failed password for invalid user minecraft from 64.227.185.241 port 49322 ssh2 | |||
Jan 15 11:02:53 cruella sshd[15573]: Failed password for invalid user ftp from 64.227.185.241 port 49876 ssh2 | |||
Jan 15 11:09:39 cruella sshd[15580]: Failed password for invalid user test2 from 64.227.185.241 port 38594 ssh2 | |||
Jan 15 11:10:55 cruella sshd[15587]: Failed password for root from 185.246.128.133 port 9349 ssh2 | |||
Jan 15 11:16:23 cruella sshd[15605]: Failed password for invalid user student from 64.227.185.241 port 36814 ssh2 | |||
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2 | |||
</syntaxhighlight> | |||
On remarque bien qu’on a des attaques, donc on installe fail2ban sur cruella (notre serveur mandataire). <br> | |||
Nous allons modifier le fichier `/etc/fail2ban/jail.d/defaults-debian.conf` comme ce qui suit :<br> | |||
<syntaxhighlight lang="bash"> | |||
[sshd] | |||
enabled = true | |||
port = ssh | |||
filter = sshd | |||
logpath = /var/log/auth.log | |||
maxretry = 10 | |||
actionban = ufw | |||
</syntaxhighlight> | |||
Nous pouvons vérifier si les prisons sont bien actives :<br> | |||
<syntaxhighlight lang="bash"> | |||
root@cruella:/etc/fail2ban# fail2ban-client status | |||
Status | |||
|- Number of jail: 1 | |||
`- Jail list: sshd | |||
</syntaxhighlight> | |||
Nous avons alors fait un test avec un camarade qui à essayé de se connecter plus de 3 fois (la conf avait été changée) : <br> | |||
<syntaxhighlight lang="bash"> | |||
root@cruella:~# cat /var/log/auth.log | grep Failed | tail | |||
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2 | |||
Jan 15 14:51:33 cruella sshd[17089]: Failed password for root from 184.72.82.0 port 56274 ssh2 | |||
Jan 15 14:51:37 cruella sshd[17091]: Failed password for root from 184.72.82.0 port 56278 ssh2 | |||
Jan 15 14:51:40 cruella sshd[17094]: Failed password for root from 184.72.82.0 port 55786 ssh2 | |||
Jan 15 14:51:44 cruella sshd[17097]: Failed password for root from 184.72.82.0 port 55788 ssh2 | |||
Jan 15 14:51:50 cruella sshd[17099]: Failed password for root from 184.72.82.0 port 55804 ssh2 | |||
Jan 15 15:50:48 cruella sshd[17565]: Failed password for root from 185.246.128.133 port 53811 ssh2 | |||
Jan 15 15:59:51 cruella sshd[17641]: Failed password for root from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45868 ssh2 | |||
Jan 15 16:00:12 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2 | |||
Jan 15 16:00:38 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2 | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
root@cruella:~# fail2ban-client status sshd | |||
Status for the jail: sshd | |||
|- Filter | |||
| |- Currently failed: 0 | |||
| |- Total failed: 0 | |||
| `- File list: /var/log/auth.log | |||
`- Actions | |||
|- Currently banned: 1 | |||
|- Total banned: 1 | |||
`- Banned IP list: 2a01:c916:2047:c800:216:3eff:fe82:8a5c | |||
</syntaxhighlight> | |||
On remarque bien qu’un adresse IP à été bannie, celle qui à tentée de se connecter plusieurs fois sans succès.<br> |
Version du 16 janvier 2024 à 17:17
Configuration des machines de services
commandes faites par Mr.Redon à distance
Création des partitions
root@capbreton:~# lvcreate -L 10G -n exegol-home storage
Logical volume "exegol-home" created.
root@capbreton:~# lvcreate -L 10G -n exegol-var storage
Logical volume "exegol-var" created.
Il faut ensuite modifier le fichier `/etc/exegol.cfg` pour y rajouter les partitions que nous voulons associer :
'phy:/dev/<nomVG>/exegol-home,xvda3,w'
'phy:/dev/<nomVG>/exegol-var,xvda4,w'
Nous allons ensuite créer le commutateur virtuel. Pour cela nous allons mettre dans `/etc/network/interfaces.d/cruella.cfg`
auto cruella
iface cruella inet manual
bridge_ports none
post-up ip link set $IFACE up
post-down ip link set $IFACE down
Puis, il faudrait réaliser la commande “ifup cruella”
Avec ces commandes, l’interface est lancée.
Dans les fichiers de configuration d’exegol (`/etc/xen/exegol.cfg`)rajouter :
vif = [ 'bridge=SE5, mac=00:16:3E:5E:XX:XX' , 'bridge=cruella, mac=00:16:3E:5E:XX:XX+1' ]
Configuration des LV
Tout d’abord monter les disques “manuellement” pour y placer nos répertoires. Tout d’abord il faut créer deux répertoires :
root@exegol:~# mkdir /mnt/xvda3
root@exegol:~# mkdir /mnt/xvda4
Nous vérifions si les répertoires ont bien été créées :
root@exegol:~# cd /mnt
root@exegol:/mnt# ls
Nous allons ensuite devoir formater et créer les systèmes de fichiers, que nous allons par la suite associer aux répertoires créés au dessus :
root@exegol:~# mkfs /dev/xvda3
*mke2fs 1.46.2 (28-Feb-2021)
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: 1651310e-2410-40c5-857b-482a2a99737b
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done*
root@exegol:~# mkfs /dev/xvda4
*mke2fs 1.46.2 (28-Feb-2021)
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: 614d5d6c-9a0d-4bba-a3c3-237574601376
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done*
Nous allons ensuite créer les points de montage des partitions (la commande ici monte le système de fichier /dev/xvda3 sur le répertoire /mtn/xvda3):
root@exegol:~# mount /dev/xvda3 /mnt/xvda3
root@exegol:~# mount /dev/xvda4 /mnt/xvda4
Comme le répertoire home est déjà vide, nous pouvons uniquement déplacer le répertoire /var sur le disque xvda4, mais par précaution nous le faisons aussi pour /home dans xvda3 :
root@exegol:~# mv /var/* /mnt/xvda4
root@exegol:~# mv /home/* /mnt/xvda3
mv: cannot stat '/home/*': No such file or directory
*root@jiruus:~# cd /home/
root@jiruus:/home# ls -la
total 8
drwxr-xr-x 2 root root 4096 Oct 11 2021 .
drwxr-xr-x 22 root root 4096 Jan 22 2017 ..*
Nous faisons ensuite un lsblk pour lister les LVM sur notre serveur:
root@exegol:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda1 202:1 0 512M 0 disk [SWAP]
xvda2 202:2 0 10G 0 disk /
xvda3 202:3 0 10G 0 disk /mnt/xvda3
xvda4 202:4 0 10G 0 disk /mnt/xvda4
Il faut ensuite modifier le fichier /etc/fstab pour monter correctement nos disques :
root@exegol:~# nano /etc/fstab
Nous allons rajouter les lignes concernant `/dev/xvda3` et `/dev/xvda4`
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
devpts /dev/pts devpts rw,noexec,nosuid,gid=5,mode=620 0 0
/dev/xvda1 none swap sw 0 0
/dev/xvda2 / ext4 noatime,nodiratime,errors=remount-ro 0 1
# mettre repertoire /home de la VM jiruus dans la partition LVM jiruus-home
/dev/xvda3 /home ext4 defaults 0 2
# mettre repertoire /var de la VM jiruus dans la partition LVM jiruus-var
/dev/xvda4 /var ext4 defaults 0 2
Puis, nous allons démonter les 2 volumes/répertoires que nous avons créé :
root@exegol:~# umount /mnt/xvda3
root@exegol:~# umount /mnt/xvda4
Si nous faisons un lsblk, nous voyons bien que c’est démonté (car on ne voit plus /mnt/xvdx dans la partie MOUNTPOINT)
root@exegol:/mnt# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda1 202:1 0 512M 0 disk [SWAP]
xvda2 202:2 0 10G 0 disk /
xvda3 202:3 0 10G 0 disk
xvda4 202:4 0 10G 0 disk
Puis, nous allons enfin, avec la commande suivante, monter tous les systèmes de fichiers qui sont spécifiés dans `/etc/fstab`
root@exegol:~# mount -a
Pour vérifier notre action, encore un lsblk :
root@exegol:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda1 202:1 0 512M 0 disk [SWAP]
xvda2 202:2 0 10G 0 disk /
xvda3 202:3 0 10G 0 disk /home
xvda4 202:4 0 10G 0 disk /var
Et la on voit bien que notre xvda3 est monté sur /home et xvda4 sur /var
Effraction Wifi
Avancée
Cassage de clef WEP d'un point d'accès WiFi
Wifi : cracotte10
Machine : zabeth02
Interface réseau : wlan1mon
Clé WEP : 55:55:55:55:5A:BC:11:CB:A4:44:44:44:44
Cassage de mot de passe WPA-PSK par force brute
Wifi : cracotte10
Machine : zabeth02
Interface réseau : wlan1mon
Services Internet
Filtrage des services
Sur la machine mandataire, nous allons vérifier dans le fichier de log /var/log/auth.log si il y a des tentatives d’authentification par ssh. Vérification simplifiée par la commande suivante qui va nous donner le nombre d’authentifications qui ont fail sur environ une journée (contenu du fihcier de log):
root@cruella:/var/log# cat auth.log | grep Failed | wc -l
763
Par exemple nous avons :
Jan 15 09:34:35 cruella sshd[15112]: Failed password for invalid user git from 64.227.185.241 port 33352 ssh2
Jan 15 09:41:21 cruella sshd[15122]: Failed password for invalid user guest from 64.227.185.241 port 52478 ssh2
Jan 15 09:48:07 cruella sshd[15127]: Failed password for invalid user www from 64.227.185.241 port 37134 ssh2
Jan 15 09:53:06 cruella sshd[15134]: Failed password for root from 193.105.134.95 port 54196 ssh2
Jan 15 09:55:01 cruella sshd[15136]: Failed password for invalid user mysql from 64.227.185.241 port 42730 ssh2
Jan 15 10:01:46 cruella sshd[15141]: Failed password for invalid user debian from 64.227.185.241 port 42378 ssh2
Jan 15 10:02:18 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:21 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:25 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:28 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:33 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:08:31 cruella sshd[15152]: Failed password for invalid user testuser from 64.227.185.241 port 52646 ssh2
Jan 15 10:15:20 cruella sshd[15157]: Failed password for invalid user pi from 64.227.185.241 port 56514 ssh2
Jan 15 10:22:05 cruella sshd[15170]: Failed password for invalid user hadoop from 64.227.185.241 port 49388 ssh2
Jan 15 10:28:51 cruella sshd[15372]: Failed password for invalid user steam from 64.227.185.241 port 39384 ssh2
Jan 15 10:35:40 cruella sshd[15502]: Failed password for invalid user test1 from 64.227.185.241 port 36486 ssh2
Jan 15 10:42:26 cruella sshd[15551]: Failed password for invalid user es from 64.227.185.241 port 39242 ssh2
Jan 15 10:49:16 cruella sshd[15559]: Failed password for invalid user deploy from 64.227.185.241 port 36742 ssh2
Jan 15 10:56:07 cruella sshd[15568]: Failed password for invalid user minecraft from 64.227.185.241 port 49322 ssh2
Jan 15 11:02:53 cruella sshd[15573]: Failed password for invalid user ftp from 64.227.185.241 port 49876 ssh2
Jan 15 11:09:39 cruella sshd[15580]: Failed password for invalid user test2 from 64.227.185.241 port 38594 ssh2
Jan 15 11:10:55 cruella sshd[15587]: Failed password for root from 185.246.128.133 port 9349 ssh2
Jan 15 11:16:23 cruella sshd[15605]: Failed password for invalid user student from 64.227.185.241 port 36814 ssh2
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2
On remarque bien qu’on a des attaques, donc on installe fail2ban sur cruella (notre serveur mandataire).
Nous allons modifier le fichier `/etc/fail2ban/jail.d/defaults-debian.conf` comme ce qui suit :
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 10
actionban = ufw
Nous pouvons vérifier si les prisons sont bien actives :
root@cruella:/etc/fail2ban# fail2ban-client status
Status
|- Number of jail: 1
`- Jail list: sshd
Nous avons alors fait un test avec un camarade qui à essayé de se connecter plus de 3 fois (la conf avait été changée) :
root@cruella:~# cat /var/log/auth.log | grep Failed | tail
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2
Jan 15 14:51:33 cruella sshd[17089]: Failed password for root from 184.72.82.0 port 56274 ssh2
Jan 15 14:51:37 cruella sshd[17091]: Failed password for root from 184.72.82.0 port 56278 ssh2
Jan 15 14:51:40 cruella sshd[17094]: Failed password for root from 184.72.82.0 port 55786 ssh2
Jan 15 14:51:44 cruella sshd[17097]: Failed password for root from 184.72.82.0 port 55788 ssh2
Jan 15 14:51:50 cruella sshd[17099]: Failed password for root from 184.72.82.0 port 55804 ssh2
Jan 15 15:50:48 cruella sshd[17565]: Failed password for root from 185.246.128.133 port 53811 ssh2
Jan 15 15:59:51 cruella sshd[17641]: Failed password for root from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45868 ssh2
Jan 15 16:00:12 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2
Jan 15 16:00:38 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2
root@cruella:~# fail2ban-client status sshd
Status for the jail: sshd
|- Filter
| |- Currently failed: 0
| |- Total failed: 0
| `- File list: /var/log/auth.log
`- Actions
|- Currently banned: 1
|- Total banned: 1
`- Banned IP list: 2a01:c916:2047:c800:216:3eff:fe82:8a5c
On remarque bien qu’un adresse IP à été bannie, celle qui à tentée de se connecter plusieurs fois sans succès.