SSLClient Authentification

Aus crazylinux.de
Version vom 27. Februar 2007, 15:45 Uhr von Jonathan (Diskussion | Beiträge) (Die Seite wurde neu angelegt: Per Perl mittels SSL-Client-Certifikat an eine Webseite anmelden: <pre> #!/usr/bin/perl use IO::Socket::SSL;# qw(debug4); $host = "www.server.tld"; $port = 443; $url...)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Per Perl mittels SSL-Client-Certifikat an eine Webseite anmelden:

#!/usr/bin/perl
use IO::Socket::SSL;#  qw(debug4);

$host = "www.server.tld";
$port = 443;
$url = "/login";
$client_cert ="client.pem";
$client_key ="client_key.pem";
$key_passwd = "client_passwd";

my $client = new IO::Socket::SSL(SSL_use_cert => 1,
	#SSL_verify_mode => 0x01,
	SSL_cert_file => $client_cert,
	SSL_key_file => $client_key,
	SSL_passwd_cb => sub { return ($key_passwd)},
	#SSL_ca_file => $trusted_ca_file,
	#SSL_ca_path => $trusted_ca_path,
	PeerAddr => $host,
	PeerPort => $port,
	Proto => 'tcp',
	Timeout => '5'
);


if ($client) {
	print $client "GET $url HTTP/1.0\r\n\r\n";
	print <$client>;
	close $client;
} else {
	warn "I encountered a problem: ",
	IO::Socket::SSL::errstr();
}