Amazon EC2 Kernel Update

Auch in der Cloud ist man vor Sicherheitslücken im Linux Kernel nicht geschützt. Es empfiehlt sich die Security Listen der verwendeten Distribution regelmäßig zu lesen, oder besser den RSS Feed zu abonnieren. Taucht dann ein Eintrag wie dieser auf,

muss man reagieren!

Zuerst ermittelt man die aktuelle Version:

$ ssh root@ec2-xx-xx-xx-xx.eu-west-1.compute.amazonaws.com "uname -r"
2.6.32-309-ec2

Danach ermittelt man die ID der gewünschten Version:

$ ec2-describe-images -all|grep 2.6.32-311|grep "ubuntu-kernels/ubuntu-lucid-amd64"|cut -f2
aki-119ca965

Und der Instanz, die angepasst werden soll:

$ ec2-describe-instances|grep ec2-xx-xx-xx-xx.eu-west-1.compute.amazonaws.com|cut -f2
i-xxxxxxxx

Jetzt kann die neue Kernel Version konfiguriert werden. Dazu stoppt man die Instanz, ändert den Kernel und startet sie wieder.

ACHTUNG! Durch den Neustart werden sowohl die öffentliche, als auch die private IP der Instanz geändert. Ist auf dem System DRBD, oder eine MySQL Replikation aktiviert, muss die Konfiguration angepasst werden.

$ ec2-stop-instances i-xxxxxxxx
$ ec2-modify-instance-attribute --kernel aki-119ca965 i-xxxxxxxx
$ ec2-start-instances i-xxxxxxxx

Zum Schluss kontrolliert man, ob die neue Kernel Version erfolgreich gebootet wurde:

$ ssh root@ec2-xx-xx-xx-xx.eu-west-1.compute.amazonaws.com "uname -r"
2.6.32-311-ec2