Attaque sur mon serveur!

Heureusement, il se protège 🙂

Mon serveur subi régulièrement des tentatives d’intrusion (plusieurs fois par jour), comme tous les serveurs sur Internet, faites par des bots qui scannent les serveurs et tentent du brute force.

Mais hier peu après 13h, le nombre de tentatives a énormément augmenté, pour aller jusqu’à une alerte (un blocage temporaire et certains définitifs) par minute.

Read more “Attaque sur mon serveur!”

Mes scripts “Maison”

Pour avoir la météo en bash:

#!/bin/bash
#
# Meteo mise à jour toutes les heures
#
# Smokyr <smokyr@extra-ordinaire.com>
#

if [ -z "$1" ]
then
        minute=5 #minute de maj par défaut
else
        minute=$1
fi

while true
do
        clear
        LC_ALL='fr_FR.utf8' date
        curl wttr.in/93200?lang=fr
        sleep 1m
        LC_ALL='fr_FR.utf8' date -d '1 minute ago'
        tempo=$(date +%M | sed -e 's/000$//' -e 's/^0//')
        attente=$(($minute - $tempo + 60))
        sleep $attente.m
done
meteo sous bash
Exemple de météo sous bash

Afin de vérifier le statut de fail2ban et la table nfttables correspondante:

Read more “Mes scripts “Maison””

Installation de portsentry

Objet: bloquer les scanneurs de ports

Installation avec la méthode habituelle: apt install portsentry

Puis modification de certains paramètres dans le fichier /etc/portsentry/portsentry.conf :

##################
# Ignore Options #
##################
\[...]
# 0 = Do not block UDP/TCP scans.
# 1 = Block UDP/TCP scans.
# 2 = Run external command only (KILL_RUN_CMD)

BLOCK_UDP="2"
BLOCK_TCP="2"
###################
# External Command#
###################
\[...]
# The KILL_RUN_CMD_FIRST value should be set to "1" to force the command 
# to run \*before\* the blocking occurs and should be set to "0" to make the 
# command run \*after\* the blocking has occurred. 
#
KILL_RUN_CMD_FIRST = "1"
#
#
KILL_RUN_CMD="/home/unutilisateur/portsentry_ext_cmd.sh $TARGET$"
# for examples see /usr/share/doc/portsentry/examples/
Read more “Installation de portsentry”

Fail2ban

Objet: Protection contre les attaques de type brute force.

Intallation: apt install fail2ban

Paramètrage: de base avec les modification suivantes:

Parametrage personnel pour les attaques répétitives avec recidive.conf placé dans le répertoire jail.d de fail2ban contenu de ce fichier:

[recidive]
enabled = true
filter = recidive
logpath = /var/log/fail2ban.log
banaction = nftables-allports
findtime = 86400 ; 1 jour
bantime = 2592000 ; 30 jours
maxretry = 3 ; au bout de trois tentatives
protocol = 0-255; ban de tous les protocoles

Read more “Fail2ban”

Détails de la mise en place du serveur

Il s’agit d’un serveur kimusfi, hébergé chez OVH, avec 16Go de mémoire et un disque de 1To.

Ce serveur était déjà en production sous debian Jessie, mais une manipulation malheureuse de ma part le rendait impossible à mettre à jour: je l’ai donc complètement réinstallé (en prenant le soin tout de même de sauvegarder ce que j’y avais.

En tout premier; installation de Linux Debian Buster.

On passe ensuite à l’installation de virtualmin.

Installation de MariaDB (qui remplace mysql) à l’aide de ce tutoriel.

Installation de divers “utilitaires” avec la commande
apt install openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve dovecot-lmtpd sudo

Read more “Détails de la mise en place du serveur”