Einrichtung des Let's-encrypt-Zertifikat ist fehlgeschlagen.

  • ... so, nachdem ich alle IPv6 Einträge auskommentiert hatte, komme ich inzwischen auch auf wieder auf meine pdadmin-Oberfläche, zwar ohne https aber zumindest über die IP-Adresse des Servers.

    Nun versuchte ich über die Oberfläche ein letsencrypt-Zertifikat einzurichten und das ging mit folgender Error-Meldung schief:


    Einrichtung des Let's-encrypt-Zertifikat ist fehlgeschlagen.

    $! = <Operation not permitted>, result = <--2019-08-13 19:48:29-- https://dl.eff.org/certbot-auto

    Resolving dl.eff.org (dl.eff.org)... 151.101.112.201, 2a04:4e42:3::201

    Connecting to dl.eff.org (dl.eff.org)|151.101.112.201|:443... connected.

    HTTP request sent, awaiting response... 200 OK

    Length: 68689 (67K) [application/octet-stream]

    Saving to: '/opt/pdadmin/bin/certbot-auto'


    0K .......... .......... .......... .......... .......... 74% 8.23M 0s

    50K .......... ....... 100% 6.54M=0.008s


    2019-08-13 19:48:29 (7.72 MB/s) - '/opt/pdadmin/bin/certbot-auto' saved [68689/68689]


    ###############################

    /opt/pdadmin/etc/ssl-validation/ -d http://www.velodream.de -d velodream.de

    ###############################


    Bootstrapping dependencies for Debian-based OSes... (you can skip this with --no-bootstrap)

    Get:1 http://security.debian.org/debian-security stretch/updates InRelease [94.3 kB]

    Ign:2 http://ftp.uni-kl.de/debian stretch InRelease

    Get:3 http://ftp.uni-kl.de/debian stretch-updates InRelease [91.0 kB]

    Hit:4 http://ftp.uni-kl.de/debian stretch Release

    Get:5 http://security.debian.org/debian-security stretch/updates/main amd64 Packages [502 kB]

    Fetched 688 kB in 1s (627 kB/s)

    Reading package lists...

    Reading package lists...

    Building dependency tree...

    Reading state information...

    ca-certificates is already the newest version (20161130+nmu1+deb9u1).

    ca-certificates set to manually installed.

    gcc is already the newest version (4:6.3.0-4).

    python is already the newest version (2.7.13-2).

    openssl is already the newest version (1.1.0k-1~deb9u1).

    openssl set to manually installed.

    The following additional packages will be installed:

    libexpat1-dev libpython-dev libpython2.7 libpython2.7-dev python-pip-whl

    python-pkg-resources python2.7-dev python3-virtualenv

    Suggested packages:

    augeas-doc augeas-tools python-setuptools

    Recommended packages:

    libssl-doc

    The following NEW packages will be installed:

    augeas-lenses libaugeas0 libexpat1-dev libffi-dev libpython-dev libpython2.7

    libpython2.7-dev libssl-dev python-dev python-pip-whl python-pkg-resources

    python-virtualenv python2.7-dev python3-virtualenv virtualenv

    0 upgraded, 15 newly installed, 0 to remove and 4 not upgraded.

    Need to get 33.9 MB of archives.

    After this operation, 58.9 MB of additional disk space will be used.

    Get:1 http://security.debian.org/debian-security stretch/updates/main amd64 libexpat1-dev amd64 2.2.0-2+deb9u2 [134 kB]

    Get:2 http://security.debian.org/debian-security stretch/updates/main amd64 libssl-dev amd64 1.1.0k-1~deb9u1 [1591 kB]

    Get:3 http://ftp.uni-kl.de/debian stretch/main amd64 augeas-lenses all 1.8.0-1+deb9u1 [420 kB]

    Get:4 http://ftp.uni-kl.de/debian stretch/main amd64 libaugeas0 amd64 1.8.0-1+deb9u1 [288 kB]

    Get:5 http://ftp.uni-kl.de/debian stretch/main amd64 libffi-dev amd64 3.2.1-6 [161 kB]

    Get:6 http://ftp.uni-kl.de/debian stretch/main amd64 libpython2.7 amd64 2.7.13-2+deb9u3 [1071 kB]

    Get:7 http://ftp.uni-kl.de/debian stretch/main amd64 libpython2.7-dev amd64 2.7.13-2+deb9u3 [28.2 MB]

    Get:8 http://ftp.uni-kl.de/debian stretch/main amd64 libpython-dev amd64 2.7.13-2 [20.1 kB]

    Get:9 http://ftp.uni-kl.de/debian stretch/main amd64 python2.7-dev amd64 2.7.13-2+deb9u3 [290 kB]

    Get:10 http://ftp.uni-kl.de/debian stretch/main amd64 python-dev amd64 2.7.13-2 [1126 B]

    Get:11 http://ftp.uni-kl.de/debian stretch/main amd64 python-pip-whl all 9.0.1-2+deb9u1 [1399 kB]

    Get:12 http://ftp.uni-kl.de/debian stretch/main amd64 python-pkg-resources all 33.1.1-1 [166 kB]

    Get:13 http://ftp.uni-kl.de/debian stretch/main amd64 python-virtualenv all 15.1.0+ds-1 [61.1 kB]

    Get:14 http://ftp.uni-kl.de/debian stretch/main amd64 python3-virtualenv all 15.1.0+ds-1 [57.7 kB]

    Get:15 http://ftp.uni-kl.de/debian stretch/main amd64 virtualenv all 15.1.0+ds-1 [19.7 kB]

    debconf: unable to initialize frontend: Dialog

    debconf: (TERM is not set, so the dialog frontend is not usable.)

    debconf: falling back to frontend: Readline

    debconf: unable to initialize frontend: Readline

    debconf: (This frontend requires a controlling tty.)

    debconf: falling back to frontend: Teletype

    dpkg-preconfigure: unable to re-open stdin:

    Fetched 33.9 MB in 1s (26.6 MB/s)

    dpkg: warning: 'ldconfig' not found in PATH or not executable

    dpkg: warning: 'start-stop-daemon' not found in PATH or not executable

    dpkg: error: 2 expected programs not found in PATH or not executable

    Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin

    E: Sub-process /usr/bin/dpkg returned an error code (2)

    certbot-auto failed>


    Hat das schon jemand über die Oberfläche mit einer frischen Debian 9 Installation geschafft?


    Vielen Dank für Euer Feedback und Eure Hilfe,

    RudiX

  • Ja, das ist alles vorhanden.

    ldconfig in /usr/sbin mit 755

    ldconfig -V

    ldconfig (Debian GLIBC 2.24-11+deb9u4) 2.24


    ll /etc/init.d/

    insgesamt 68

    -rwxr-xr-x 1 root root 1232 Apr 7 2017 console-setup.sh

    -rwxr-xr-x 1 root root 3049 Okt 7 2017 cron

    -rwxr-xr-x 1 root root 2813 Jun 9 23:42 dbus

    -rwxr-xr-x 1 root root 6754 Jul 20 13:32 exim4

    -rwxr-xr-x 1 root root 3809 Mär 7 2018 hwclock.sh

    -rwxr-xr-x 1 root root 1479 Mai 19 2016 keyboard-setup.sh

    -rwxr-xr-x 1 root root 2044 Dez 26 2016 kmod

    -rwxr-xr-x 1 root root 4597 Sep 16 2016 networking

    -rwxr-xr-x 1 root root 1191 Mai 17 2018 procps

    -rwxr-xr-x 1 root root 2868 Jan 18 2017 rsyslog

    -rwxr-xr-x 1 root root 4033 Mär 1 17:19 ssh

    -rwxr-xr-x 1 root root 731 Jun 5 2017 sudo

    -rwxr-xr-x 1 root root 6087 Okt 28 2018 udev

    -rwxr-xr-x 1 root root 2757 Nov 23 2016 x11-common


    Scripts ebenfalls mit 755


    Oh, da ist ja exim4, gleich deinstalliert ;-))


    Ich denke eher das letsencrypt über pdadmin auf andere Pfade zeigt???


    Gruß RudiX

  • ... so nun habe ich mal den Redirect wie hier kein administrator - Zugang mehr beschrieben eingetragen, jetzt geht gar nix mehr. Kann die Admin-Oberfläche nicht mal über die IP-Adresse starten.


    Wird denn die Grundinstallation einer aktuellen SE und PD-Version unter Debian 9 seitens Bradler&Krantz nicht mal getestet?
    Alles seltsam, nur gut dass es dieses Forum gibt, ordentliche Dokumentation oder Hilfe im System ist ja nicht vorhanden.

    Kann doch nicht sein, dass es jedesmal Stunden braucht um ein lauffähiges Grundsystem aufzusetzen?


    Gruß RudiX

  • ... danke für die Info, PRIMA, aber das bringt mich keinen MilliMeter weiter.

    ... zudem bietet B&K das Installationsimage für Debian 9 für seine V-Server an.


    .... wäre ja schön, wenn sich Herr Bradler auch mal melden könnte.


    Gruß RudiX

  • Also die Meldung ist, dass ldconfig und start-stop-daemon nicht in der PATH Variable gefunden werden. Es gibt ja noch andere Debian 9 Nutzer, welche dieses Problem bisher nicht berichtet haben.


    Sucht man nach den Fehlern findet man einige Hinweise wie diese hier:


    https://developpaper.com/bug-r…config-start-stop-daemon/


    Wie sieht denn die PATH Variable aus? Dies kann auch unter /etc/environment gesetzt werden.

  • Hallo Sumeragi,

    das alles hängt nicht an der PATH-Variable, die ganzen Python-Pakete ... musste ich nachinstallieren und den User erstmal in die Gruppe sudo setzen!


    1.) adduser <customername> sudo

    2.) apt-get install libexpat1-dev libpython-dev libpython2.7 libpython2.7-dev python-pip-whl

    python-pkg-resources python2.7-dev python3-virtualenv

    3.) apt-get install augeas-doc augeas-tools python-setuptools

    4.) apt-get install libssl-doc

    5.) ???

    6.) apt-get install python2.7-dev python3-virtualenv

    7.) apt-get install libffi-dev libssl-dev python-dev python-virtualenv python2.7-dev

    python3-virtualenv virtualenv

    8.) apt-get update && apt-get upgrade


    Aber,

    https://<hostname>/administrator geht immer noch nicht, auch nicht mit dem Redirect, wie Du es schon gepostet hast, es ist zum Mäusemelken!!!!


    Gehe am Montag auf mehrtägige bzw. mehrwöchige Radreise, ... wäre ja alles zu schön gewesen, ...
    Vielen Dank für Deinen Support, vielleicht haste ja noch ne Idee?


    Gruß, RudiX

  • ... so hier die Fehlermeldung von Firefox beim Aufruf über https://<SERVERNAME>/administrator


    /*schnipp*/

    vpscobra.service4it.com verwendet eine Sicherheitstechnologie namens "HTTP Strict Transport Security (HSTS)", durch welche Firefox nur über gesicherte Verbindungen mit der Website verbinden darf. Daher kann keine Ausnahme für die Website hinzugefügt werden.

    /*schnapp*/


    Wie kann ich für den SERVERNAME dieses HSTS abschalten?

    Ist in der pdadmin-Oberfläche nix zu finden, unter SSL gibt's jedoch den Punkt --> Zertifikat bestellen?


    Muss vielleicht ein letsencrypt-Zertifikat manuell angelegt werden?


    Gruß, RudiX

  • Ich nutze CentOS und habe Debian ein, zwei Mal zum Testen installiert. Hatte mit pd-admin keine Probleme bei den Tests. Mir ist daher etwas schleierhaft, wieso Endkunden in die sudoers Datei eingetragen werden müssen.


    Aber erst einmal zum Problem mit dem Zertifikat für den Hostnamen:

    ... so hier die Fehlermeldung von Firefox beim Aufruf über https://<SERVERNAME>/administrator


    /*schnipp*/

    vpscobra.service4it.com verwendet eine Sicherheitstechnologie namens "HTTP Strict Transport Security (HSTS)", durch welche Firefox nur über gesicherte Verbindungen mit der Website verbinden darf. Daher kann keine Ausnahme für die Website hinzugefügt werden.

    /*schnapp*/

    Prüft man vpscobra.service4it.com, sieht man dass das Zertifikat nicht zur URL passt:

    Offenbar ist http://www.service4it.com auf dem Server als Domain angelegt und hierfür ein Lets Encrypt Zertifikat eingerichtet. HSTS ist dann im Endkundenmenü über Subdomain konfigurierbar. Das Problem hier ist aber nicht HSTS, sondern ein falsches Zertifikat.


    Warum ist das so?


    Für den Hostnamen gibt es offenbar kein SSL-Zertifikat. Nun fragt man den Apache aber explizit auf Port 443 (Aufruf mittels https://...) nach einer gesicherten Verbindung. Da kein vhost mit Servernamen:443 gibt, wird der erste vhost in der Apache Konfiguration mit Port 443 verwendet. Dies ist in diesem Fall http://www.server4it.com . Kann man auch prüfen, in dem man die httpd.conf öffnet und nach ":443" sucht. Der erste Treffer ist dann http://www.service4it.com.

    Muss vielleicht ein letsencrypt-Zertifikat manuell angelegt werden?

    Ganz genau. Die Einrichtung für den Hostnamen muss manuell erfolgen. Über die Weboberfläche oder /opt/pdadmin/bin/letsencrypt geht dies nicht für den Hostnamen.


    1. Zertifikat ausstellen:

    Shell-Script
    1. /opt/pdadmin/bin/certbot-auto-o certonly --webroot -w /opt/pdadmin/etc/ssl-validation/ -d vpscobra.service4it.com

    2. Symlinks erstellen:

    Shell-Script
    1. ln -s /etc/letsencrypt/live/vpscobra.service4it.com/privkey.pem /opt/pdadmin/sslcerts/vpscobra.service4it.com-key
    2. ln -s /etc/letsencrypt/live/vpscobra.service4it.com/cert.pem /opt/pdadmin/sslcerts/vpscobra.service4it.com-cert
    3. ln -s /etc/letsencrypt/live/vpscobra.service4it.com/fullchain.pem /opt/pdadmin/sslcerts/vpscobra.service4it.com-cacert

    3. Apache Konfig neu schreiben:

    Code
    1. /opt/pdadmin/bin/httpd_vhosts.pl

    Das sollte es gewesen sein und die Weboberfläche sollte wieder erreichbar sein. Falls es zu Fehlern kommt, bräuchten wir hier die durchgeführten Schritte, sowie den vollständge Fehlermeldung, um bei Problemen helfen zu können.

  • Upps, mein Fehler. Falsch mit Copy&Paste gearbeitet. Die Ordner werden vom certbot automatisch angelegt. Richtig ist natürlich

    Code
    1. /opt/pdadmin/bin/certbot-auto-o certonly --webroot -w /opt/pdadmin/etc/ssl-validation/ -d vpscobra.service4it.com