So erhalten und verwenden Sie Zertifikate mit Curl

  1. Folgenden Befehl eingeben

    curl -k [email protected]:password https://www.example.com 
    

    Gibt den folgenden Fehler zurück

     <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
    <TITLE>301 Moved</TITLE></HEAD><BODY>
    <H1>301 Moved</H1>
    The document has moved
    <A HREF="http://mail.google.com/mail/">here</A>.
    </BODY></HTML>
    badauth
    
  2. Nach dem Herunterladen der Datei cacert.crt von hier

    http://www.cacert.org/index.php?id=3
    

    Dann umbenannt die cacert.crt Datei in cacert.pem

    Dann versucht:

    curl --cacert /path/to/cacert.pem [email protected]:password https://www.example.com 
    

    Aber bekomme den gleichen Fehler.

  3. Dann versuche:

    curl  https://www.example.com 
    

    Ich bekomme diesen Fehler

    Curl: (60) SSL-Zertifikatsproblem: Lokales Ausstellerzertifikat kann nicht abgerufen werden Mehr details hier: http://curl.haxx.se/docs/sslcerts.html

    Curl führt standardmäßig eine SSL-Zertifikatüberprüfung durch, wobei ein "Bundle" öffentlicher Schlüssel (CA-Zertifikate) der Zertifizierungsstelle (Certificate Authority, CA) verwendet wird. Wenn die Standardbündeldatei nicht ausreicht, können Sie mit der Option --cacert eine alternative Datei angeben.
    Wenn dieser HTTPS-Server ein Zertifikat verwendet, das von einer im Bundle dargestellten Zertifizierungsstelle signiert wurde, ist die Zertifikatüberprüfung wahrscheinlich aufgrund eines Problems mit dem Zertifikat (it) fehlgeschlagen möglicherweise abgelaufen oder der Name stimmt möglicherweise nicht mit dem Domainnamen in der URL überein).
    Wenn Sie die Überprüfung des Zertifikats durch curl deaktivieren möchten, verwenden Sie die Option-k (oder --insecure)

  4. Also habe ich es mit -k

    curl  -k https://www.example.com 
    

    Aber natürlich bekomme ich den Fehler

    Badauth

Ich vermute, ich mache etwas falsch mit der Zertifikatdatei, aber ich weiß nicht, wo ich eine Zertifikatdatei bekommen soll oder was ich damit machen soll, sobald ich es.

Ich habe natürlich kein Problem damit, mich mit einem Browser anzumelden, aber ich möchte den Prozess mit der Befehlszeile automatisieren, damit ich dies mit Tasker auf meinem Android-Tablet über WLAN tun kann.

Author: 7ochem, 2013-10-07

2 answers

ERFOLG!!

Ich ging durch einen kostenlosen Web-Service namens dnsomatic (von den Leuten bei opendns laufen)

Es ist so einfach wie die Anmeldung für ein Konto und das hinzufügen von opendns zu Ihren Diensten. Keine Konfiguration darüber hinaus.

Für Android-Benutzer sind Busybox-Versionen von wget weit hinten und haben keine Optionen zur Verwendung von Benutzernamen und Kennwörtern, daher müssen wir cURL installieren und verwenden

Die Anleitung zur Installation von curl finden Sie hier

Http://forum.xda-developers.com/showthread.php?t=2362386

Sobald Sie curl haben, können Sie einfach Dinge wie das Aktualisieren Ihrer opendns ip

curl -u opendnsusername:password http://updates.dnsomatic.com/nic/update?hostname=opendnshostname
 2
Author: Joshua Robison,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-10-24 22:23:49

Sie können die cacert-Stammzertifikate hier herunterladen: http://www.cacert.org/index.php?id=3

 1
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-10-07 09:25:02