nixpkgs/pkgs/applications/networking/ids/snort/default.nix

36 lines
1.1 KiB
Nix
Raw Normal View History

2015-10-15 19:46:13 +00:00
{stdenv, fetchurl, libpcap, pcre, libdnet, daq, zlib, flex, bison, makeWrapper}:
2013-05-30 13:05:39 +00:00
stdenv.mkDerivation rec {
version = "2.9.11.1";
snort: 2.9.7.0 -> 2.9.7.2 This includes a slight refactor. 2014-11-24 - Snort 2.9.7.2 [*] New additions * Application Identification Preprocessor, when used in conjunction with open app ID detector content, that will identify application protocol, client, server, and web applications (including those using SSL) and include the info in Snort alert data. In addition, a new rule option keyword 'appid' that can be used to constrain Snort rules based on one or more applications that are identified for the connection. See README.appid for details. * A new protected_content rule option that is used to match against a content that is hashed. It can be used to obscure the full context of the rule from the administrator. * Protocol Aware Flushing (PAF) improvements for SMTP, POP, and IMAP to more accurately process different portions of email messages and file attachments. * Added ability to test normalization behavior without modifying network traffic. When configured using na_policy_mode:inline-test, statistics will be gathered on packet normalizations that would have occurred, allowing less disruptive testing of inline deployments. * The HTTP Inspection preprocessor now has the ability to decompress DEFLATE and LZMA compressed flash content and DEFLATE compressed PDF content from http responses when configured with the new decompress_swf and decompress_pdf options. This enhancement can be used with existing rule options that already match against decompressed equivalents. * Added improved XFF support to HttpInspect. It is now possible to specify custom HTTP headers to use in place of 'X-Fowarded-For'. In situations where traffic may contain multiple XFF-like headers, it is possible to specify which headers hold precedence. * Added control socket command to dump packets. * The Stream5 preprocessor functionality is now split between the new Session and Stream preprocessors. * Added decoding capaiblity for Cisco FabricPath [*] Improvements * Update active response to allow for responses of 1500+ bytes that span multiple TCP packets. * Check limits of multiple configurations to not exceed a maximum ID of 4095. * Updated the error output of byte_test, byte_jump, byte_extract to including details on offending options for a given rule. * Update build and install scripts to install preprocessor and engine libraries into user specified libdir. * Improved performance of IP Reputation preprocessor. * The control socket will now report success when reloading empty IP Reputation whitelists/blacklists. * All TCP normalizations can now be enabled individually. See README.normalize for details on using the new options. For consistency with other options, the "urp" tcp normalization keyword now enables the normalization instead of disabling it. * Lowered memory demand of Unicode -> ASCII mapping in HttpInspect. * Updated profiler output to remove duplicate results when using multiple configurations. * Improved performance of FTP reassembly.
2015-03-16 00:07:00 +00:00
name = "snort-${version}";
2013-05-30 13:05:39 +00:00
src = fetchurl {
name = "${name}.tar.gz";
2016-05-21 07:08:36 +00:00
url = "https://snort.org/downloads/archive/snort/${name}.tar.gz";
sha256 = "1ka67zrrhs32c729v4h76mvv2723mij0adxx0iaza2d1qpm3lswz";
2013-05-30 13:05:39 +00:00
};
2015-10-02 07:18:55 +00:00
buildInputs = [ makeWrapper libpcap pcre libdnet daq zlib flex bison ];
enableParallelBuilding = true;
2018-07-25 21:44:21 +00:00
configureFlags = [
"--disable-static-daq"
"--enable-control-socket"
"--with-daq-includes=${daq}/includes"
"--with-daq-libraries=${daq}/lib"
];
postInstall = ''
wrapProgram $out/bin/snort --add-flags "--daq-dir ${daq}/lib/daq --dynamic-preprocessor-lib-dir $out/lib/snort_dynamicpreprocessor/ --dynamic-engine-lib-dir $out/lib/snort_dynamicengine"
'';
2013-05-30 13:05:39 +00:00
meta = {
description = "Network intrusion prevention and detection system (IDS/IPS)";
2018-05-01 03:03:23 +00:00
homepage = https://www.snort.org;
2014-09-24 08:43:51 +00:00
maintainers = with stdenv.lib.maintainers; [ aycanirican ];
license = stdenv.lib.licenses.gpl2;
platforms = with stdenv.lib.platforms; linux;
2013-05-30 13:05:39 +00:00
};
}