The current build of iptables does not appear to include some modules. Among these are
ipt_recent.so, a very handy module in deflecting the current flurry of sshd dictionary
attacks. Lineox appears to have the same problem.
This is because the RedHat source rpm spec file is not explicit in the kernel directory
location and that omission affects these few modules. Required changes in the spec file
are in bold and italics (everywhere there is a /usr just replace it by /usr/src/linux-2.4):
make COPT_FLAGS="$OPT" KERNEL_DIR=/usr/src/linux-2.4 LIBDIR=/%{_lib}
make COPT_FLAGS="$OPT" KERNEL_DIR=/usr/src/linux-2.4 LIBDIR=/%{_lib} iptables-
save iptables-restore
make COPT_FLAGS="$OPT" KERNEL_DIR=/usr/src/linux-2.4 LIBDIR=/%{_lib}
ip6tables-save ip6tables-restore
make install DESTDIR=%{buildroot} KERNEL_DIR=/usr/src/linux- 2.4 BINDIR=/sbin
LIBDIR=/%{_lib} MANDIR=%{_mandir}
%if %{build_devel}
make install-devel DESTDIR=%{buildroot} KERNEL_DIR=/usr/src/linux-2.4
BINDIR=/sbin LIBDIR=%{_libdir} MANDIR=%{_mandir}
To fix this yourself, first download the iptables source rpm, install it, modify the spec
(/usr/src/redhat/SPECS/iptables.spec) and run
rpmbuild -ba /usr/src/redhat/SPECS/iptables.spec . It runs quickly and produces an rpm
which contains all of the missing modules.