/[packages]/cauldron/fwsnort/current/SPECS/fwsnort.spec
ViewVC logotype

Contents of /cauldron/fwsnort/current/SPECS/fwsnort.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 972033 - (show annotations) (download)
Sat Feb 20 03:11:12 2016 UTC (9 years, 4 months ago) by umeabot
File size: 14120 byte(s)
Mageia 6 Mass Rebuild
1 %define rel 2
2 %define fwsnortlibdir %{_prefix}/lib/%{name}
3 %define fwsnortlogdir /var/log/fwsnort
4
5 ### get the first @INC directory that includes the string "linux".
6 ### This may be 'i386-linux', or 'i686-linux-thread-multi', etc.
7 %define fwsnortmoddir `perl -e '$path=q|i386-linux|; for (@INC) { if($_ =~ m|.*/(.*linux.*)|) {$path = $1; last; }} print $path'`
8
9 Name: fwsnort
10 Version: 1.6.5
11 Release: %mkrel %{rel}
12 Summary: Translates Snort rules into equivalent iptables rules
13 License: GPLv2+
14 Group: System/Servers
15 Url: http://www.cipherdyne.org/fwsnort/
16 Source0: http://www.cipherdyne.org/fwsnort/download/%{name}-%{version}.tar.gz
17 Source1: logrotate.fwsnort
18 BuildArch: noarch
19 Requires: iptables
20 BuildRequires: perl-devel
21
22 %description
23 fwsnort translates Snort rules into equivalent iptables rules and generates
24 a Bourne shell script that implements the resulting iptables commands. This
25 ruleset allows network traffic that exhibits Snort signatures to be logged
26 and/or dropped by iptables directly without putting any interface into
27 promiscuous mode or queuing packets from kernel to user space. In addition,
28 fwsnort (optionally) uses the IPTables::Parse module to parse the iptables
29 ruleset on the machine to determine which Snort rules are applicable to the
30 specific iptables policy. After all, if iptables is blocking all inbound
31 http traffic from external addresses, it is probably not of much use to try
32 detecting inbound attacks against against tcp/80. By default fwsnort
33 generates iptables rules that log Snort sid's with --log-prefix to klogd
34 where the messages can be analyzed with a log watcher such as logwatch or
35 psad (see http://www.cipherdyne.org/psad). fwsnort relies on the iptables
36 string match extension to match Snort content fields in the application portion
37 of ip traffic. Since Snort rules can contain hex data in content fields,
38 fwsnort implements a patch against iptables-1.2.7a which adds a
39 "--hex-string" option which will accept content fields such as
40 "|0d0a5b52504c5d3030320d0a|". fwsnort bundles the latest rule set from
41 Emerging Threats (http://www.emergingthreats.net) and also includes all rules
42 from the Snort-2.3.3 IDS - the final Snort rule set that was released under
43 the GPL. fwsnort is able to translate well over 60% of all bundled rules.
44 For more information about the translation strategy as well as
45 advantages/disadvantages of the method used by fwsnort to obtain intrusion
46 detection data, see the README included with the fwsnort sources or browse
47 to: http://www.cipherdyne.org/fwsnort/
48
49 %prep
50
51 %setup -q
52
53 cp -p %{SOURCE1} .
54
55 cd deps
56 cd IPTables-Parse && perl Makefile.PL PREFIX=%{fwsnortlibdir} LIB=%{fwsnortlibdir}
57 cd ..
58 cd NetAddr-IP && perl Makefile.PL PREFIX=%{fwsnortlibdir} LIB=%{fwsnortlibdir}
59 cd ../..
60
61 %build
62 ### build perl modules used by fwsnort
63 cd deps
64 make OPTS="%{optflags}" -C IPTables-Parse
65 make OPTS="%{optflags}" -C NetAddr-IP
66 cd ..
67
68 %install
69 ### config directory
70 ### log directory
71 mkdir -p %{buildroot}%{fwsnortlogdir}
72
73 ### fwsnort module dirs
74 mkdir -p %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/IPTables/Parse
75 mkdir -p %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/Util
76 mkdir -p %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP
77 mkdir -p %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase
78 mkdir -p %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP
79 mkdir -p %{buildroot}%{fwsnortlibdir}/IPTables
80
81 mkdir -p %{buildroot}%{_bindir}
82 mkdir -p %{buildroot}%{_mandir}/man8
83 mkdir -p %{buildroot}%{_sbindir}
84
85 ### fwsnort config
86 mkdir -p %{buildroot}%{_sysconfdir}/%{name}
87
88 install -m 755 fwsnort %{buildroot}%{_sbindir}/
89 install -m 644 fwsnort.conf %{buildroot}%{_sysconfdir}/%{name}/
90 install -m 644 fwsnort.8 %{buildroot}%{_mandir}/man8/
91
92 ### install perl modules used by fwsnort
93 cd deps
94 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/hostenum.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/hostenum.al
95 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/compactref.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/compactref.al
96 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/nprefix.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/nprefix.al
97 [ -e NetAddr-IP/blib/lib/auto/NetAddr/IP/.packlist ] && install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/.packlist %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/.packlist
98 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/re.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/re.al
99 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/prefix.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/prefix.al
100 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/do_prefix.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/do_prefix.al
101 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/wildcard.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/wildcard.al
102 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/_compact_v6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/_compact_v6.al
103 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/autosplit.ix %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/autosplit.ix
104 [ -e NetAddr-IP/blib/lib/auto/NetAddr/IP/Util/Util.so ] && install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/Util/Util.so %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/Util/Util.so
105 [ -e NetAddr-IP/blib/lib/auto/NetAddr/IP/Util/Util.bs ] && install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/Util/Util.bs %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/Util/Util.bs
106 [ -e NetAddr-IP/blib/lib/auto/NetAddr/IP/Util/autosplit.ix ] && install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/Util/autosplit.ix %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/Util/autosplit.ix
107 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/shiftleft.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/shiftleft.al
108 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/ipv4to6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/ipv4to6.al
109 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/maskanyto6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/maskanyto6.al
110 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/comp128.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/comp128.al
111 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_deadlen.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_deadlen.al
112 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/sub128.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/sub128.al
113 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/notcontiguous.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/notcontiguous.al
114 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/bcdn2bin.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/bcdn2bin.al
115 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/add128.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/add128.al
116 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/ipv6to4.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/ipv6to4.al
117 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_bcdcheck.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_bcdcheck.al
118 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/mask4to6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/mask4to6.al
119 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_128x2.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_128x2.al
120 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/ipanyto6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/ipanyto6.al
121 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/hasbits.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/hasbits.al
122 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/bcdn2txt.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/bcdn2txt.al
123 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/slowadd128.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/slowadd128.al
124 [ -e NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/autosplit.ix ] && install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/autosplit.ix %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/autosplit.ix
125 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/simple_pack.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/simple_pack.al
126 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/bcd2bin.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/bcd2bin.al
127 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/bin2bcdn.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/bin2bcdn.al
128 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_bin2bcdn.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_bin2bcdn.al
129 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/bin2bcd.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/bin2bcd.al
130 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_sa128.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_sa128.al
131 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_bcd2bin.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_bcd2bin.al
132 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/addconst.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/addconst.al
133 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/UtilPP/_128x10.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/UtilPP/_128x10.al
134 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/mod_version.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/mod_version.al
135 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/_splitref.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/_splitref.al
136 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/_compV6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/_compV6.al
137 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/inet_any2n.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/inet_any2n.al
138 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/_inet_ntop.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/_inet_ntop.al
139 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/inet_n2ad.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/inet_n2ad.al
140 [ -e NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/autosplit.ix ] && install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/autosplit.ix %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/autosplit.ix
141 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/_packzeros.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/_packzeros.al
142 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/inet_n2dx.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/inet_n2dx.al
143 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/ipv6_aton.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/ipv6_aton.al
144 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/ipv6_ntoa.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/ipv6_ntoa.al
145 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/inet_ntoa.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/inet_ntoa.al
146 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/InetBase/_inet_pton.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/InetBase/_inet_pton.al
147 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/coalesce.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/coalesce.al
148 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/re6.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/re6.al
149 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/short.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/short.al
150 install -m 444 NetAddr-IP/blib/lib/auto/NetAddr/IP/_splitplan.al %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/auto/NetAddr/IP/_splitplan.al
151 install -m 444 NetAddr-IP/blib/lib/NetAddr/IP/InetBase.pm %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP/InetBase.pm
152 install -m 444 NetAddr-IP/blib/lib/NetAddr/IP/UtilPP.pm %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP/UtilPP.pm
153 install -m 444 NetAddr-IP/blib/lib/NetAddr/IP/Util.pm %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP/Util.pm
154 install -m 444 NetAddr-IP/blib/lib/NetAddr/IP/Lite.pm %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP/Lite.pm
155 install -m 444 NetAddr-IP/blib/lib/NetAddr/IP/Util_IS.pm %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP/Util_IS.pm
156 install -m 444 NetAddr-IP/blib/lib/NetAddr/IP.pm %{buildroot}%{fwsnortlibdir}/%{fwsnortmoddir}/NetAddr/IP.pm
157 install -m 444 IPTables-Parse/blib/lib/IPTables/Parse.pm %{buildroot}%{fwsnortlibdir}/IPTables/Parse.pm
158 cd ..
159
160 ### install snort rules files
161 cp -r deps/snort_rules %{buildroot}%{_sysconfdir}/%{name}
162
163 ### install fwsnort logrotate files
164 mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d
165 install -m 644 logrotate.fwsnort %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
166
167 %pre
168 ### not used
169
170 %post
171 ### not used
172
173 %preun
174 ### not used
175
176 %files
177 %doc ChangeLog VERSION README CREDITS TODO
178 %license LICENSE
179 %dir %{fwsnortlogdir}
180 %{_sbindir}/*
181 %{_mandir}/man8/*
182
183 %dir %{_sysconfdir}/%{name}
184 %config(noreplace) %{_sysconfdir}/%{name}/fwsnort.conf
185
186 %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
187
188 %dir %{_sysconfdir}/%{name}/snort_rules
189 %config(noreplace) %{_sysconfdir}/%{name}/snort_rules/*
190
191 %{_prefix}/lib/%{name}

  ViewVC Help
Powered by ViewVC 1.1.30