Wie wird der SSL-Port mit Befehlszeilen-Curl angegeben?


8

Ich versuche, die SSL-Verbindung auf einem meiner Server zu testen. Der Server befindet sich hinter einer LB und wartet auf SSL-Verbindungen am Port 8090.

Ich habe die --resolveOption zum Testen verwendet, wenn ich mit der LB spreche, die Port 443 abhört.

curl --resolve 'myservice.com:443:1.1.1.1' 'https://myservice.com'

Aber wenn ich es mache:

curl --resolve 'myservice.com:8090:2.2.2.2' 'https://myservice.com:8090'

curl ignoriert einfach den Port und geht mit 443. Dies führt natürlich dazu, dass der DNS-Cache fehlt und ich am Ende die öffentliche DNS-IP verwende ...

* Added myservice.com:8090:2.2.2.2 to DNS cache
* About to connect() to myservice.com port 443 (#0)
*   Trying 3.3.3.3...
* Connected to myservice.com (3.3.3.3) port 443 (#0)

Wie kann ich Curl zwingen, den Port 8090 für eine SSL-Verbindung zu verwenden?

Vielen Dank.


1
Seltsam ... funktioniert wie erwartet für mich in Curl 7.22.0 (x86_64-pc-linux-gnu) libcurl / 7.22.0 OpenSSL / 1.0.1 zlib / 1.2.3.4 libidn / 1.23 librtmp / 2.3
— Michael - sqlbot

Interessant, dass ich meine Locke aktualisieren werde. Es sieht so aus, als hätte ich die 7.29DEV-Version das letzte Mal installiert (das könnte das Problem sein). Danke fürs Testen.
— Nicolas GUILLAUME

Okay, das Problem ist behoben, es kam tatsächlich von einem Tool, mit dem ich die Curl-Anforderung erstellt habe, bei der der Header gelöscht wurde ... Vielen Dank für Ihre Zeit. Bitte
— poste

Danke, es schien keine große Antwort zu sein, aber zumindest haben Sie an verschiedenen Orten nach Ihrem Problem gesucht.
— Michael - sqlbot

Antworten:


1

Getestet mit curl 7.22.0 (x86_64-pc-linux-gnu) libcurl / 7.22.0 OpenSSL / 1.0.1 zlib / 1.2.3.4 libidn / 1.23 librtmp / 2.3 --resolvefunktioniert der Header wie erwartet mit https und einem nicht standardmäßigen Port an beiden Stellen angegeben.


3

Wenn dies --resolvenicht funktioniert, können Sie den Host-Header angeben (möglicherweise müssen Sie Zertifikatswarnungen mit unterdrücken -k):

curl -k -H 'Host: myservice.com' 'https://2.2.2.2:8090'

oder mit ausführlicheren Begriffen:

curl --insecure --header 'Host: myservice.com' 'https://2.2.2.2:8090'
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.