PowerPack 4.x.x

Nowa wersja PowerPack Kernel linia (4.x.x)

Prosty sposób na wdrożenie kernel’a 4.x.x na swoim routerze sieciowym, nakładamy praktycznie tylko dwie łaty.

Nowe stabilne wersje:

  • kernel-4.14.25 + iptables-1.6.2 + iproute2-4.14.0 + xtables-addons-1.47.1 + ipset-6.36 + nftables-0.8.3
  • kernel-4.9.86 + iptables-1.6.2 + iproute2-4.9.0 + xtables-addons-1.47.1 + ipset-6.36 + nftables-0.8.3

Łaty nałożone na kernel-4.x.x:

IMQ – ( Intermediate Queueing Device )
patch-ja1 – ( Jumbo patch containing the following parts )

Łaty nałożone na iptables-1.6.x:

iptables-imq – ( Intermediate Queueing Device )

Wykonanie:

Nałożenie plików *.diff, a więc zaczynamy:
Przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła kernel’a ze strony:

wget www.kernel.org/pub/linux/kernel/v4.x/linux-4.x.x.tar.xz

Rozpakowujemy źródła poleceniem:

tar Jxvf linux-4.x.x.tar.xz
ln -s linux-4.x.x linux

Przechodzimy do katalogu:

cd /usr/src/linux

Pobieramy patch poleceniem wget z tej strony zależnie do wersji jądra.
Nakładamy patch na kernel:

gzip -d kernel-4.x.x.diff.gz
patch -p1 < kernel-4.x.x.diff

Przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła iptables ze strony i rozpakowujemy źródła poleceniem:

wget www.netfilter.org/projects/iptables/files/iptables-1.x.x.tar.bz2
tar xjf iptables-1.x.x.tar.bz2
ln -s iptables-1.x.x iptables

Przechodzimy do katalogu:

cd /usr/src/iptables

W pobranym PowerPack’u znajdziemy patch do iptables.
Nakładamy patch na iptables:

gzip -d iptables-1.x.x.diff.gz
patch -p1 < iptables-1.x.x.diff

Przechodzimy do katalogu:

 cd /usr/src

Pobieramy źródła nftables ze strony i rozpakowujemy poleceniem:

 wget www.netfilter.org/projects/nftables/files/nftables-0.x.tar.bz2 tar xjf nftables-0.x.tar.bz2 ln -s nftables-0.x nftables

Przechodzimy do katalogu:

 cd /usr/src/linux make menuconfig

Teraz zaznaczamy opcje które potrzebujemy skompilować w nowym kernel’u i zapisujemy ustawienia. Wydajemy polecenie:

 make 2>&1 | tee /var/log/make.log && make modules_install 2>&1 | tee /var/log/make_modules.log

Kopiujemy plik skompilowanego jądra do katalogu /boot

cp /usr/src/linux/arch/x86/boot/bzImage /boot/lb-4.x.x
cp /usr/src/linux/System.map /boot/lb-4.x.x.map
ln -s /boot/lb-4.x.x.map /boot/System.map

Teraz już tylko zostało nam zmodyfikować plik lilo.conf, tu podaję mój przykładowy plik lilo.conf

# LILO configuration file
# generated by ‚liloconfig’
# Start LILO global section

boot = /dev/sda
message = /boot/LinuxBox.txt
prompt
timeout = 30
append=”vt.default_utf8=0″

# Normal VGA console
vga = 0x317

# Linux bootable partition config begins
default = lb-4.x.x

image = /boot/vmlinuz
root = /dev/sda1
label = Linux
read-only

image = /boot/lb-4.x.x
root = /dev/sda1
label = lb-4.x.x
read-only
# Linux bootable partition config ends

Po poprawnej modyfikacji pliku lilo.conf wydajemy polecenie:

lilo
reboot

Gdy system uruchomi się ponownie przystępujemy do kompilacji iptables 1.x.x:

cd /usr/src/iptables
./configure \
--prefix=/usr \
--libdir=/usr/lib64 \
--with-xtlibdir=/usr/libexec/xtables \
--enable-devel \
--enable-libipq \
--disable-static
make
make install

Dla nftables wymagane są jeszcze dwie biblioteki libmnl i libnftnl.

Przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła biblioteki libmnl ze strony i rozpakowujemy poleceniem:

wget www.netfilter.org/projects/libmnl/files/libmnl-1.0.x.tar.bz2
tar xjf libmnl-1.0.x.tar.bz2

Przechodzimy do katalogu:

cd /usr/src/libmnl-1.0.x
./configure \
--prefix=/usr \
--libdir=/usr/lib64
make
make install

Przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła biblioteki libnftnl ze strony i rozpakowujemy poleceniem:

wget www.netfilter.org/projects/libnftnl/files/libnftnl-1.0.9.tar.bz2
tar xjf libnftnl-1.0.x.tar.bz2

Przechodzimy do katalogu:

cd /usr/src/libnftnl-1.0.x
./configure \
--prefix=/usr \
--libdir=/usr/lib64
make
make install

Przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła biblioteki nftables ze strony i rozpakowujemy poleceniem:

wget netfilter.org/projects/nftables/files/nftables-0.x.tar.bz2
tar xjf nftables-0.x.tar.bz2

Przechodzimy do katalogu:

cd /usr/src/nftables
./autogen.sh &&
./configure \
--prefix=/usr \
--libdir=/usr/lib64 \
--sysconfdir=/etc \
--disable-silent-rules \
--localstatedir=/var/lib
make
make install

Przechodzimy do katalogu:

cd /usr/src

Pliki nagłówkowe (headers), przechodzimy do katalogu:

cd /usr/src/linux
make mrproper
make headers_check
make INSTALL_HDR_PATH=/usr headers_install

Przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła iproute2 dla wersji kernel 4.9.x korzystamy z iproute2 wersja 4.9.0, a dla wersji kernel 4.14.x pobieramy wersje 4.14.0, i rozpakowujemy poleceniem:

wget www.kernel.org/pub/linux/utils/net/iproute2/iproute2-4.x.x.tar.gz
tar zxvf iproute2-4.x.x.tar.gz

Przechodzimy do katalogu:

cd /usr/src/iproute2-4.x.x
./configure \
--prefix=/usr
make
make install

Po poprawnej kompilacji iproute2 przechodzimy do katalogu:

cd /usr/src

Pobieramy źródła ipset ze strony i rozpakowujemy poleceniem:

wget ipset.netfilter.org/ipset-6.x.tar.bz2
tar xjf ipset-6.x.tar.bz2

Przechodzimy do katalogu:

cd /usr/src/ipset-6.x
./configure \
--prefix=/usr \
--libdir=/usr/lib64 \
--disable-static \
--with-kmod=yes \
--with-kbuild=/lib/modules/4.x.x-LinuxBox/build
make
make install

Po poprawnej kompilacji ipset przechodzimy do katalogu:

cd /usr/src

Pobieramy najnowsze źródła xtables-addons ze strony i rozpakowujemy poleceniem:

wget sourceforge.net/projects/xtables-addons/files/Xtables-addons/xtables-addons-2.x.tar.xz
tar Jxvf xtables-addons-2.x.tar.xz

Przechodzimy do katalogu:

cd /usr/src/xtables-addons-2.x
./configure \
--prefix=/usr \
--libdir=/usr/lib64 \
--with-kbuild=/lib/modules/4.x.x-LinuxBox/build
make
make install

Od tej pory jesteśmy posiadaczami najnowszego kernel’a i narzędzi sieciowych dla wykonania taniego a o dobrych możliwościach routera z przeznaczeniem dla sieci. Wszystko tu wykonane powinno zadziałać na każdej dystrybucji Linux. Wykonałem to na swoim systemie matce LinuxBox.

Pobierz łatkę na kernel:

kernel-4.14.25 + iptables-1.6.2 + iproute2-4.14.0 + ipset-6.36 + nftables-0.8.3 PowerPack 4.14.25 (169 pobrań)
kernel-4.9.86 + iptables-1.6.2 + iproute2-4.9.0 + ipset-6.36 + nftables-0.8.3 PowerPack 4.9.86 (134 pobrania)
Top