OVH Community, votre nouvel espace communautaire.

Attaque sur port 80 ?


Raln
28/07/2015, 17h11
Bonjour,

D'accord, merci.
Je viens de vous envoyer un mail.

janus57
26/07/2015, 23h21
Bonjour,

je viens de voir votre message privé et du coup vous est répondu à la suite.

Cordialement, janus57

Raln
26/07/2015, 22h45
Bonsoir,

Je rencontre toujours le même soucis, je pense à une mauvaise config d'apache.
Mais je ne suis pas sur ?
Le site fonctionne bien, mais au même intervalle(en général), site lent voir même timeout.

Merci d'avance.

Raln
30/06/2015, 17h27
Non malheureusement pas possible dans votre profil :/

janus57
29/06/2015, 20h29
Bonjour,

normalement elle apparait dans mon profil.
Sinon vous pouvez laisser votre mail en message visiteur sur mon profil (normalement j'ai limité cette fonction sur mon profil pour éviter les robots/visiteurs d'y jeter un coup d’œil).

Cordialement, janus57

Raln
29/06/2015, 19h16
Merci pour votre réponse, je peux peut-être vous donner accès à mon munin ?
Vous avez une adresse mail svp ?

janus57
29/06/2015, 19h01
Bonjour,

il faut des graphs à ce niveau (et pas ceux du manager pas confiance).

Car suivant la config juste dire "ça ram" c'est impossible d'aider, la seule chose que l'on sait avec certitude c'est que vous avez apache en prefork/munin/awstat et PHP (le tout en version Jessie sauf si dépôts "exotique").

Donc après reste à savoir comment PHP fonctionne (mod_php/fastcgi/fpm), voir la charge CPU en // de la charge apache/MySQL et aitre données issue du monitoring.

Et surtout analyser les logs au moment des "coups de mous".

Cordialement, janus57

Raln
29/06/2015, 18h25
Bonjour,

Sur les logs il n'y a pas grand chose et niveau ram il consomme 1 gb sur 4gb.
La charge : load average: 1,61, 1,37, 0,99
Par compte les coeurs cpu sont des fois à 100 %

Merci d'avance.

janus57
28/06/2015, 13h20
Bonjour,

que donne les logs apache ?
Que donne les ressources du serveur (RAM/CPU) ?

C'est aussi à vous d'adapter la configuration en fonction de votre trafic/materiel, tout ce que je peu faire c'est proposer des configuration "type" car je connais absolument rien vis à vis de votre serveur (le nombre de sites, le type de serveur, le nombre de visiteurs, les logs d'erreurs, l'ip etc...).

De là vous êtes en prefork, donc avec de la chance je dirais que vous êtes aussi en mod_php ce qui ne doit pas forcément aider apache.

Cordialement, janus57

Raln
28/06/2015, 12h38
Bonjour,

Depuis que j'ai mis cette config, le serveur apache ram et j'ai des erreurs de page inaccessible quand il y a du monde.
Et le monitoring d'ovh me fait un down de 5m sur le port 80.

Je sais pas si c'est dû à cela ou pas ?

Merci d'avance

Raln
26/06/2015, 20h56
Merci pour votre aide,
Je vais donc regardé cela et je reviendrais ici.

janus57
24/06/2015, 10h19
Citation Envoyé par Raln
D'accord merci,
Mais je possède déjà awstats je pense donc que piwik n'est pas nécessaire si ?
Bonjour,

awstats se base sur les logs apache alors que piwik se base sur un tag JS (comme google analytics) ce qui de par sa nature ne compte pas les robots qui n'on pas JS d'activé, de plus pour piwik cela ne prendra pas en compte les visiteur qui ont des bloqueur de pubs avec des filtre qui bloque les trackers comme piwik/google/xiti etc...

Donc la combinaison de piwik + awstats peu potentiellement permettre d'avoir de meilleurs stats vis à vis des visiteur lamba/avancé/robots.

Après vous faite comme vous voulez, mais 2 outils de stats pour détecter les éventuels robots (ou du moins essayer de les dénombrer) cela peut être bien pour voir si lors des message y aurais pas un pic de visite de robots (que ce soit google/bing ou des méchants qui spam/bruteforce/Attaque), ce qui du coup plutôt que de gonfler la config apache permettrais d'aller voir dans les logs d'accès et se faire une petite jail fail2ban pour dégager les robots et si cela ne suffit pas permettrais de config mod-evasive un peu mieux contre les robots ou les visiteurs qui spamment violemment (à cause de virus sur leur PC par exemple).

Cordialement, janus57

Raln
23/06/2015, 23h37
D'accord merci,
Mais je possède déjà awstats je pense donc que piwik n'est pas nécessaire si ?

janus57
23/06/2015, 23h03
Citation Envoyé par Raln
Bonjour,

Merci pour votre aide, je vais donc essayer cela.
Je possède déjà awstats ainsi que munin comme outils de stats.
Bonjour,

munin c'est pas le top pour les stats web; le mieux serait piwik (comme google analytics suffit de mettre un JS de tracking), comme ça awstats + piwik permet de voir un peu plus "claire" (piwik risque d'éliminer les robots des stats vu que la plupart n'ont pas de JS, mais c'est de moins en moins vrais).

Cadeau : https://fr.piwik.org/liste-fonctions-piwik-analytics/

Cordialement, janus57

Raln
23/06/2015, 22h55
Bonjour,

Merci pour votre aide, je vais donc essayer cela.
Je possède déjà awstats ainsi que munin comme outils de stats.

janus57
23/06/2015, 22h36
Bonjour,

OK donc finalement c'est bien du prefork.

Du coup peut être essayer cette config :
Code:

StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxRequestWorkers 256
MaxConnectionsPerChild 5000
Après pour affiner la config il faudrait mettre en parallèle des stats de différentes sources (awstat + piwik par exemple) et aussi regarder les logs et mettre en place des règle de bannissement pour les robots spammeur/bruteforce (pour réduire la charge).

Cordialement, janus57

Raln
23/06/2015, 21h57
Bonjour,

Voici le résultat de la commande :

# apache2ctl -V
Server version: Apache/2.4.10 (Debian)
Server built: Mar 15 2015 09:51:43
Server's Module Magic Number: 20120211:37
Server loaded: APR 1.5.1, APR-UTIL 1.5.4
Compiled using: APR 1.5.1, APR-UTIL 1.5.4
Architecture: 64-bit
Server MPM: prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT="/etc/apache2"
-D SUEXEC_BIN="/usr/lib/apache2/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="mime.types"
-D SERVER_CONFIG_FILE="apache2.conf"

janus57
23/06/2015, 21h25
Bonjour,

mauvaise config je pense.

Que donne :
Code:
apache2ctl -V
Car je pense pas que cela utilise prefork au vu du message, cela doit soit utiliser worker soit event, donc pas le bon fichier de config.

Cordialement, janus57

Raln
23/06/2015, 20h03
Bonjour,

Merci pour ta réponse, voici la conf :


StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxRequestWorkers 150
MaxConnectionsPerChild 0



Peut-être que depuis la MAJ jessie cela à modifié les valeurs ?

Merci d'avance.

janus57
23/06/2015, 16h20
Bonjour,

pas de chance sur jessie le config n'est plus dans apache.conf =)

Elle est dans /etc/apache2/mods-enabled/mpm-*.conf

Il faut juste regarder le conf du MPM utilisé, qui par défaut est event (successeur de worker, et prefork n'est plus utilisé de base).

Cordialement, janus57

Raln
23/06/2015, 14h26
Bonjour,

En effet, j'ai fais ma migration jessie. J'ai donc Apache/2.4.10.
Voici la config apache : http://pastebin.com/6SSnrGbb

Merci d'avance.

janus57
23/06/2015, 13h29
Bonjour,

c'est quoi la config de apache ? et quel version de apache ? (là on dirais du 2.4 donc jessie).

Cordialement, janus57

Raln
23/06/2015, 11h50
Hello,

Je relance le sujet car aujourd'hui, même soucis plante d'apache :
[Tue Jun 23 10:51:38.933999 2015] [mpm_prefork:error] [pid 4521] AH00161: server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting
[Tue Jun 23 11:14:16.638785 2015] [mpm_prefork:notice] [pid 4521] AH00169: caught SIGTERM, shutting down

Merci d'avance.

Raln
29/05/2015, 18h55
D'accord je vais essayer tout cela.

Merci encore d'avoir pris le temps de me répondre et de m’aide.

janus57
28/05/2015, 17h49
Bonjour,

Je possède ipboard je sais pas si cela peut fonctionner avec ?
fail2ban oui du moment que la regex est bonne.

Comment peut-on savoir ce qu'il faut mettre dans failregex ? (ipboard)
regarder les logs et/ou la page de connexion pour mettre des regex sur ce que les bots spam le plus.

La page de connexion pour ipboard est : http://site.com/index.php?app=core&m...§ion=login
Et donc un log d'erreur/accès sur cette URL donne quoi dans vos logs ?

Sinon en théorie un regex du genre :
Code:
# IPBoard brute force auth filter: /etc/fail2ban/filter.d/apache-wp-login.conf:
#
# Block IPs trying to auth wp wordpress
#
# Matches e.g.
# 269.31.103.204 - [04/Oct/2013:14:37:40 +0200] "POST /index.php?app=core&module=global§ion=login HTTP/1.1" 200 299 "www.example.org/index.php"
#
[Definition]
failregex = ^ -.*POST /index.php\?app=core&module=global§ion=login HTTP.*
ignoreregex =
Cordialement, janus57

Raln
28/05/2015, 16h58
D'accord, merci.
Je possède ipboard je sais pas si cela peut fonctionner avec ?
Comment peut-on savoir ce qu'il faut mettre dans failregex ? (ipboard)
La page de connexion pour ipboard est : http://site.com/index.php?app=core&m...§ion=login

janus57
28/05/2015, 13h36
Bonjour,

Pour le regex fail2ban, c'est au niveau de quel prison/règle qu'il faut regarder ?
faut la créer soit même selon le type d'attaque/bruteforce que l'on souhaite bloquer.

Exemple pour wordpress (je sais pas si ça fonctionne mais en théorie oui) :
Code:
[apache-wp-login]

enabled = true
port    = http,https
filter  = apache-wp-login
logpath = /var/log/apache2/example.org/access.log
#bantime = 3600
maxretry = 8
Code:
# WordPress brute force auth filter: /etc/fail2ban/filter.d/apache-wp-login.conf:
#
# Block IPs trying to auth wp wordpress
#
# Matches e.g.
# 269.31.103.204 - - [04/Oct/2013:14:37:40 +0200] "POST /wp-login.php HTTP/1.1" 200 299 "www.monsitewp.net/wp-login.php"
#
[Definition]
failregex = ^ -.*POST /wp-login.php HTTP.*
ignoreregex =
Ce code (si il fonctionne) bann au bout de 8 tentative sur le fichier de connexion wordpress suivant le bantime (par défaut 600 de mémoire) & findtime (par défaut 300 de mémoire) de fail2ban.

Cordialement, janus57

Raln
28/05/2015, 12h58
Bonjour,

Merci pour tes explication.
Pour le regex fail2ban, c'est au niveau de quel prison/règle qu'il faut regarder ?
Je fais regarder au niveau de mod_evasive aussi.

Merci d'avance

janus57
28/05/2015, 12h50
Bonjour,

déjà je regarderais les graphs munin (apache2 surtout) au moment ou apache atteint la limite, ensuite il faut regarder dans les logs d'accès au moment ou la limite est atteindre et remonter sur les 5/10 minutes avant l'erreur, puis en fonctions du logs d'accès (crawling ou bruteforce) on agit en conséquence.

Si bing est un trop "trop" insistant sur le crawling je vous conseillerais de vous inscrire à leurs outils webmaster (chez google aussi).
Chez bing on peu "choisir la vitesse" du bot (Cf : http://www.bing.com/webmaster/help/c...ntrol-55a30302), donc lui dire que en jorunée (6H => 23H) il diminue la vitesse de scan et que la nuit il peu y aller à fond serait pas une mauvaise idée en soit.

Ensuite si les bot de scan/bruteforce sont trop présent on fait un regex fail2ban qui bann le bot si il spam une page de login et/ou page de post en boucle (au passage avertir les utilisateurs du forum de cette protection serait une bonne idée).

Sinon y a toujours moyen d'activer le mod_evasive, mais je connais pas sa config, mais avec l'aide d'internet (example :https://wiity.net/2014/03/02/mod_eva...s-pour-apache/) et le manuel apache il doit être possible de bien régler le tout sans pour autant bannir de client légitime et après derrière on peu mettre un regex sur la liste des banni par mod_evasive pour les re-bannir via fail2ban (si il insiste ou si c'est des bots).

Cordialement, janus57

Raln
28/05/2015, 12h17
Bonjour,

Oui il y a munin d'installé dessus.
Mhh, je dirais que j'ai le plantage depuis quelques mois.
Sinon j'ai vu que bing référence pas mal plus de 80 000 hits contre google qui en a que 23 000
Concernant les logs d'accès, il n'y a plus rien à 03:09. Mais j'ai vu qu'il y avait une connexion avec la même ip 78 fois à quelques secondes près.
J'ai aussi une autre ip en 178.137. qui spam pas mal le forum en faisant des tentatives de connexion avec des comptes
qui existe pas.

Merci d'avance.

janus57
28/05/2015, 11h57
Bonjour,

y a un munin ou autre logiciel de monitoring/supervision sur le serveur ?

Depuis quand y a ces erreurs ? (en moyenne pour le mois de Mars y a 61hits/secondes | 40 visiteurs/heures)
Que donne les logs d'accès au moment de ces erreurs (ça sent le bot de crawling qui abuse un peu ou carrément un bot de scan) ?

Cordialement, janus57

Raln
28/05/2015, 11h48
Merci pour ton aide.
Voici les visiteurs mensuel pour mon site qui le plus visité :

http://planet-upload.net/images/24b8...03651e9a64.jpg

J'en est un autre aussi qui lui bouffe pas mal de BP :
http://planet-upload.net/images/cec6...b607b412fe.jpg

Je sais pas si cela est bon ?

janus57
28/05/2015, 11h11
oups double post

janus57
28/05/2015, 11h05
Bonjour,

non d'après ce qu'on peu trouver sur le net itk se base sur la config de prefork.

Donc perso je verrais plus cette config (sans avoir vu le nombre de visiteurs sur vos sites) :
Code:

StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 300
ServerLimit 300
MaxRequestsPerChild 20000
Et si vous avez vraiment ps mal de visiteurs :
Code:

StartServers 10
MinSpareServers 10
MaxSpareServers 20
MaxClients 300
ServerLimit 300
MaxRequestsPerChild 20000
Donc possible d'avoir un graph ou des stats de visiteurs ?

EDIT :
faut pas oublier de restart apache

Cordialement, janus57

Raln
28/05/2015, 10h26
Bonjour,

Merci pour votre réponse.
Voici le résultat de la commande :
# apache2ctl -V
Server version: Apache/2.2.22 (Debian)
Server built: Dec 23 2014 22:48:29
Server's Module Magic Number: 20051115:30
Server loaded: APR 1.4.6, APR-Util 1.4.1
Compiled using: APR 1.4.6, APR-Util 1.4.1
Architecture: 64-bit
Server MPM: ITK
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/experimental/itk"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/etc/apache2"
-D SUEXEC_BIN="/usr/lib/apache2/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="/var/run/apache2/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="mime.types"
-D SERVER_CONFIG_FILE="apache2.conf"
Concernant la configuration d'apache :

StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 300
MaxRequestsPerChild 0
ServerLimit 300

StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0

StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
Je vois qu'en effet je n'ai pas augmenter les valeurs pour les 2 d'en bas, le soucis vient peut-être de là ?

Concernant l’outil d'analytics, je possède awstat.

Merci d'avance

janus57
28/05/2015, 10h10
Bonjour,

que renvois
Code:
apache2ctl -V
et ensuite que donne la config de apache au niveau des valeurs de "MaxClients" (doit y en avoir 3, mpm_prefork, mpm_worker et mpm_event).

Est-ce que vous avez des outils analytics pour voir les visiteurs/robots ?

Cordialement, janus57

Raln
28/05/2015, 10h02
Bonjour,

Je rencontre quelques soucis depuis quelques temps avec mon serveur sous debian 7 avec i-mscp.
En effet, mes sites deviennent souvent down et quand je vérifie dans les logs apache2 j'ai ;

[Thu May 28 03:32:08 2015] [error] server reached MaxClients setting, consider raising the MaxClients setting
[Thu May 28 06:25:05 2015] [notice] Graceful restart requested, doing restart

Pensant que c'était donc un problème de configuration apache, j'ai donc augmenté les valeurs. Mais même problème..
Et quand je fais un apache2 status, il est pourtant bien en route :

# /etc/init.d/apache2 status
Apache2 is running (pid 5029).

Je suis donc obligé de restart le serveur apache2 pour que cela refonctionne.

Avez-vous une idée d’où peut venir le soucis svp ?
Je pensait peut-être à une attaque/flood sur le port 80 ?

Merci d'avance.