I still don't know why I'm here
I wasn't going to comment on the recent openssl security update, because too many people have already done so.
Personally I thought that Aigars Mahinovs made the best writeup I've seen so far.
However I would like to say that having 20+ people all mailing security[at]debian.org to say the webpage we referenced in the security advisory is currently blank is not useful, or ask for details already released in the advisory they replied to, or ask for even more details is not so much fun.
Having people immediately start mailing questions like "Huh? What can I do" is only natural, but you can't expect a response when things are as hectic as they have been recently. Ideally people would sit on their hands and bite their tongues. Realistically that isn't going to happen, and realistically this post will make no difference either...
Had the issue not leaked to unstable so quickly (and inappropriately IMHO) then we'd have had a little more time. But once an issue is reported you need to coordinate with other distributions, and etc. Handling something as severe as this is not fun, and random mails from users are a distraction, and a resource-hog.
I should say I was not in any way involved in the discovery, the reporting, the preparation of the fix(es), or the releasing of the update. I knew it was coming, but everybody else seemed to have it well in hand. When there are mails going back and forth for 5+ days with ever-growing Cc: lists, and mailing lists being involved I figure one more cook wouldn't be useful.
So in conclusion:
a. Bad hole.
b. Fixing this will take years, probably.
c. 50+ mails to the security team within an hour of the advisory going public complaining of missing information is not helpful, not useful, and quite irritating. (Albeit understandable).
d. People who don't know the details of an attack, or issue, shouldn't speculate and start panic, fear, and confusion. Esp. when details are a little vague.
e. I still like pies.
Once again thanks to everybody who was involved and put in an insane amount of work. Yes this is only the start - our users have to suffer the pain of regenerating everything - but we did good.
Really. Debian did good.
It might not look like it right now, but it could have been so much worse, and Debian did do good.
ObQuote: X-Men: The Last Stand
Yea, just look at all the passion on that wall.
There should be a website to coordinate cinema-dates.
I don't like going to the cinema alone and have, in the past, frequently missed viewing films rather than go alone.
This is a habit I'm growing out of, but I still think it is better to go with a friend or two.
In the near future I'm going to view the last Indianna Jones movie, and the Sex & The City film. I have partners for both of those.
But after that? There are a few films which I can't immediately think of who I'm going to lure away with me. I could either :
If there were a site that had list of upcoming films, and allowed you to express interest in going to see them that would be a fantastic idea. (Obviously location based).
I'd not even assume "dating", because I think in my life I've had a first-date at a cinema once. When I was about 14. Because it just doesn't work - you can't talk during, (and back then we couldn't go to the pub afterward to discuss the film. I think we did anyway ;)
For bonus points you could allow people to rate the films, or even each other. Hmm.
Somebody write it for me? I've got too much on my plate ..probably
ObQuote: Se7en
You're not too technical, just ugly, gross ugly
Well a brief post about what I've been up to over the past few days.
An alioth project was created for the maintainance of the bash-completion package. I spent about 40 minutes yesterday committing fixes to some of the low-lying fruit.
I suspect I'll do a little more of that, and then back off. I only started looking at the package because there was a request-for-help bug filed against it. It works well enough for me with some small local additions
The big decision for the bash-completion project is how to go forwards from the current situation where the project is basically a large monolithic script. Ideally the openssh-client package should contain the completion for ssh, scp, etc..
Making that transition will be hard. But interesting.
In other news I submitted a couple of "make-work" patches to the QPSMTPD SMTP proxy - just tidying up a minor cosmetic issues. I'm starting to get to the point where I understand the internals pretty well now, which is a good thing!
I love working on QPSMTPD. It rocks. It is basically the core of my antispam service and a real delight to code for. I cannot overemphasise that enough - some projects are just so obviously coded properly. Hard to replicate, easy to recognise...
I've been working on my own pre-connection system which is a little more specialied; making use of the Class::Pluggable library - packaged for Debian by Sarah.
(The world -> Pre-Connection/Load-Balancing Proxy -> QPSMTPD -> Exim4. No fragility there then ;)
Finally I made a tweak to the Debian Planet configuration. If you have Javascript disabled you'll no longer see the "Show Author"/"Hide Author" links. This is great for people who use Lynx, Links, or other minimal browsers.
TODO:
I'm still waiting for the creation of the javascript project to be setup so that I can work on importing my jQuery package.
I still need to sit down and work through the Apache2 bugs I identified as being simple to fix. I've got it building from SVN now though; so progress is being made!
Finally this weekend I need to sit down and find the time to answer Steve's "Team Questionnaire". Leave it any longer and it'll never get answered. Sigh.
ObQuote: Shooting Fish
Only after disaster can we be resurrected
I leave my main desktop logged in for months a time; as demonstrated by my previous bug with the keyboard transition for xorg.
The screen is setup to lock after 5 minutes of idle, so there's no real security issue, and it is extremely convenient.
Every few weeks though my desktop gets into a funny state where no new windows may be opened.. Existing applications continue running without any problems, but no new windows/shells/whatever may be opened.
Tonight it happened again.
And the lightbulb went on in my head: My flat uses CFEngine to manage itself. (Two physical servers here, with 5-10 Xen guests, and a number of remote servers.)
One of the things that CFengine is configued to do is to tidy directories of files which are older than 30 days. Including /tmp.
So that explains that.
Every month the magic cookie in $TMP would be nuked, and X would disallow new connections.
I guess the next time this happens I should look at using Xauth to fix the issue, but generally I just logout, make coffee, smoke a cigarette, and login again.
In conclusion: I'm a stupid-head.
ObQuote: Fight Club
Please don't let them be as boring as Brian's friends
I made an emergency release of the chronicle blog compiler yesterday, after noticing that it was truncating titles containing periods.
That was a bit of a mea-culpea moment, but I guess mistakes happen.
The new release is in perfect shape for Lenny, and now includes two new scripts installed into the examples/ directory:
The latter was applied to my own blog, and I discovered several duplicates. I guess my film quotes having only a limited source collection to work from could also include duplicates - so I've updated my Makefile to only build and rysnc my blog if there are none detected.
(In many ways that films site is the precursor to this blog; it uses a collection of text files, one per film, and generates a cross-linked HTML output of film entries. Sadly it is out of date, because entering titles is a real pain..) Chronicle Comments
I'm pleased with the comment process now though, the CGI comment submission script simply archives each submitted comment into a "comments/" directory on the webserver.
There a cron-job passes each one through a bayasian filter and moves the file(s) to either "comments/good/", "comments/bad/" or "comments/unsure/".
When I come to rebuild the blog I rsync the "comments/good" directory to my local machine, rebuild and then rsync the output back to my remote webserver.
(On a single machine this would be much simpler process!)
I've imported my blog source into a mercurial repository, so the client-side is consistent. I have a bad habit of making new postings from wherever I happen to be and having a central repository will make that less prone to diaster.
Just running "make steve" against the Makefile is sufficient to rebuild everything and sync it to my live system.
ObQuote: Kalifornia
Fight in the shade
Tonight I'm going to enjoy a nice long sleep after attending The Beltane Fire Festival yesterday evening.
I did manage to sort out an SSL certificate yesterday, before I went out. A lengthier process than expected because the SSL-registrar was annoying and mailed the admin address listed in whois for my domain; rather than an address upon the domain itself.
I guess they can't be blamed for that, and the registrar did forward on the request when begged, so it wasn't the end of the world. For reference I used godaddy.com; who sold me a 3 year SSL certificate for about £25.
Today I've been mostly catatonic because I had only two hours sleep last night. But one good piece of news was receiving a (postal) mail from Runa in response to the letter I had sent her some time ago.
ObQuote: 300
Offer me everything I ask for
I installed Debian upon a new desktop machine yesterday, via a PXE network boot.
It was painless.
Getting xen up and running, with a 32-bit guest and a 64-bit guest each running XDMCP & VNC was also pretty straightforward.
There is a minor outstanding problem with the 32-bit xen guest though; connecting to it from dom0, via XDMCP, I see only a blank window - no login manager running.
GDM appears painlessly when I connect via VNC.
The relevent configuration file looks like this:
# /etc/gdm/gdm.conf [security] AllowRoot=true AllowRemoteRoot=true [xdmcp] Enable=true
The same configuration on the 64-bit guest works OK for both cases.
(I like to use XDMCP for accessing the desktop of Xen guests, since it means that I get it all full-screen, and don't have to worry about shortcuts affecting the host system and not the guest - as is the case if you're connecting via VNC, etc).
Weirdness. Help welcome; I'm not 100% sure where to look </blockquote>
Anyway, once again, a huge thank you to the Debian Developers, bug submitters, and anybody else involved peripherally (such as myself!) with Debian!
I love it when a plan comes together.
SSL
ObRandom: Where is the cheapest place to get an SSL certificate, for two years, which will work with my shiny Apache2 install?
Somebody, rightly, called me for not having SSL available as an option on my mail filtering website.
I've installed a self-signed certificate just now, but I will need to pay the money and buy a "real" one shortly.
So far completessl.com seems to be high in the running:
For double-bonus points they accept Paypal which most of my customers pay with ..
ObQuote: The Princess Bride
26 Apr 2008 (updated 26 Apr 2008 at 13:27 UTC) »
I want to be remembered
So I've made a new release of sift, the IMAP client/toy.
I think I named this one after looking up synonyms of "sieve", or "filter". Can't recall now.
The next time I release a toy application, tool, or hack, I will take the time to sit down and write namecheck. (Update: Too easy. Done.)
Here's what it looks like / how it should work:
skx@gold:~$ namecheck namecheck Testing freshmeat.net - Available Testing sourceforge.net - Available Testing alioth.debian.org - Available Testing code.google.com - Available Testing savannah.gnu.org - Available Name is currently not claimed
I guess it just comes down to having a list of URLs and patterns to test for:
http://freshmeat.net/projects/%s | We encounted an error http://sourceforge.net/projects/%s | Invalid Project http://alioth.debian.org/projects/%s | Invalid Project
A tool like that would be useful if you're bad at picking names for projects and want a reasonable chance of uniqueness. Looking up sites by hand is just fiddly and repetitive.
Of course "namecheck" is a provisional title; until it may be used to test that its own name is not in use ;)
Today I shall be mostly smoking, drinking, and trying to fix a dying steam engine. Good times.
ObQuote: Brief Encounter
Update: Quick hack: namecheck | future home in ~/bin/.
Syndicated 2008-04-26 11:50:06 (Updated 2008-04-26 13:27:11) from Steve Kemp's Blog
I want reliable people, people who aren't going to be carried away
OK I'm done with this now, the sift utility has been released.
I think that is a large overlap with imapfilter; but I win because I can write simple rules, rather than any actual code, to perform jobs.
In other news I flew my kite today, and I still like eating Pies: Thank God reading Debian Planet isn't mandatory.
ObQuote: The Godfather
19 Apr 2008 (updated 20 Apr 2008 at 15:09 UTC) »
On the other side of the screen, it all looks so easy
I've updated the IMAP utility that I mentioned previously, which has now been given the name sift. It will accept, and process, a much simpler configuration file format keeping state as it goes.
Here's my updated sample file:
username: blah.bah password: pas.word # # Comments are fine. # folder:livejournal status:new subject:temp mark:read exec:~/bin/notify folder:foo status:new mark:read folder:bar status:old exec:/usr/local/bin/record delete
Each line consists of a set of tokens, split by whitespace, which is "executed" in order.
So the first line selects the folder "livejournal", finds messages which are "new", then each message containing "temp" in the subject is marked as read, and the program "notify" is executed once for each match.
Essentially we keep a list of messages as "current" as we process each line, that list of messages is then refined as we move through the line. (When a folder is opened all messages are selected by default.)
As a simple example to delete all the messages contained in a folder we'd use this:
folder:foo delete
To refine that to only delete messages from "fred" we'd say:
folder:foo from:fred delete
(If there were no matches the "delete" action wouldn't occur.)
Consider each line of input a collection of filters each operating on the previous result. Simple to understand, simple to extend with more operations, and simple for me to code!
TODO: Add a "move:xxx" to move a message to folder "xxx", and a bit more polish, then release.
ObQuote: Tron.
Syndicated 2008-04-20 15:01:45 (Updated 2008-04-20 15:09:52) from Steve Kemp's Blog
FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!