Nova generacija paketa "kernel-2.6-cn"

Kako smo već prije najavili, jedan od najpopularnijih CARNetovih programskih paketa, kernel-2.6-cn, uskoro će biti objavljen, nakon što je doživio određene promjene u odnosu na prethodnu generaciju paketa.

Prvotno, CARNetov paket kernel-2.6-cn je bio nestandardni i modificirani kernel koji sadržava dodatke koje smo odabrali, implementirali i testirali za vas (najčešće su to dodaci za povećanje sigurnosti). Nažalost, ovakav pristup je značio određeno vremensko kašnjenje naših kernela u odnosu na službene Debianove zbog dodatnog kompleksnog testiranja i provjera koje smo morali provoditi.

Dodatno, s vremenom su originalni Debianovi kerneli postajali sve bolji, a neke zaštite su postale standardno implementirane u hardveru (poput zaštite od buffer overflow napada uporabom NX - No eXecute, tehnologije). Više informacija o tome možete naći na http://en.wikipedia.org/wiki/NX_bit.

Svi poslužitelji koje je CARNet isporučio ustanovama članicama u zadnjih 5-6 godina su ovog tipa (AMD64), a zaštićeni su čak i u 32-bitnom načinu rada (pod uvjetom da rabite BIGMEM kernel).

Odvagnuvši s jedne strane sve prednosti i mane modificiranog, a s druge službenog Debianovog kernela, odlučili smo napustiti izradu vlastitog kernela u korist uporabe Debianovog.

Za veliku većinu korisnika vidljivih promjena ne bi trebalo biti. Kernel-2.6-cn će i dalje postojati kao paket, jer on radi određene modifikacije sustava i trebao bi ostati na sustavu.

Od razlika između CARNetovog i Debianovog kernela, spomenut ćemo najbitnije:

- ExecShield - zamjenjuje ga hardverska zastita (NX-bit) unutar procesora (Athlon 64 i noviji, Pentium 4 i noviji).

- Layer 7 filtering - nije ugrađen u Debianove kernele. Novi paket kernel-2.6-cn ce detektirati ukoliko rabite L7 filtering i odbit će se instalirati. Svega nekolicina kolega rabi ovu tehnologiju, pa smatramo da ovo neće biti problem. Ukoliko ipak trebate imati ovakav kernel, a ne znate sami komplirati kernel, pomoći ćemo vam da sami napravite svoj kernel koji uključuje ovaj dodatak.

- druge razlike su male, i u većini slučajeva se jednak rezultat može dobiti podešavanjem sustava putem /etc/sysctl.conf konfiguracijske datoteke (što će raditi paket kernel-2.6-cn).

Vjerujemo da će navedena promjena, zbog brzog odziva Debianovog sigurnosnog tima, značiti i povećanu sigurnost vaših poslužitelja.

Instalacija je standardna (slijedi opširniji prikaz):

# apt-get update
# apt-get install kernel-2.6-cn

Moguće je da nećete morati eksplicitno navesti paket, nego će se paket kernel-2.6-cn izlistati kod redovite nadogradnje sa "apt-get dist-upgrade". Preporučujemo da instalirate paket cron-apt, koji će umjesto vas osvježavati bazu i skidati pakete (no i dalje traži da ručno potvrdite instalaciju paketa).

...
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be REMOVED:
linux-image-2.6.26-2+cn1-686-bigmem
The following NEW packages will be installed:
linux-image-2.6.26-2-686-bigmem linux-image-686-bigmem
The following packages will be upgraded:
kernel-2.6-cn
1 upgraded, 2 newly installed, 1 to remove and 0 not upgraded.
Need to get 20.5MB of archives.
After this operation, 4623kB of additional disk space will be used.
Do you want to continue [Y/n]? y
...
Fetched 20.5MB in 2s (9721kB/s)
Preconfiguring packages ...
kernel.exec-shield = 0
CN: Undiverting grub
removed `/usr/sbin/grub'
Removing `diversion of /usr/sbin/grub to /usr/sbin/grub.real by kernel-2.6-cn'
CN: Undiverting grub-probe
removed `/usr/sbin/grub-probe'
Removing `diversion of /usr/sbin/grub-probe to /usr/sbin/grub-probe.real by kernel-2.6-cn'
...
dpkg: linux-image-2.6.26-2+cn1-686-bigmem: dependency problems, but removing anyway
as you request:
kernel-2.6-cn depends on linux-image-2.6.26-2+cn1-686-bigmem
(>= 2.6.26-15lenny3+cn1) | linux-image-2.6.26-2+cn1-amd64 (>= 2.6.26-15lenny3+cn1); however:
Package linux-image-2.6.26-2+cn1-686-bigmem is to be removed.
Package linux-image-2.6.26-2+cn1-amd64 is not installed.
(Reading database ... 79023 files and directories currently installed.)
Removing linux-image-2.6.26-2+cn1-686-bigmem ...

Prilikom instalacije će se pojaviti sljedeći debconf upit: "Abort kernel removal?", na što morate odgovoriti sa "NO", kako je i označeno na slici:

 

Nastavak ispisa je ovakav:

Ok, proceeding with removing running kernel image.
Running postrm hook script /usr/sbin/update-grub.
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.26-2-686-bigmem
Found kernel: /boot/vmlinuz-2.6.24-etchnhalf.1+cn1-686-bigmem
Found kernel: /boot/memtest86.bin
Updating /boot/grub/menu.lst ... done

The link /initrd.img is a damaged link
Removing symbolic link initrd.img
you may need to re-run your boot loader
...
Preparing to replace kernel-2.6-cn 3:2.6.26-3 (using .../kernel-2.6-cn_3%3a2.6.26.6_all.deb) ...
CN: Disabled Exec-Shield.
...
W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.
W: mdadm: no arrays defined in configuration file.
...
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.26-2-686-bigmem
Found kernel: /boot/vmlinuz-2.6.24-etchnhalf.1+cn1-686-bigmem
Found kernel: /boot/memtest86.bin
Updating /boot/grub/menu.lst ... done

Setting up linux-image-686-bigmem (2.6.26+17+lenny1) ...
Setting up kernel-2.6-cn (3:2.6.26.6) ...
kernel.exec-shield = 0
CN: Backed up to /var/backups: sysctl.conf kernel-img.conf.
CN: Removed old symlinks in / and /boot.
CN: Undiverting binaries:.
CN: Configuring system (this will take a while): kernel-img.conf grub1 grub2 udev grub3
grub4 grub5 grub6 grub7 mdadm initramfs.
CN: Modifying the neccessary system files: oidentd sysctl.conf.
CN: Setting up PAM configurations: limits login.

Nakon instalacije, ne zaboravite odmah restartati računalo kako bi novi kernel postao aktivan. Provjerite koji je kernel aktivan sa naredbom uname.

Prije restarta (arhitektura kod vas može biti amd64 umjesto 686):

# uname -a
Linux server 2.6.26-2+cn1-686-bigmem #1 SMP Fri Nov 6 13:33:30 UTC 2009 i686 GNU/Linux

Nakon restarta bi izlaz naredbe trebao biti ovakav:

# uname -a
Linux server 2.6.26-2-686-bigmem #1 SMP Thu Sep 16 20:29:07 UTC 2010 i686 GNU/Linux

ili

# cat /proc/version
Linux version 2.6.26-2-686-bigmem (Debian 2.6.26-25lenny1) (dannf@debian.org)
(gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-25)) #1 SMP Thu Sep 16 20:29:07 UTC 2010

I na kraju, u ovom slučaju nikako ne preporučujemo instalaciju paketa preko naredbe "dpkg -i paket.deb", nego se oslonite na APT mehanizme.

 

Vijesti: 
Kategorije: 
Vote: 
5
Vaša ocjena: Nema Average: 5 (2 votes)