Weblog entry #192 for Steve

SSL & SQL
Posted by Steve on Tue 27 Nov 2007 at 22:07
Tags: , , , ,

The SSL certificate for this site had expired, so I've generated a new one which should be valid for the next 365 days.

If you wish to validate the new certificate please follow the SSL certification validation instructions.

Anybody who wishes to donate a real SSL certificate is welcome to offer ;)

The only other thing I've done today is write a small tool to allow people to run SQL queries against Apache logfiles.

If that sounds useful take a look at the asql page.

I'm hungry now, but all is well I've got some bacon ... Mmmm bacon.

 

Comments on this Entry

Posted by Anonymous (82.29.xx.xx) on Wed 28 Nov 2007 at 01:44
bacon mm :)

goes great with redsauce!

sno

[ Parent | Reply to this comment ]

Posted by Steve (80.68.xx.xx) on Wed 28 Nov 2007 at 09:38
[ Send Message | View Steve's Scratchpad | View Weblogs ]

Brown Sauce!

Steve

[ Parent | Reply to this comment ]

Posted by dkg (216.254.xx.xx) on Wed 28 Nov 2007 at 03:59
[ Send Message | View dkg's Scratchpad | View Weblogs ]
Thanks for the TLS tuneup, Steve. And asql looks very promising. A tool i didn't know i needed until i read about it. I hope to play with it soon. I want to ask all kinds of questions about how you know how to interpret the logs (since apache logs can be arbitrarily formatted) but i'll wait until i've taken the time to dig into the tool a bit to formulate the questions more concretely.

[ Parent | Reply to this comment ]

Posted by Steve (80.68.xx.xx) on Wed 28 Nov 2007 at 09:40
[ Send Message | View Steve's Scratchpad | View Weblogs ]

Unfortunately right now it uses a simple and pretty fragile regular expression... I would like to make it more generic in that regard, perhaps with Apache::LogRegex, but I've not yet done so.

Steve

[ Parent | Reply to this comment ]

Posted by oxtan (82.95.xx.xx) on Mon 3 Dec 2007 at 18:43
[ Send Message | View Weblogs ]
on page 812 of The Perl Cookbook (2nd edition) you have a great recipe for this (parsing a webserver log file):

while (<LOGFILE>) {
my ($client, $identuser, $authuser, $date, $time, $tz, $method,
$url, $protocol, $status, $bytes) =
/^(\S+) (\S+) (\S+) \[([^:]+):(\d+:\d+:\d+) ([^\]]+) "(\S+) (.*?) (\S+)"
(\S+) (\S+)$/;
# ...
}

it works great.

[ Parent | Reply to this comment ]

Posted by bdf (212.71.xx.xx) on Wed 28 Nov 2007 at 07:37
[ Send Message ]
Hello Steve,

Have you considered using a free certificate signing service, such as CAcert?

The CAcert root certificate is included in Debian's ca-certificates package, but people have to install it manually in Firefox, Windows and MacOSX. Nevertheless, once they installed this root certificate you can update your site certificate without disrupting them.

CAcert has a web-of-trust system to verify your identity, but you can get certificates for a webserver or e-mail address if you can respond to a ping e-mail.

Regards!
Bruno

[ Parent | Reply to this comment ]

Posted by ajt (204.193.xx.xx) on Wed 28 Nov 2007 at 12:33
[ Send Message | View Weblogs ]
How easy is CAcert to work with? I have considered doing this my self for my own server, but not got round to doing it yet.

--
"It's Not Magic, It's Work"
Adam

[ Parent | Reply to this comment ]

Posted by bdf (212.71.xx.xx) on Wed 28 Nov 2007 at 15:16
[ Send Message ]
Pretty easy. You can register certain e-mail addresses and domains or servers in your CAcert account, and it is verified through your response to ping e-mails that you indeed control these addresses or servers. You can then already submit a certificate signing request and get a basic certificate signed by CAcert.

To get a certificate that mentions your name, you have to join the web of trust and have your identity verified by physically meeting with other members. How easy this is depends on your region and the available members there. I did not get round to it yet.

[ Parent | Reply to this comment ]

Posted by dkg (216.254.xx.xx) on Wed 28 Nov 2007 at 15:56
[ Send Message | View dkg's Scratchpad | View Weblogs ]
bdf wrote:
CAcert has a web-of-trust system to verify your identity, but you can get certificates for a webserver or e-mail address if you can respond to a ping e-mail.
This doesn't add up, as far as i can tell. How is it a web of trust, if certificates are issued simply by responding to a ping e-mail? It sounds like it's still a centralized authority, granting certificates according to its particular policy. A web of trust would allow clients to verify the certificates via a number of channels, something that's not possible with the X.509 certificates used in standard TLS. (I wrote an article about this as part of a book about political implications of internet tech if you want to read the argument in more detail)

I'm happy that CACert is out there, but i'm not convinced that their model is better or more trustworthy than the commercial CAs. It's cheaper for the server owner, granted, but it uses the same broken underlying assumptions as the rest of the industry.

I trust a d-a.org certificate signed by Steve's GPG key more than i'd trust any certificate signed by a big international CA.

[ Parent | Reply to this comment ]

Posted by bdf (212.71.xx.xx) on Wed 28 Nov 2007 at 16:12
[ Send Message ]
Here's how it adds up: the certificates issued by just responding to a ping e-mail give less guarantees (essentially they just contain the common name, just enough to have your browser visit the site without complaining). They are also only valid for a shorter period. If you have your identity verified through the web of trust though, the certificate can contain your full name and it doesn't expire as fast. See this page.

I agree that X509 certificates has some broken assumptions, but verifying a server certificate through GPG is not exactly convenient.

[ Parent | Reply to this comment ]

Posted by dkg (216.254.xx.xx) on Wed 28 Nov 2007 at 16:56
[ Send Message | View dkg's Scratchpad | View Weblogs ]
Thanks for the followup, bdf. Those policies certainly set CACert apart from commerical CAs. But practically, CACert shares significant problems with the dinosaurs they're trying to replace:
  • Most users don't see any difference between a certificate with "less guarantees" and a "high-guarantee" certificate. If the "weaker", non-web-of-trust certificate is treated as functionally equivalent to the stronger one, the web of trust verifications don't gain anything. Is there anything i conveniently do with a popular, modern browser that will let me know what kind of certificate i'm looking at?
  • the web of trust for CACert is still routed through CACert's own authority. That is, a CACert web-of-trust-validated certificate claims that CACert claims that there are multiple channels through which the identity has been validated. But there's still a single point of failure in that chain: the CACert authority itself. If the CACert authority is compromised (technically or socially), it could be used to issue "web-of-trust-validated" certificates without an actual web of trust behind them. And given their choice of X.509 infrastructure, there is no convenient way for users to verify the multiple channels of trust directly.
I agree with you that verifying a server certificate via GPG is not convenient. But if you want to really verify a CACert-granted certificate when you receive it, it's not convenient either.

[ Parent | Reply to this comment ]

User Login

Username:

Password:

[ Advanced Login ]

Register Account

Quick Site Search