Linux

Marc-Christian Petersen: 2.2.21-3-secure

Címkék

A 2.2.x kernel szerelmeseinek. Találtam egy jónak látszó biztonsági kernel patchet, amelyet a 2.2.21-es kernel ellen kell alkalmazni. A patch elkövetője Marc-Christian Petersen a következőket mondja:

"Sokan használnak még mindig 2.2-es kernelt a 2.4 kernelfa helyett néhány jó okból."

A patch tartalma többek között: Openwall, Steath Networking, Ext3, ReiserFS, CriptoAPI, CIPE, AA patchek, FreeS/WAN, stb.

A patch letölthető innen.

Teljes feature lista:2.2.21-3 includes the following Patches:

----------------------------------------

o Openwall 1 for 2.2.21

o HAP 1 for Openwall 1 for 2.2.21

o Stealth Networking

o RAID v2.2.20-raid 4

- Autodetect

- Boot support (linear, striped)

o Ext3 Filesystem Support v0.07a

o ReiserFS v3.5.35

o IFF Dynamic Patch

o PPPoE

o CryptoAPI (Kerneli) 2.2.18-3

o CIPE (Crypto IP Encapsulation)

o Extended Attributes and ACL Support for ext2

- EA v0.8.26

- ACL v0.8.27

o Some NIC Driver adds:

- COMPEX-RL100a / Winbond-W89c840 PCI Ethernet

- Myson MTD803 PCI Ethernet

- National Semiconductor DP8381x series PCI Ethernet

- National Semiconductor DP8382x series PCI Ethernet

- Sundance ST201 "Alta" PCI Ethernet

o Adaptec AIC7xxx v6.2.4 Driver

o Most Patches of the AA-Kernel v2.2.21pre2aa2 tree

o MPPE v0.9.5

ppp_mppe is a module to support Microsoft

Point to Point Encryption in pppd. Mainly for

use in conjunction with pptpd to allow windows

machines to setup "secure" VPN's. :)

o BIGMEM (highmem) to allocate Memory >1GB

o USAGI v20020513-2.2.20

o BadRAM / BadMEM v2.2.19B

o FreeS/WAN v1.97

o IDE Backport from 2.4.x (IDE-Ole) v2.2.21.05202002

o IP Virtual Server v1.08 for 2.2 Kernels

o Tekram DC395 SCSI Controller Driver v1.40

o i2c v2.6.3

o lm-sensors v2.6.3

Andrea Arcangeli: A negatív dentry-k szerepe és hátránya

Címkék

A "directory entry" (dentry) egy belső adat szerkezet, amelyet arra használnak, hogy benne a filerendszer-beli file keresések (lookups) eredményeit tárolják. A "dentry cache" tartalmaz egy rakás frissen használt dentry-t, amely egy hasznos dolog. A dentry bejegyzések nem mások, mint azon fileok listája, amelyeket a legutóbb használtunk. Ez hasznos lehet akkor, ha rövid időn belül többször akarunk ugyanahhoz a filehoz hozzáférni. Megkeresni egy filet a dentry cacheben sokkal kevesebb időt (és erőforrást) vesz igénybe, mintha egy teljes filerendszer lookup-ot csinalnánk.A kernel rendelkezik egy negatív dentry lehetőséggel is. Nem nehéz kitalálni, hogy ez mire jó. Igen arra, hogy a nem létező fileok listáját tartalmazza. Andrea Arcangeli nem régen figyelmeztetett arra, hogy a negatív dentry-k nagy mennyiségű memóriát "zabálnak" meg. Az általa végzett kisérletek alatt azt tapasztalta hogy a negatív dentry-k memória lék módjára "megették" a memóriát. Az üzenetében küldött is egy patchet, amely azt hivatott elvégezni, hogy a negatív dentry bejegyzéseket gyorsan tisztítsa ki a memóriából.

A levélből jó kis thread alakult ki a Linux listán. A negatív dentry-k "ez a file nem létezik" bejegyzései fontos információt hordoznak. Pl. egy strace futtatása egy GNOME alkalmazáson egy csomó filerendszer-beli lookupot eredményezhet (a millió kapcsolódó library miatt) , vagy az apache-nak állandóan ellenőriznie kellene a .htaccess filet, a shellnek állandóan kutatnia kellene a végrehajtható állományok után, stb. Sokkal jobban járunk, ha egy bejegyzésből "bányásszuk" az infót arról, hogy melyik file nem létezik, mintsem ezt egy a rendszert jobban igénybe vevő rendszerhívással tennénk meg, és állandóan keresnénk a fileokat.

Arcangeli szerint a negatív dentry szerepe eléggé másodlagos.


Linus ezt cáfolja:

Arcangeli:

Negative dentries should be only temporary entities, for example between the allocation of the dentry and the create of the inode, they shouldn't be left around waiting the vm to collect them.

Torvalds:

Wrong. Negative dentries are very useful for caching negative lookups: look at the average startup sequence of any program linked with glibc, and depending on your setup you will notice how it tries to open a _lot_ of a

files that do not exist (the "depending on your setup" comes from the fact that it depends on things like how quickly it finds your "locale" setup from its locale path - you may have one of the setups that puts it in the

first location glibc searches etc).

Tehát a negatív dentry-k maradnak a továbbra is.

A /dev/port visszatérése a 2.5.x kernelbe

Címkék

Néhány héttel ezelőtt eltávolították a fejlesztők a /dev/port támogatást a fejlesztői kernelből. Ezután néhány felhasználó jelezte, hogy szükségük volna erre a támogatásra, mert valóban használják a /dev/port-ot, és örömmel vennék, ha visszakerülne a kernelbe. Martin Dalecki, aki a patchet készítette azt mondta, hogy akinek valóban szüksége van a /dev/port támogatásra, az patchelje vissza a kernelbe. Linus ezzel nem értett egyet.Linus levélben írta Daleckinek, hogy ez a hozzáállás nem nagyon produktív. Joga van ugyan eltávolítani a /dev/port támogatást - mivel a Linux kernel open source, tehát szabadon módosítható - és terjeszteni a kernelt ebben az állapotban, de nem biztos, hogy ez a helyes út. Minden esetre a /dev/port Linus döntésére visszakerült a development kernelbe.

LafiSoft számlázó for Linux V 1.0.9 update

Címkék



LafiSoft általános számlázó program V 1.0.9 frissitése

Változás:

-egy binális file használható minden linux alternativához,

-számlaformátum numerikus adatok nyomtatási pozició javitása,

-törzsadatok kezelési kényelmének javitása

-ablakelemek esetleges formai, méret hibáinak javitásaA www.lafisoft.hu átmenetileg 2002.06.09 24-óráig nem elérhető karbantartási munkák miatt. A frissités az alábbi cimről tölthető le:

ftp.tvnetwork.hu/lafisoft/lafisoft_raktar.1.0.9.i386.tar.gz

A tartalék lafisoft oldal a www.extra.hu/lafisoft címen megtalálható, feltöltése folyamatban.

Ben LaHaise: A kernel stack megosztása - új 4KB méretű stack

Címkék

A Linux kernel évek óta 8KB (two page) méretű stack-et használ minden futtatott processz cím területén. Ez a stack (verem) tartalmazza a "task struktúrát" (a kernel információit a futatott processzről), és helyet biztosít a dinamikus változóknak, stb. amelyek akkor használatosak, ha a rendszer kernel módban fut. Ez a 8KB méretű stack természetesen működik, de közel sem optimális. A legnagyobb probléma az, hogy találni kell két egymás mellett levő memória oldalt az új stack-nek, minden alkalommal, amikor is egy új processz létrejön. Ez egy terhelt rendszer memória esetén fragmentált memória struktúrához vezethet, és két szomszédos memória oldalt találni igazán nehéz feladat.Ben LaHaise készített egy patchet, amely a kernel stacket két 4KB méretű stackre bontja. Az egyik tartalmazza a task struktúrát és a normál kernel kód által van használatban (pl. a rendszerhívások kezelése), míg a másik félre van téve, és csak akkor kerül használatra, ha a kernel a megszakításokat kezeli (interrupts).

Az elkülönített megszakítás-kezelő stack nem új ötlet, számos mai operációs rendszer használja. Ennek a megoldásnak számos előnye van. Csak egy megszakítás veremre van szükség (processzoronként), így processzenként egy memória oldal szabadulhat fel. Mivel ezek a vermek felszabadulnak, ez azt eredményezheti, hogy a megszakítást kezelő verem elvileg többet lehet a processzor cache-ben, így ezzel is nőhet a rendszer teljesítménye. Ezen felül nincs többé szükség ez előbbiekben leírt két memória oldal lefoglalására az állandó kernel stack számára.

Ez egyetlen nagyobb hátránya, hogy mostantól a nem-interrupt kernel kódnak el kell férnie a kisebb veremben. Néhány kernel kód nem különösebben törödik a dinamikus változók méretével (jó programozói szokás szerint csináljunk jó nagyot, abban biztos elfér ;) - dinamikus változó az a változó, amely nem kap előre értéket, futási időben feszi fel azt, így előre nem, vagy csak elnagyolva lehet következteti a méretére) így meg van a lehetősége annak, hogy túlcsordul az új, fele akkora stack. Ennek elkerülésére Ben készített egy stack checker kódot, amely lehetővé teszi a stack méretének figyelemmel kísérését.

Linux kernel 2.5 státusz report

Címkék

Ismét pillantsunk bele a Linux kernel fejlesztésének mostani munkálataiba. Itt a legfrissebb 2.5-ös Linux kernel státusz jelentés.Merged

o in 2.5.1+ Rewrite of the block IO (bio) layer (Jens Axboe)

o in 2.5.2 Initial support for USB 2.0 (David Brownell, Greg Kroah-Hartman, etc.)

o in 2.5.2 Per-process namespaces, late-boot cleanups (Al Viro, Manfred Spraul)

o in 2.5.2+ New scheduler for improved scalability (Ingo Molnar)

o in 2.5.2+ New kernel device structure (kdev_t) (Linus Torvalds, etc.)

o in 2.5.3 IDE layer update (Andre Hedrick)

o in 2.5.3 Support reiserfs external journal (Reiserfs team)

o in 2.5.3 Generic ACL (Access Control List) support (Nathan Scott)

o in 2.5.3 PnP BIOS driver (Alan Cox, Thomas Hood, Dave Jones, etc.)

o in 2.5.3+ New driver model & unified device tree (Patrick Mochel)

o in 2.5.4 Add preempt kernel option (Robert Love, MontaVista team)

o in 2.5.4 Support for Next Generation POSIX Threading (NGPT team)

o in 2.5.4+ Porting all input devices over to input API (Vojtech Pavlik, James Simmons)

o in 2.5.5 Add ALSA (Advanced Linux Sound Architecture) (ALSA team)

o in 2.5.5 Pagetables in highmem support (Ingo Molnar, Arjan van de Ven)

o in 2.5.5 New architecture: AMD 64-bit (x86-64) (Andi Kleen, x86-64 Linux team)

o in 2.5.5 New architecture: PowerPC 64-bit (ppc64) (Anton Blanchard, ppc64 team)

o in 2.5.5+ IDE subsystem major cleanup (Martin Dalecki, Vojtech Pavlik)

o in 2.5.6 Add JFS (Journaling FileSystem from IBM) (JFS team)

o in 2.5.6 per_cpu infrastructure (Rusty Russell)

o in 2.5.6 HDLC (High-level Data Link Control) update (Krzysztof Halasa)

o in 2.5.6 smbfs Unicode and large file support (Urban Widmark)

o in 2.5.7 New driver API for Wireless Extensions (Jean Tourrilhes)

o in 2.5.7 Video for Linux (V4L) redesign (Gerd Knorr)

o in 2.5.7 Futexes (Fast Lightweight Userspace Semaphores) (Rusty Russell, etc.)

o in 2.5.7+ NAPI network interrupt mitigation (Jamal Hadi Salim, Robert Olsson, Alexey Kuznetsov)

o in 2.5.7+ ACPI (Advanced Configuration & Power Interface) (Andy Grover, ACPI team)

o in 2.5.8 Syscall interface for CPU task affinity (Robert Love)

o in 2.5.8 Radix-tree pagecache (Momchil Velikov, Christoph Hellwig)

o in 2.5.8+ Delayed disk block allocation (Andrew Morton)

o in 2.5.9 Smarter IRQ balancing (Ingo Molnar)

o in 2.5.11 Replace old NTFS driver with NTFS TNG driver (Anton Altaparmakov)

o in 2.5.11 Fast walk dcache (Hanna Linder)

o in 2.5.11+ Rewrite of the framebuffer layer (James Simmons)

o in 2.5.12+ Rewrite of the buffer layer (Andrew Morton)

o in 2.5.14 Support for IDE TCQ (Tagged Command Queueing) (Jens Axboe)

o in 2.5.14 Bluetooth support (no longer experimental!) (Maxim Krasnyansky, Bluetooth team)

o in 2.5.17 New quota system supporting plugins (Jan Kara)

o in 2.5.17+ Move ISDN4Linux to CAPI based interface (Kai Germaschewski, ISDN4Linux team)

o in 2.5.18 Software suspend (to disk & RAM) (Pavel Machek)

o in -dj Rewrite of the console layer (James Simmons)

o in -dj New MTRR (Memory Type Range Register) driver (Patrick Mochel)

o in -ac Strict address space accounting (Alan Cox)

o in -ac PCMCIA Zoom video support (Alan Cox)

o in -ac More complete NetBEUI stack (Arnaldo Carvalho de Melo, from Procom donated code)

o in -ac More complete IEEE 802.2 stack (Arnaldo, Jay Schullist, from Procom donated code)

o in -ac Add support for CPU clock/voltage scaling (Erik Mouw, Dave Jones, Russell King, Arjan van de Ven)

o in -ac Improved i2o (Intelligent Input/Ouput) layer (Alan Cox)

o Ready Better event logging for enterprise systems (Larry Kessler, evlog team)

o Ready Linux booting ELF images (Eric Biederman)

o Ready First pass at LinuxBIOS support (Eric Biederman)

o Ready Build option for Linux Trace Toolkit (LTT) (Karim Yaghmour)

o Ready New kernel build system (kbuild 2.5) (Keith Owens)

o Ready Read-Copy Update Mutual Exclusion (Dipankar Sarma, Rusty Russell, Andrea Arcangeli, LSE Team)

o Ready USB gadget support (Stuart Lynne, Greg Kroah-Hartman)

o Beta Serial driver restructure (Russell King)

o Beta New IO scheduler (Jens Axboe)

o Beta Add XFS (A journaling filesystem from SGI) (XFS team)

o Beta New VM with reverse mappings (Rik van Riel)

o Beta Fix long-held locks for low scheduling latency (Andrew Morton, Robert Love, etc.)

o Beta Add Linux Security Module (LSM) (LSM team)

o Beta Hotplug CPU support (Rusty Russell)

o Beta Per-mountpoint read-only, union-mounts, unionfs (Al Viro)

o Beta EVMS (Enterprise Volume Management System) (EVMS team)

o Beta LVM (Logical Volume Manager) v2.0 (LVM team)

o Beta Dynamic Probes (Suparna Bhattacharya, dprobes team)

o Beta Scalable CPU bitmasks (Russ Weight)

o Beta Page table sharing (Daniel Phillips)

o Beta ext2/ext3 online resize support (Andreas Dilger)

o Beta Add User-Mode Linux (UML) (Jeff Dike)

o Beta UDF Write support for CD-R/RW (packet writing) (Jens Axboe, Peter Osterlund)

o Beta Add hardware sensors drivers (lm_sensors team)

o Beta New kernel config system: CML2 (Eric Raymond)

o Beta Asynchronous IO (aio) support (Ben LaHaise)

o Alpha Better support of high-end NUMA machines (NUMA team)

o Alpha Overhaul PCMCIA support (David Woodhouse, David Hinds)

o Alpha Full compliance with IPv6 (Alexey Kuznetzov, Jun Murai, Yoshifuji Hideaki, USAGI team)

o Alpha UMSDOS (Unix under MS-DOS) Rewrite (Al Viro)

o Alpha Scalable Statistics Counter (Ravikiran Thirumalai)

o Alpha Linux Kernel Crash Dumps (Matt Robinson, LKCD team)

o Alpha Add support for NFS v4 (NFS v4 team)

o Alpha ext2/ext3 large directory support: HTree index (Daniel Phillips, Christopher Li, Ted Ts'o)

o Alpha Remove use of the BKL (Big Kernel Lock) (Alan Cox, Robert Love, Neil Brown, Dave Hansen, etc.)

o Alpha Zerocopy NFS (Hirokazu Takahashi)

o Started Change all drivers to new driver model (All maintainers)

o Started Reiserfs v4 (Reiserfs team)

o Started Direct pagecache BIO disk I/O (Andrew Morton)

* Started Serial ATA support (Andre Hedrick)

o Draft #2 New lightweight library (klibc) (Greg Kroah-Hartman)

o Draft #3 Replace initrd by initramfs (H. Peter Anvin, Al Viro)

o Planning Add thrashing control (Rik van Riel)

o Planning Remove all hardwired drivers from kernel (Alan Cox, etc.)

o Planning Generic parameter/command line interface (Keith Owens)

o Planning New mount API (Al Viro)

o Planning Implement new device naming convention (Device naming team)

o Planning InfiniBand support (InfiniBand team)

Cleanups:

Merged

o in 2.5.3 Break Configure.help into multiple files (Linus Torvalds)

o in 2.5.3 Untangle sched.h & fs.h include dependancies (Dave Jones, Roman Zippel)

o in 2.5.4 Per network protocol slabcache & sock.h (Arnaldo Carvalho de Melo)

o in 2.5.4 Per filesystem slabcache & fs.h (Daniel Phillips, Jeff Garzik, Al Viro)

o in 2.5.6 Killing kdev_t for block devices (Al Viro)

o in 2.5.18+ ->getattr() ->setattr() ->permission() changes (Al Viro)

o in -dj Split up x86 setup.c into managable pieces (Patrick Mochel)

o Ready Switch to ->get_super() for file_system_type (Al Viro)

o Beta file.h and INIT_TASK (Benjamin LaHaise)

o Beta Proper UFS fixes, ext2 and locking cleanups (Al Viro)

o Beta Lifting limitations on mount(2) (Al Viro)

o Beta Remove dcache_lock (Maneesh Soni, IBM team)

o Started Reorder x86 initialization (Dave Jones, Randy Dunlap)

Alan Cox: Linux 2.4.19-pre10-[ac1, ac2]

Címkék

Alan Cox kiadta a 2.4.19-pre10 kernelhez az első foltját.

A folt letölthető innen.

Közben a cikk írásának időpontjában már kinn is van az -ac2.

Az -ac2 letölthető innen.From: Alan Cox

To: linux-kernel@vger.kernel.org

Subject: Linux 2.4.19-pre10-ac1

Date: Tue, 4 Jun 2002 20:00:57 -0400 (EDT)

[+ indicates stuff that went to Marcelo, o stuff that has not,

* indicates stuff that is merged in mainstream now, X stuff that proved bad and was dropped out]

Linux 2.4.19pre10-ac1

o Merge with Linux 2.4.19-pre10

Az -ac2 változások logja nem érhető el jelenleg. Amint meg lesz kiteszem azt is.

Linux Gazette #79

Címkék

Megjelent a Linux Journal által gondozott Linux Gazette 79-dik kiadása. A Linux Gazette egy havonta megjelenő, nagy múltra visszatekintő Linux támájú online újság. Az újság első száma 1995. júliusában jelent meg.

A 2002. júniúsi számban többek között olvashatunk a dillo webböngészőről, linux faxszerver építéséről windows hálózatokhoz, hard diszk teljesítmény növeléséről ``hdparm" segítségével, stb.

A Linux Gazette 79. számát itt olvashatod el.

Linux a német kormányzatban

Címkék

A német kormány egy megállapodást írt alá az IBM-el, és a német Linux disztribútor SuSE-vel, mely megállapodásban az szerepel, hogy a német kormány SuSE Linuxszal telepített gépeket vásárol az IBM-től. A megállapodás célja, hogy az open source operációs rendszer alkalmazásával csökkentsék a MicroSoft komoly jelenlétét a kormányzati szférában.A kormány még nem hagyta jóvá a Linux használatát, de most lehetőség nyilhat arra, hogy több száz szövetségi, regionális és lokális kormányzati gépet rendeljenek az IBM-től, amelyen SuSE Linux fut, természetesen diszkont áron. Azért annyira nem kell örülni, mielőtt a lépésre elszánták magukat, egyeztettek a MicroSofttal. A háttérben megegyeztek, hogy a publikus helyeken továbbra is M$ OS-t fognak használni. A Linux vásárlásnak főbb indítékai: növelni szeretnék a IT biztonságot a monokultára kiszorításával, csökkenteni szeretnék az rizikóját annak, hogy egy szoftver szállítótól függenek, továbbá a célkitűzések között szerepel a szoftverek üzemeltetési kölségeinek csökkentése.



A teljes cikket elolvashatod itt.

Zack Brown: Kernel Traffic #169

Címkék

Megjelent a Zack Brown által karbantartott, hetente rendszeresen megjelenő LKML levelezési lista kivonat, a Kernel Traffic legújabb száma.

Elolvashatod itt.