« LINUX:DDOS » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 19 : | Ligne 19 : | ||
=Principe= | =Principe= | ||
Le script travaille en boucle à intervalle régulier. Il analyse les connexions réseau avec la commande "ss" ou "netstat". Dès qu'une machine dépasse un certain nombre d'entrées et qu'elle n'est pas dans la liste blanche qui l'exclu de la recherche, un mail est envoyé à l'administrateur, une entrée de blocage est ajoutée au FireWall. Les connexions existantes pour cette machine seront éliminées ("tcpkill"). Après le temps de blocage écoulé, il enlève le blocage dans le FireWall. Plusieurs types de FireWall peuvent être utilisés. Nous n'avons pas utilisé le contrôle du taux de transfert ni la restriction à certains ports (80 et 443 par exemple pour le Web). | Le script travaille en boucle à intervalle régulier. Il analyse les connexions réseau avec la commande "ss" ou "netstat". Dès qu'une machine dépasse un certain nombre d'entrées et qu'elle n'est pas dans la liste blanche qui l'exclu de la recherche, un mail est envoyé à l'administrateur, une entrée de blocage est ajoutée au FireWall. Les connexions existantes pour cette machine seront éliminées ("tcpkill"). Après le temps de blocage écoulé, il enlève le blocage dans le FireWall. Plusieurs types de FireWall peuvent être utilisés. Nous n'avons pas utilisé le contrôle du taux de transfert ni la restriction à certains ports (80 et 443 par exemple pour le Web). Nous travaillons en IPV4 mais le script peut gérer l'IPV6. | ||
Dans notre cas, les logiciels "iptables", "ss" et "tcpkill" seront utilisés. | Dans notre cas, les logiciels principaux "iptables", "ss" et "tcpkill" seront utilisés. | ||
Ligne 36 : | Ligne 36 : | ||
Dans mon cas, la gestion des services est assurée par le système "Systemd". Le service "ddos.service" est ajouté et lancé automatiquement. | Dans mon cas, la gestion des services est assurée par le système "Systemd". Le service "ddos.service" est ajouté et lancé automatiquement. | ||
Le FireWall doit être actif. Nous utilisons le service "iptables.service". | |||
On peut le vérifier avec la commande: | |||
systemctl status iptables | |||
dans le cas d'IPV4. | |||
Ce logiciel est un simple script "sh" qui se trouve dans le répertoire "/usr/local/ddos". Ce script se nomme "ddos.sh". | Ce logiciel est un simple script "sh" qui se trouve dans le répertoire "/usr/local/ddos". Ce script se nomme "ddos.sh". | ||
Ligne 76 : | Ligne 81 : | ||
---- | ---- | ||
* Le fichier "ignore.host.list" reprend la liste blanche des machines sous forme de son nom. Nous ne l'avons pas modifié. Aucune n'est active. | * Le fichier "ignore.host.list" reprend la liste blanche des machines sous forme de son nom. Nous ne l'avons pas modifié. Aucune n'est active. | ||
Après modification, le service doit être relancé: | Après modification, le service doit être relancé: | ||
Ligne 83 : | Ligne 89 : | ||
=Utilisation= | =Utilisation= | ||
Il a deux modes d'utilisation: en mode démon pour la contre-attaque automatique et en mode ligne de commandes pour la consultation de son état. | Il a deux modes d'utilisation: en mode démon pour la contre-attaque automatique et en mode ligne de commandes pour la consultation de son état. | ||
Pour le démon, on utilise le système "Systemd". | |||
Pour relancer le service, on utilise la commande: | |||
sysytemctl restart ddos.service | |||
Pour l'arrêter: | |||
systemctl stop ddos.service | |||
Un fichier d'aide existe: | Un fichier d'aide existe: | ||
Ligne 89 : | Ligne 104 : | ||
ddos -h | ddos -h | ||
donne une explication succincte. | donne une explication succincte. | ||
La commande: | La commande: |