73 lines
3.3 KiB
RPMSpec
73 lines
3.3 KiB
RPMSpec
%{!?_httpd_confdir: %{expand: %%global _httpd_confdir %%{_sysconfdir}/httpd/conf.d}}
|
|
|
|
Summary: ModSecurity Core Ruleset
|
|
Name: mod_security_crs
|
|
Version: 4.22.0
|
|
Release: 1%{?dist}
|
|
License: Apache-2.0
|
|
URL: https://coreruleset.org/
|
|
Source: https://github.com/coreruleset/coreruleset/archive/refs/tags/v%{version}.tar.gz
|
|
BuildArch: noarch
|
|
Requires: mod_security >= 2.9.6
|
|
Obsoletes: mod_security_crs-extras < 3.0.0
|
|
|
|
# Patch0: mod_security_crs-XXX.patch
|
|
|
|
%description
|
|
This package provides the base rules for mod_security.
|
|
|
|
%prep
|
|
%autosetup -p1 -S gendiff -n coreruleset-%{version}
|
|
|
|
%build
|
|
|
|
%install
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/activated_rules
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/plugins
|
|
%{__install} -d %{buildroot}%{_datarootdir}/mod_modsecurity_crs/rules
|
|
%{__install} -d %{buildroot}%{_datarootdir}/mod_modsecurity_crs/plugins
|
|
|
|
%{__mv} rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/activated_rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf
|
|
%{__mv} rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/activated_rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf
|
|
|
|
%{__install} -m0644 rules/*.conf %{buildroot}%{_datarootdir}/mod_modsecurity_crs/rules/
|
|
%{__install} -m0644 rules/*.data %{buildroot}%{_datarootdir}/mod_modsecurity_crs/rules/
|
|
%{__install} -m0644 plugins/* %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/plugins/
|
|
%{__mv} crs-setup.conf.example %{buildroot}%{_sysconfdir}/httpd/modsecurity.d/crs-setup.conf
|
|
|
|
%post
|
|
if [ $1 == 1 ]; then
|
|
# activate base_rules
|
|
for f in `ls %{_datarootdir}/mod_modsecurity_crs/rules/` ; do
|
|
%{__ln_s} %{_datarootdir}/mod_modsecurity_crs/rules/$f %{_sysconfdir}/httpd/modsecurity.d/activated_rules/$f;
|
|
done
|
|
%{__sed} -i '/IncludeOptional modsecurity\.d\/\*\.conf/ a\ IncludeOptional modsecurity.d\/plugins\/*-config.conf\n IncludeOptional modsecurity.d\/plugins\/*-before.conf' %{_httpd_confdir}/mod_security.conf
|
|
%{__sed} -i '/Include modsecurity\.d\/\*\.conf/a\ Include modsecurity.d/plugins/*-config.conf\n Include modsecurity.d/plugins/*-before.conf' %{_httpd_confdir}/mod_security.conf
|
|
%{__sed} -i '/IncludeOptional modsecurity\.d\/local_rules\/\*\.conf/a\ IncludeOptional modsecurity.d\/plugins\/*-after.conf' %{_httpd_confdir}/mod_security.conf
|
|
%{__sed} -i '/Include modsecurity\.d\/local_rules\/\*\.conf/a\ Include modsecurity.d\/plugins\/*-after.conf' %{_httpd_confdir}/mod_security.conf
|
|
fi
|
|
exit 0
|
|
|
|
%preun
|
|
if [ $1 == 0 ]; then
|
|
%{__sed} -i -E '/Include(Optional)? modsecurity\.d\/plugins/d' %{_httpd_confdir}/mod_security.conf
|
|
for f in `ls %{_datarootdir}/mod_modsecurity_crs/rules/` ; do
|
|
%{__rm} %{_sysconfdir}/httpd/modsecurity.d/activated_rules/$f;
|
|
done
|
|
fi
|
|
exit 0
|
|
|
|
%files
|
|
%license LICENSE
|
|
%doc CHANGES.md README.md
|
|
%{_datarootdir}/mod_modsecurity_crs
|
|
%{_sysconfdir}/httpd/modsecurity.d/plugins
|
|
%config(noreplace) %{_sysconfdir}/httpd/modsecurity.d/activated_rules/*
|
|
%config(noreplace) %{_sysconfdir}/httpd/modsecurity.d/crs-setup.conf
|
|
%config(noreplace) %{_sysconfdir}/httpd/modsecurity.d/plugins/*
|
|
|
|
%changelog
|
|
* Thu Jul 23 2026 Luboš Uhliarik <luhliari@redhat.com> - 4.22.0-1
|
|
- Resolves: RHEL-188069 - add mod_security_crs
|