1 |
|
# No debuginfo: |
2 |
|
%define debug_package %{nil} |
3 |
|
|
4 |
|
# If you want to debug, uncomment the next line and remove |
5 |
|
# the duplicate percent sign (due to macro expansion) |
6 |
|
#%%dump |
7 |
|
|
8 |
|
%define name rkhunter |
9 |
|
%define ver 1.3.0 |
10 |
|
%define rel 5 |
11 |
|
%define epoch 0 |
12 |
|
|
13 |
|
# Don't change this define or also: |
14 |
|
# 1. installer.sh --layout custom /temporary/dir/usr --striproot /temporary/dir --install |
15 |
|
# 2. rewrite the files section below. |
16 |
|
%define _prefix /usr |
17 |
|
|
18 |
# We can't let RPM do the dependencies automatic because it'll then pick up |
# We can't let RPM do the dependencies automatic because it'll then pick up |
19 |
# a correct but undesirable perl dependency, which rkhunter does not require |
# a correct but undesirable perl dependency, which rkhunter does not require |
20 |
# in order to function properly. |
# in order to function properly. |
21 |
AutoReqProv: no |
AutoReqProv: no |
22 |
|
|
23 |
Summary: Rootkit scans for rootkits, backdoors and local exploits. |
Name: %{name} |
24 |
Name: rkhunter |
Summary: %{name} scans for rootkits, backdoors and local exploits |
25 |
Version: 1.2.9 |
Version: %{ver} |
26 |
Release: 3%{?dist} |
Release: %{rel}%{dist} |
27 |
Epoch: 0 |
Epoch: %{epoch} |
28 |
License: GPL |
License: GPL |
29 |
Group: Applications/System |
Group: Applications/System |
30 |
URL: http://rkhunter.sourceforge.net/ |
Source0: %{name}-%{version}.tar.gz |
31 |
Source0: %{name}-%{version}.tar.gz |
Patch0: rkhunter-installer.patch |
32 |
Patch0: rkhunter-sme7.patch |
Patch1: rkhunter-nolib.patch |
33 |
BuildArch: noarch |
BuildArch: noarch |
34 |
Requires: /bin/sh, /bin/ps, /bin/ls, /bin/cat, /bin/egrep, /usr/bin/strings |
Requires: filesystem, bash, grep, findutils, net-tools, coreutils, e2fsprogs, modutils, procps, binutils, wget, perl |
35 |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) |
Provides: %{name} |
36 |
|
URL: http://rkhunter.sourceforge.net/ |
37 |
|
BuildRoot: %{_tmppath}/%{name}-%{version} |
38 |
|
|
39 |
%description |
%description |
40 |
Rootkit scanner is scanning tool to ensure you for about 99.9%% you're |
Rootkit Hunter is a scanning tool to ensure you are about 99.9%% |
41 |
clean of nasty tools. This tool scans for rootkits, backdoors and local |
clean of nasty tools. It scans for rootkits, backdoors and local |
42 |
exploits by running tests like: |
exploits by running tests like: |
43 |
- MD5 hash compare |
- File hash check |
44 |
- Look for default files used by rootkits |
- Look for default files used by rootkits |
45 |
- Wrong file permissions for binaries |
- Wrong file permissions for binaries |
46 |
- Look for suspected strings in LKM and KLD modules |
- Look for suspected strings in LKM and KLD modules |
53 |
|
|
54 |
|
|
55 |
%prep |
%prep |
56 |
%setup |
%setup -q |
57 |
%patch -p1 |
%patch0 -p1 |
58 |
|
%patch1 -p1 |
59 |
|
|
60 |
%build |
%build |
|
#%%configure ... |
|
|
# We have nothing to configure... yet... |
|
61 |
|
|
62 |
%install |
%install |
63 |
# Well... This could be a bit smaller if the install |
sh ./installer.sh --layout RPM --install |
|
# script was able to handle DSTDIR for example... |
|
|
|
|
|
# (cjo) remove old version of build root, if it exists |
|
|
%{__rm} -rf ${RPM_BUILD_ROOT} |
|
|
|
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_bindir} |
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_sysconfdir} |
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_libdir} |
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts |
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_docdir}/rkhunter-%{version} |
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_mandir}/man8 |
|
|
%{__mkdir} -p ${RPM_BUILD_ROOT}%{_var}/rkhunter/{db,tmp} |
|
|
%{__chmod} ug+rwx,o-rwx ${RPM_BUILD_ROOT}%{_var}/rkhunter/tmp |
|
|
|
|
|
%{__install} -m750 -p files/rkhunter ${RPM_BUILD_ROOT}%{_bindir}/ |
|
|
|
|
|
%{__install} -m640 -p files/backdoorports.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
%{__install} -m640 -p files/defaulthashes.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
%{__install} -m640 -p files/mirrors.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
%{__install} -m640 -p files/os.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
%{__install} -m640 -p files/md5blacklist.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
%{__install} -m640 -p files/programs_bad.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
%{__install} -m640 -p files/programs_good.dat ${RPM_BUILD_ROOT}%{_var}/rkhunter/db/ |
|
|
|
|
|
%{__install} -m644 -p files/CHANGELOG ${RPM_BUILD_ROOT}%{_docdir}/rkhunter-%{version}/ |
|
|
%{__install} -m644 -p files/LICENSE ${RPM_BUILD_ROOT}%{_docdir}/rkhunter-%{version}/ |
|
|
%{__install} -m644 -p files/README ${RPM_BUILD_ROOT}%{_docdir}/rkhunter-%{version}/ |
|
|
%{__install} -m644 -p files/WISHLIST ${RPM_BUILD_ROOT}%{_docdir}/rkhunter-%{version}/ |
|
|
%{__install} -m644 -p files/development/*.8 ${RPM_BUILD_ROOT}%{_mandir}/man8/ |
|
|
|
|
|
%{__install} -m750 -p files/check_modules.pl ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts/ |
|
|
%{__install} -m750 -p files/check_port.pl ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts/ |
|
|
%{__install} -m750 -p files/filehashmd5.pl ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts/ |
|
|
%{__install} -m750 -p files/filehashsha1.pl ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts/ |
|
|
%{__install} -m750 -p files/showfiles.pl ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts/ |
|
|
%{__install} -m750 -p files/check_update.sh ${RPM_BUILD_ROOT}%{_libdir}/rkhunter/scripts/ |
|
|
|
|
|
# (cjo) Put installation root in configuration file, then copy the rest |
|
|
# of the file from the original. |
|
|
cat >> ${RPM_BUILD_ROOT}%{_sysconfdir}/rkhunter.conf << EOF |
|
|
## Next three lines installed automatically by RPM. Do not change |
|
|
## unless you know what you're doing... |
|
|
INSTALLDIR=%{_prefix} |
|
|
DBDIR=%{_var}/rkhunter/db |
|
|
TMPDIR=%{_var}/rkhunter/tmp |
|
|
|
|
|
EOF |
|
64 |
|
|
65 |
cat files/rkhunter.conf >> ${RPM_BUILD_ROOT}%{_sysconfdir}/rkhunter.conf |
sed -i 's_#ALLOWPROCLISTEN=/sbin/dhclient_ALLOWPROCLISTEN=/sbin/dhclient_' ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}.conf |
66 |
%{__chmod} 640 ${RPM_BUILD_ROOT}%{_sysconfdir}/rkhunter.conf |
sed -i 's_#ALLOWPROCLISTEN=/usr/sbin/pppoe_ALLOWPROCLISTEN=/sbin/pppoe_' ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}.conf |
67 |
|
sed -i 's_#ALLOWHIDDENFILE=/usr/share/man/man1/..1.gz_ALLOWHIDDENFILE=/usr/share/man/man1/..1.gz_' ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}.conf |
68 |
|
sed -i '/#ALLOWPROCLISTEN=\/usr\/bin\/dhcpcd/iALLOWPROCLISTEN=\/usr\/sbin\/dhcpd' ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}.conf |
69 |
|
sed -i '/#ALLOWPROCDELFILE=\/usr\/sbin\/mysqld/aALLOWPROCDELFILE=\/usr\/sbin\/httpd' ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}.conf |
70 |
|
sed -i '/#ALLOWPROCLISTEN=\/usr\/local\/bin\/wpa_supplicant/aALLOWPROCLISTEN=\/usr\/sbin\/asterisk' ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}.conf |
71 |
|
|
72 |
# Only root should use rkhunter (at least for now) |
# Make a cron.daily file to mail us the reports |
|
%{__chmod} o-rwx -R ${RPM_BUILD_ROOT}%{_libdir}/rkhunter |
|
|
%{__chmod} o-rwx -R ${RPM_BUILD_ROOT}%{_var}/rkhunter/db |
|
|
|
|
|
# make a cron.daily file to mail us the reports |
|
73 |
%{__mkdir} -p "${RPM_BUILD_ROOT}/%{_sysconfdir}/cron.daily" |
%{__mkdir} -p "${RPM_BUILD_ROOT}/%{_sysconfdir}/cron.daily" |
74 |
%{__cat} > "${RPM_BUILD_ROOT}/%{_sysconfdir}/cron.daily/01-rkhunter" <<EOF |
%{__cat} > "${RPM_BUILD_ROOT}/%{_sysconfdir}/cron.daily/01-rkhunter" <<EOF |
75 |
#!/bin/sh |
#!/bin/sh |
76 |
%{_bindir}/rkhunter --cronjob --skip-application-check --report-warnings-only --createlogfile /var/log/rkhunter.log |
%{_bindir}/rkhunter --cronjob --update --disable apps,suspscan,system_commands --rwo |
77 |
|
exit 0 |
78 |
EOF |
EOF |
79 |
%{__chmod} a+rwx,g-w,o-rwx ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.daily/01-rkhunter |
%{__chmod} a+rwx,g-w,o-rwx ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.daily/01-rkhunter |
80 |
|
|
|
%clean |
|
|
%{__rm} -rf "$RPM_BUILD_ROOT" |
|
81 |
|
|
82 |
%files |
%post |
83 |
%defattr(-,root,root,-) |
# Only do this on an initial install |
84 |
%{_bindir}/rkhunter |
if [ $1 -eq 1 ]; then |
85 |
%dir %{_libdir}/rkhunter |
%{__cp} -p /etc/passwd /var/rkhunter/tmp >/dev/null 2>&1 || : |
86 |
%doc %{_docdir}/rkhunter-%{version} |
%{__cp} -p /etc/group /var/rkhunter/tmp >/dev/null 2>&1 || : |
87 |
%{_mandir}/man8/* |
fi |
|
%{_libdir}/rkhunter/scripts |
|
|
%dir %{_var}/rkhunter/tmp |
|
|
%{_var}/rkhunter/db |
|
|
%config(noreplace) %verify(not mtime) %{_sysconfdir}/rkhunter.conf |
|
|
%{_sysconfdir}/cron.daily/01-rkhunter |
|
88 |
|
|
89 |
|
|
90 |
%changelog |
%preun |
91 |
* Sun Apr 29 2007 Shad L. Lords <slords@mail.com> |
# Only do this when removing the RPM |
92 |
- Clean up spec so package can be built by koji/plague |
if [ $1 -eq 0 ]; then |
93 |
|
%{__rm} -f /var/log/rkhunter.log /var/log/rkhunter.log.old >/dev/null 2>&1 |
94 |
|
%{__rm} -rf /var/rkhunter/* >/dev/null 2>&1 |
95 |
|
fi |
96 |
|
|
|
* Wed Mar 07 2007 Shad L. Lords <slords@mail.com> 1.2.9-3 |
|
|
- Add sigs for 7.1.2 and 7.1.3 |
|
97 |
|
|
98 |
* Sun Jan 28 2007 Shad L. Lords <slords@mail.com> 1.2.9-2 |
%clean |
99 |
- Run updates as part of build process |
if [ "$RPM_BUILD_ROOT" = "/" ]; then |
100 |
|
echo Invalid Build root \'"$RPM_BUILD_ROOT"\' |
101 |
* Sun Jan 28 2007 Shad L. Lords <slords@mail.com> 1.2.9-1 |
exit 1 |
102 |
- Update to latest 1.2.9 |
else |
103 |
|
rm -rf $RPM_BUILD_ROOT |
104 |
* Tue Dec 12 2006 Shad L. Lords <slords@mail.com> 1.2.8-4 |
fi |
|
- Add strings as a requirement. [SME: 2267] |
|
|
|
|
|
* Tue Dec 12 2006 Shad L. Lords <slords@mail.com> 1.2.8-3 |
|
|
- Added 7.1 |
|
|
|
|
|
* Thu Dec 07 2006 Shad L. Lords <slords@mail.com> 1.2.8-2 |
|
|
- Update to new release naming. No functional changes. |
|
|
- Make Packager generic |
|
|
|
|
|
* Sun Nov 12 2006 Shad L. Lords <slords@lordsfam.net> 1.2.8-1sme01 |
|
|
- Updated to latest 1.2.8 |
|
105 |
|
|
|
* Wed Feb 22 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme07 |
|
|
- Added 7.0pre[45] and 7.0prc3 [SME: 860 |
|
106 |
|
|
107 |
* Mon Feb 20 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme06 |
%define docdir %{_prefix}/share/doc/%{name}-%{version} |
108 |
- Added 7.0pre3 [SME: 845] |
%files |
109 |
|
%defattr(-,root,root) |
110 |
|
%attr(640,root,root) %config(noreplace) %{_sysconfdir}/%{name}.conf |
111 |
|
%attr(750,root,root) %{_prefix}/bin/%{name} |
112 |
|
%attr(750,root,root) %dir %{_libdir}/%{name} |
113 |
|
%attr(750,root,root) %dir %{_libdir}/%{name}/scripts |
114 |
|
%attr(750,root,root) %{_libdir}/%{name}/scripts/*.pl |
115 |
|
%attr(750,root,root) %{_libdir}/%{name}/scripts/*.sh |
116 |
|
%attr(644,root,root) %doc %{_prefix}/share/man/man8/%{name}.8.gz |
117 |
|
%attr(755,root,root) %dir %{docdir} |
118 |
|
%attr(644,root,root) %doc %{docdir}/* |
119 |
|
%attr(750,root,root) %dir %{_var}/%{name} |
120 |
|
%attr(750,root,root) %dir %{_var}/%{name}/db |
121 |
|
%attr(640,root,root) %{_var}/%{name}/db/*.dat |
122 |
|
%attr(750,root,root) %dir %{_var}/%{name}/db/i18n |
123 |
|
%attr(640,root,root) %{_var}/%{name}/db/i18n/* |
124 |
|
%attr(750,root,root) %dir %{_var}/%{name}/tmp |
125 |
|
%{_sysconfdir}/cron.daily/01-rkhunter |
126 |
|
|
|
* Sat Feb 4 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme05 |
|
|
- Added 7.0pre2 [SME: 653] |
|
127 |
|
|
128 |
* Mon Jan 9 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme04 |
%changelog |
129 |
- Remove explicit call to /bin/mail from rkhunter daily cron job. If |
* Tue Jan 29 2008 Shad L. Lords <slords@mail.com> 1.3.0-5 |
130 |
there's no output, we don't want any mail either [SME: 421] |
- Correct pppoe binary location. |
131 |
|
- Add asterisk binary to allow deleted files. [SME: 3795] |
132 |
|
|
133 |
* Mon Jan 9 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme03 |
* Mon Jan 7 2008 Shad L. Lords <slords@mail.com> 1.3.0-4 |
134 |
- Fix up format of os.dat entries. rkhunter knows about |
- Disable scan for suspicious files until fixed [SME: 3713] |
|
/etc/e-smith-release [SME: 384] |
|
135 |
|
|
136 |
* Mon Jan 9 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme02 |
* Mon Dec 17 2007 Shad L. Lords <slords@mail.com> 1.3.0-3 |
137 |
- And add support for 7.0pre1 [SME: 384] |
- Change /var/lib to /var to be consistent with previous versions |
138 |
|
|
139 |
* Mon Jan 9 2006 Gordon Rowell <gordonr@gormand.com.au> 1.2.7-1sme01 |
* Mon Dec 17 2007 Shad L. Lords <slords@mail.com> 1.3.0-2 |
140 |
- Add support for 7.0beta9, rc[12] and final [SME: 384] |
- Add a few more services for sme tests |
141 |
|
|
142 |
* Wed Nov 09 2005 Charlie Brady <charlieb@e-smith.com> 1.2.7-1es2 |
* Mon Dec 17 2007 Shad L. Lords <slords@mail.com> 1.3.0-1 |
143 |
- Add support for CentOS 4.{1,2,3} |
- Fix installer to not install in local |
144 |
|
- Set parameters for sme specific tests |
145 |
|
|
146 |
* Fri Jul 15 2005 Charlie Brady - 1.2.7-1es |
* Sun Feb 11 2007 unSpawn - pre-1.3.0 |
147 |
- Upgrade to 1.2.7 |
- Sync spec with fixes, installer and CVS |
148 |
|
|
149 |
* Sun Jun 05 2005 Charlie Brady - 1.2.6-2es |
* Sun Nov 12 2006 unSpawn - 1.2.9 |
150 |
- Make cron job quieter |
- Re-spec, new installer |
|
- Add SME6.1 and SME7 as recognised OSes. |
|
151 |
|
|
152 |
* Tue May 10 2005 Charlie Brady - 1.2.6 |
* Fri Sep 29 2006 unSpawn - 1.2.9 |
153 |
- Update to 1.2.6 |
- Updated for release 1.2.9 |
154 |
|
|
155 |
* Tue Aug 10 2004 Michael Boelen - 1.1.5 |
* Tue Aug 10 2004 Michael Boelen - 1.1.5 |
156 |
- Added update script |
- Added update script |
195 |
* Mon Mar 29 2004 Doncho N. Gunchev - 1.0.0-0 |
* Mon Mar 29 2004 Doncho N. Gunchev - 1.0.0-0 |
196 |
- initial .spec file |
- initial .spec file |
197 |
|
|
198 |
|
|