Contenu | Rechercher | Menus

Annonce

L'équipe des administrateurs et modérateurs du forum vous invite à prendre connaissance des nouvelles règles.
En cas de besoin, vous pouvez intervenir dans cette discussion.

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/09/2018, à 08:59

phiibuntu

[RESOLU] arrêt du service Apache Aléatoire sans erreur.

Bonjour,

je rencontre un problème sur un serveur Apache et je ne parviens pas à faire un diagnostique.

J'y héberge un wordpress assez basique et il tournait à merveille depuis 2 ans.
Je ne vois pas dans le log d'erreur d'explication à mon problème qui est le suivant :

chaque jour le site devient inaccessible comme si le serveur Apache s'arretait (alors qu'il semble toujours être actif avec avec la commande: systemctl apache2 status)

une chose que je n'ai pas vérifié c'est cron (vu que c'est chaque jour que ça plante...) mais je ne sais pas où vérifier à vrai dire:)

Si quelqu'un avait une piste pour controler le bon fonctionnement je suis preneur...
Pour info un service apache2 restart fonctionne sans aucun message d'erreur et règle instantanément le problème

Bon en gros je sèche.

Merci d'avance smile

Dernière modification par phiibuntu (Le 10/10/2018, à 09:18)

Hors ligne

#2 Le 25/09/2018, à 09:07

bruno

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Bonjour,

Il faut examiner les logs d'Apache à l'heure où le site devient inaccessible.
Apache peut être actif et ne plus avoir assez de ressources pour fonctionner (MaxSpareServers, MaxRequestWorkers, etc.)

Hors ligne

#3 Le 25/09/2018, à 11:44

jlmas

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Je confirme la réponse de bruno

Pour en avoir un bon paquet en production, ils se font attaquer en permanence et sur quelques une d'entre eux, des petits malins essayent de les faire tomber à grand coup de requêtes sur la fonction xmlrpc.php

Si c'est le cas, tu vas avoir dans /var/log/syslog des Oom (Out of memory) suivi d'un dump des process au moment du crash.

Un moyen intéressant de se prémunir de ça est d’utiliser fail2ban, avec des règles spécifiques. Ce n'est pas la seule solution bien sur.

Hors ligne

#4 Le 25/09/2018, à 11:50

bruno

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

fail2ban bof…
Si tu as ce genre de problèmes le mieux est de désactiver XMLRPC dans Wordpress.

Hors ligne

#5 Le 25/09/2018, à 13:29

jlmas

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Effectivement, fail2ban à grande échelle pour se prémunir contre des attaques xmlrpc, est loin d'être la panacée. Il est beaucoup trop lent dans le cadre d'un DOS ou d'un DDOS et le serveur tombe avant même que quoi que ce soit n'ait été écrit dans les logs et donc que fail2ban ait pu les analyser.

Néanmoins, sachant que sur un serveur, c'est un produit assez utile, car son spectre d'utilisation est très large cf sa documentation que tu as écrite d'ailleurs wink , c'est une bonne idée de l'installer et une fois qu'il est là, tant qu'à faire on peut le configurer pour lui ajouter des règles relatives aux services que le serveur héberge.
On est d'accord qu'il y a par ailleurs des méthodes beaucoup plus efficaces que fail2ban , mais ça sort franchement du cadre de la question initiale.

Pour revenir au sujet, la réponse à la question se trouve dans les logs

Pour regarder les logs spécifique à cron

# egrep -i cron /var/log/syslog

Si tu veux tout savoir (et rien payer) à propos de ton serveur apache

# apache2ctl fullstatus

Hors ligne

#6 Le 26/09/2018, à 10:09

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

merci pour vos réponses
concernant :
fail2ban bof…
Si tu as ce genre de problèmes le mieux est de désactiver XMLRPC dans Wordpress.
j'ai fait les deux... ceinture et bretelles smile
pour les logs dans error.log le serveur apache shutdown tout seul ;( je vais regarder /var/log/syslog  de ce pas!)
Fail2ban est installé pour j'ai des bannissement pour sshd mais aucun pour apache-auth du coup je regarde ça je continue de chercher.

Et merci deja pour les pistes smile

si alors quand même j'ai ça dans les logs :
[mpm_prefork:notice] [pid 3899] AH00169: caught SIGTERM, shutting down
sans que j'ai demandé à apache de s'arrêter.

edit : à la commande  apache2ctl fullstatus j'obtiens le résultat ci-dessous.
/usr/sbin/apache2ctl: 101: /usr/sbin/apache2ctl: www-browser: not found
'www-browser -dump http://localhost:80/server-status' failed.
Maybe you need to install a package providing www-browser or you
need to adjust the APACHE_LYNX variable in /etc/apache2/envvars

Dernière modification par phiibuntu (Le 26/09/2018, à 10:13)

Hors ligne

#7 Le 26/09/2018, à 10:17

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

pas d'erreur Oom dans syslog...

Hors ligne

#8 Le 26/09/2018, à 11:19

pires57

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Salut,

Tu as un message d'erreur quand tu tentes d'accéder au site?


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#9 Le 26/09/2018, à 12:23

bruno

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Merci d'utiliser les balises [ code ] pour les retours de commandes et les extraits de logs. Ce sera beaucoup plus lisible.
Et donne les lignes de log complètes.

Hors ligne

#10 Le 26/09/2018, à 13:08

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

apache2ctl fullstatus
/usr/sbin/apache2ctl: 101: /usr/sbin/apache2ctl: www-browser: not found
'www-browser -dump http://localhost:80/server-status' failed.
Maybe you need to install a package providing www-browser or you
need to adjust the APACHE_LYNX variable in /etc/apache2/envvars

Hors ligne

#11 Le 26/09/2018, à 13:09

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

pires57 a écrit :

Salut,

Tu as un message d'erreur quand tu tentes d'accéder au site?

j'obtiens une page web avec site inaccessible (le serveur apache étant arrêter sans raisons que je comprenne pour l'instant).

Hors ligne

#12 Le 26/09/2018, à 16:38

ikoula

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Bonjour,

Il faudrait que tu exécutes des commandes deux ou trois fois dans la journée si ton problème se produit toutes les 24h.
#ps -faux
Pour voir si apache tourne/son statut et combien il y en a.
#free
Voir combien de ram disponible il y a


Thomas | Community manager | ikoula Serveurs dédiés, VPS et Cloud Public
Contactez-nous | Suivez-nous sur Twitter | Likez nous sur Facebook

Hors ligne

#13 Le 27/09/2018, à 09:22

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

le message exact c'est :

ERR_CONNECTION_REFUSED

et ok merci pour la commande je regarde smile

Hors ligne

#14 Le 27/09/2018, à 09:31

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

donc avec ps-faux
lorsque le serveur ne réponds plus je n'ai pas d'apache dans la list il est vraiment éteint.

donc je reviens plus dtard dans la journée après un peu de surveillance, mais je n'ai pas l'impression que le serveur (un vps ovh je n'ai pas précisé)
sature, la connexion ssh ou webmin est tjours très réactive et rapide je ne vois aucun ralentissement.

Hors ligne

#15 Le 27/09/2018, à 09:32

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

après un service apache2 start  voila ce que me retourne ps-faux concernant apache :

www-data 27783 12.3  1.8 608932 74536 ?        S    10:31   0:01  \_ /usr/sbin/apache2 -k start
www-data 27784  0.3  0.8 514408 32856 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start
www-data 27785  3.1  1.5 598056 59692 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start
www-data 27786  0.0  0.3 513316 11968 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start
www-data 27787  0.0  0.3 513316 11968 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start
www-data 27790  0.0  0.3 513316 11968 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start
www-data 27793  0.0  0.3 513316 11968 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start
www-data 27794  0.0  0.3 513316 11968 ?        S    10:31   0:00  \_ /usr/sbin/apache2 -k start

et free :

               total        used             free      shared    buff/cache   available
Mem:        3948100      408228     2332516       64776     1207356     3181640

Dernière modification par phiibuntu (Le 27/09/2018, à 09:33)

Hors ligne

#16 Le 28/09/2018, à 09:03

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

donc j'ai observé l'usage de la mémoire avec ps -faux
rien d'anormal, et cette nuit rebelote apache s'éteins  sans raison.
Je continue de chercher...

pour tester je supprimer tout (purge apache2 je vire les fichiers de config php apache etc) et je réinstalle au propre...

Hors ligne

#17 Le 28/09/2018, à 09:24

bruno

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

La réinstallation ne résout pas les problèmes…
Si apache s'arrête systématiquement toutes les nuits à la même heure, c'est probablement dû à une tache cron. Encore une fois il faut examiner les logs, ceux d'apache, ceux de cron et éventuellement syslog.
Pour les tâches cron quotidiennes il faut notamment regarder la rotation des logs.

Le retour de ces commandes pourrait être utile :

sudo apache2ctl -t
sudo apache2ctl -S
df -h

Dernière modification par bruno (Le 28/09/2018, à 09:24)

Hors ligne

#18 Le 28/09/2018, à 09:33

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Je sais bien pour la réinstall (mais au moins les fichier de conf purgés ca me fait repartir de quelque chose de propre a force de trifouiller dans ma config lol je me dis que j'ai peut être été la cause du problème...:) )

donc le retour des commandes ci-dessous (et merci pour le coup de main au passage)

sudo apache2ctl -t
Syntax OK

L'IP et le domaine je les aies modifié  mais ça ne change pas grand chose.

sudo apache2ctl -s
VirtualHost configuration:
111.111.111.111:443      www.domain.org (/etc/apache2/sites-enabled/domain.org.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex ssl-stapling: using_defaults
Mutex ssl-cache: using_defaults
Mutex default: dir="/var/lock/apache2" mechanism=fcntl
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
Mutex ssl-stapling-refresh: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33
 df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            1,9G     0  1,9G   0% /dev
tmpfs           386M   40M  347M  11% /run
/dev/vda1        20G  8,9G   11G  47% /
tmpfs           1,9G     0  1,9G   0% /dev/shm
tmpfs           5,0M     0  5,0M   0% /run/lock
tmpfs           1,9G     0  1,9G   0% /sys/fs/cgroup
tmpfs           386M     0  386M   0% /run/user/0

bah sauf erreur de ma part rien d'anormal, mais si je dois corriger quelque chose n'hésitez pas !

Hors ligne

#19 Le 28/09/2018, à 11:24

ikoula

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

D'accord mais le crontab il dit quoi ?

#crontab -l

Thomas | Community manager | ikoula Serveurs dédiés, VPS et Cloud Public
Contactez-nous | Suivez-nous sur Twitter | Likez nous sur Facebook

Hors ligne

#20 Le 28/09/2018, à 13:20

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

crontab -l
no crontab for root

Hors ligne

#21 Le 28/09/2018, à 13:23

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

crontab -u www-data -l
#*    *    *    *    *     cd /var/www/mondomain.org/imarche; php -f cron.php > /dev/null 2>&1

J'ai juste une commande cron (que j'ai déstactivé avec # au cas où cela soit la cause du problème mais non...) pour une install de suitecrm sur mon serveur ovh en plus de Wordpress.

Hors ligne

#22 Le 28/09/2018, à 14:40

bruno

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

Rien d'anormal en #18.
Il faut vraiment que tu arrives à déterminer si cela arrive toutes les nuits à la même heure.
Il faut regarder ce que tu as dans /etc/cron.daily et aussi voir si ce n'est pas la rotation des logs d'apache qui plante.

Hors ligne

#23 Le 30/09/2018, à 11:36

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

j'ai regardé le crontab rien d'anormal.

en fouinant un peu j'ai trouvé cette erreur :

apache2 -t
[Sun Sep 30 12:32:42.721475 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_LOCK_DIR} is not defined
[Sun Sep 30 12:32:42.721688 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_PID_FILE} is not defined
[Sun Sep 30 12:32:42.721794 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_RUN_USER} is not defined
[Sun Sep 30 12:32:42.722000 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_RUN_GROUP} is not defined
[Sun Sep 30 12:32:42.722118 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Sun Sep 30 12:32:42.734179 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_RUN_DIR} is not defined
[Sun Sep 30 12:32:42.734660 2018] [core:warn] [pid 19321] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf:
Invalid Mutex directory in argument file:${APACHE_LOCK_DIR}

ligne 74 j'ai ça
Mutex file:${APACHE_LOCK_DIR} default

c'est le seul truc qui parait poser un problème. Alors pourquoi il me fait planter mon apache serveur 1 fois minimum par 24 heure ça me dépasse impossible de trouver une piste ou un truc a corriger (sauf mutex directory, la je trouve pas comment corriger d'ailleurs).

Merci encore pour vos avis éclairés

Hors ligne

#24 Le 30/09/2018, à 12:06

bruno

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

La commande apache2 lance une instance du serveur Apache. Normalement elle ne doit pas être appelée directement depuis une console : elle appelée par un script d'init ou par une unité de service systemd.
D'autre part le fichier apache2.conf ne doit pas être modifié et la ligne que tu cites est normalement commentée (donc inactive).

Pour voir si cela ne vient pas de la rotation des logs tu peux lancer cette commande avec apache actif et fonctionnel :

sudo logrotate -f -v /etc/logrotate.d/apache2

et voir si cela arrête apache.

Il faut voir aussi où ton hôte virtuel /etc/apache2/sites-avaible/domain.org.conf envoie les logs.

Hors ligne

#25 Le 30/09/2018, à 12:27

phiibuntu

Re : [RESOLU] arrêt du service Apache Aléatoire sans erreur.

ok alors déjà la ligne n'était pas commenté ( # remis)

et sudo logrotate -f -v /etc/logrotate.d/apache2 avec apache actif et fonctionnel n'a pas d'impact.

service apache2 status après la commande ci-dessus donne :

service apache2 status
● apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since dim. 2018-09-30 12:40:17 CEST; 45min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 19510 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCES
  Process: 20272 ExecReload=/etc/init.d/apache2 reload (code=exited, status=0/SU
  Process: 19575 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCC
    Tasks: 7
   Memory: 56.0M
      CPU: 2.977s
   CGroup: /system.slice/apache2.service
           ├─19592 /usr/sbin/apache2 -k start
           ├─19717 /usr/sbin/apache2 -k start
           ├─20291 /usr/sbin/apache2 -k start
           ├─20292 /usr/sbin/apache2 -k start
           ├─20293 /usr/sbin/apache2 -k start
           ├─20294 /usr/sbin/apache2 -k start
           └─20295 /usr/sbin/apache2 -k start

Hors ligne