Apache2ctl

Résolu
Bonjour,

J'utilise depuis peu Ubuntu, j'ai un serveur Nextcloud je voudrais créer un certificat avec Certbot.
Mon serveur marche parfaitement mais lorsque je fais "sudo apache2ctl start" j'ai un message d'erreur

(13)Permission denied: AH00072: make_sock: could not bind to address [::]:80
(13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.

Pourtant "sudo service apache2 start" fonctionne. Apparemment c'est un problème avec mon port 80 mais je ne sais pas comment résoudre le problème. Pouvez-vous m'aider ? En vous remerciant d'avance.

5 réponses

  1. Modérateur
    Bonjour,

    Je ne vois pas à quel moment
    apache2ctl
    est nécessaire pour
    certbot
    . Voici selon moi les étapes

    1) On installe LAMP :

    sudo apt-get update
    sudo apt-get install apache2 default-mysql-server libapache2-mod-php
    sudo a2enmod php7.2
    sudo service apache2 restart


    Remarque : adapter le numéro de version de PHP conformément au module disponible, voir contenu de
    /etc/apache2/mods-available
    .

    2) On installe le nécessaire pour
    certbot
    :

    sudo a2enmod ssl
    sudo service apache2 restart
    sudo apt-get install certbot python-certbot-apache
    certbot --apache


    Bonne chance
    0
    1. Merci de m'aider, effectivement j'ai déjà effectué ses manipulations. En fouillant un forum j'ai cru comprendre pour résoudre une erreur je devais résoudre
      apache2ctl
      .

      Je ne peux pas créer mon certificat car quand j'effectue
      sudo certbot --apache


      Saving debug log to /var/log/letsencrypt/letsencrypt.log
      Plugins selected: Authenticator apache, Installer apache
      Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
      An unexpected error occurred:
      Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 292, in ssl_wrap_socket
      context.load_verify_locations(ca_certs, ca_cert_dir)
      FileNotFoundError: [Errno 2] No such file or directory

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/requests/adapters.py", line 376, in send
      timeout=timeout
      File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 560, in urlopen
      body=body, headers=headers)
      File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 346, in _make_request
      self._validate_conn(conn)
      File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 787, in _validate_conn
      conn.connect()
      File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 252, in connect
      ssl_version=resolved_ssl_version)
      File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 294, in ssl_wrap_socket
      raise SSLError(e)
      requests.packages.urllib3.exceptions.SSLError: [Errno 2] No such file or directory

      During handling of the above exception, another exception occurred:

      requests.exceptions.SSLError: [Errno 2] No such file or directory


      Pourtant les paquets
      certbot python-certbot-apache
      sont bien installés :

      python-certbot-apache est déjà la version la plus récente (0.25.0-2+ubuntu16.04.1+certbot+1).
      0 mis à jour, 0 nouvellement installés, 0 à enlever et 8 non mis à jour.
      0
      1. Modérateur
        Bonjour,

        Je suspecte que tu n'as pas installé openssl :
        https://stackoverflow.com/questions/27726815/requests-exceptions-sslerror-errno-2-no-such-file-or-directory

        Peux-tu lancer :
        sudo apt-get install openssl
        .

        Sinon pour information, je viens de regarder le paquet
        certbot
        et visiblement ils sont passés à python3. Je pense que la seule chose que ça change par rapport à mon tutoriel ci-dessus, c'est qu'il faut remplacer
        sudo apt-get install certbot python-certbot-apache
        par
        sudo apt-get install certbot
        étant données les nouvelles dépendances. Essaye de reprendre les étapes que je t'ai indiquées, et reporte-moi les éventuelles erreurs.

        Bonne chance
        0
        1. Bonjour,

          Openssl est installé, j'ai fais comme tu me l'as indiqué, j'ai toujours la même erreur.
          0
      2. Modérateur
        Bonjour,

        (13)Permission denied: AH00072: make_sock: could not bind to address [::]:80 
        (13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80
        no listening sockets available, shutting down
        AH00015: Unable to open logs
        Action 'start' failed.


        Pour cette erreur, j'ai peut-être une idée de la cause. Est-ce que tu n'as pas déjà un processus qui utilise se port (e.g. nginx, une autre instance d'apache, etc...). Tu peux vérifier avec la commande
        netstat -ntlp
        .

        During handling of the above exception, another exception occurred:
        requests.exceptions.SSLError: [Errno 2] No such file or directory


        Concernant à cette erreur, je t'invite à regarder cette discussion. J'avoue que je ne vois pas trop comment ça peut résoudre le problème mais bon, ça ne coûte pas grand chose d'essayer...

        Il pourrait être intéressant de lancer
        strace certbot --apache
        pour déterminer le fameux fichier qui lui manque. En tout cas sur les machines où j'ai utilisé
        certbot
        , je n'ai pas eu besoin de faire cette manipulation (et je n'ai pas de fichier cacert.pem, ni dans
        /etc
        , ni dans
        /usr/local
        ).

        Autre piste, assure-toi que ta machine est bien à jour (j'ai utilisé
        certbot
        avec succès dans sa version
        0.27.0-1
        ).

        Bonne chance
        0
        1. Merci de m'aider, pour le problème No such file or directory.

          J'ai fais "strace certbot --apache" ainsi que "sudo apt-get update" "sudo apt-get full-upgrade"

          Maintenant j'ai OSError: could not find a suitable TLS CA certificate bundle, invalid path: /etc/ssl/certs/ca-certificates.crt
          0
      3. Modérateur
        Bonjour,

        Maintenant j'ai OSError: could not find a suitable TLS CA certificate bundle, invalid path: /etc/ssl/certs/ca-certificates.crt

        Pour le coup j'ai bien ce fichier sur la machine avec laquelle j'ai utilisé
        certbot
        . Ce fichier ne semble pas provenir d'un paquet de ce que j'ai pu voir avec
        apt-file
        ou avec packages.debian.org. A priori je regarderais dans ton cas du côté de
        update-ca-certificates
        , comme évoqué ici.

        Bonne chance
        0
        1. Bonjour, le problème est que mon dossier etc/ssl est vide !
          0
        2. Modérateur
          Ça n'est pas normal, vérifie ton installation d'openssl et au besoin lance :

          sudo apt-get update
          sudo apt-get install aptitude
          sudo aptitude update
          sudo aptitude reinstall openssl


          Bonne chance
          0