mirror of
https://abf.rosa.ru/djam/strongswan.git
synced 2025-02-23 14:02:51 +00:00
287 lines
9.1 KiB
RPMSpec
287 lines
9.1 KiB
RPMSpec
#%%define Werror_cflags %nil
|
|
%define _disable_ld_no_undefined 1
|
|
%bcond_without nm
|
|
|
|
Summary: IPSEC implementation
|
|
Name: strongswan
|
|
Version: 5.5.0
|
|
Release: 1
|
|
License: GPLv2+
|
|
URL: https://www.strongswan.org/
|
|
Source0: http://download.strongswan.org/%{name}-%{version}.tar.bz2
|
|
|
|
Group: System/Servers
|
|
|
|
BuildRequires: gmp-devel
|
|
BuildRequires: curl-devel
|
|
BuildRequires: openldap-devel
|
|
BuildRequires: openssl-devel
|
|
BuildRequires: sqlite-devel
|
|
BuildRequires: gettext-devel
|
|
BuildRequires: trousers-devel
|
|
BuildRequires: pkgconfig(libxml-2.0)
|
|
BuildRequires: pkgconfig(systemd)
|
|
%if %{with nm}
|
|
BuildRequires: pkgconfig(NetworkManager)
|
|
BuildRequires: pkgconfig(libnm-glib-vpn)
|
|
BuildRequires: pkgconfig(libnm-util)
|
|
BuildRequires: pkgconfig(libnm-glib)
|
|
%endif
|
|
|
|
%description
|
|
FreeS/WAN is a free implementation of IPSEC & IKE for Linux. IPSEC is
|
|
the Internet Protocol Security and uses strong cryptography to provide
|
|
both authentication and encryption services. These services allow you
|
|
to build secure tunnels through untrusted networks. Everything passing
|
|
through the untrusted net is encrypted by the ipsec gateway machine and
|
|
decrypted by the gateway at the other end of the tunnel. The resulting
|
|
tunnel is a virtual private network or VPN.
|
|
|
|
This package contains the daemons and userland tools for setting up
|
|
FreeS/WAN on a freeswan enabled kernel.
|
|
|
|
|
|
%if %{with nm}
|
|
%package charon-nm
|
|
Summary: NetworkManager plugin for Strongswan
|
|
Group: System/Servers
|
|
|
|
%description charon-nm
|
|
NetworkManager plugin integrates a subset of Strongswan capabilities
|
|
to NetworkManager.
|
|
%endif
|
|
|
|
%package tnc-imcvs
|
|
Summary: Trusted network connect (TNC)'s IMC/IMV functionality
|
|
Group: System/Servers
|
|
Requires: %{name} = %{version}
|
|
|
|
%description tnc-imcvs
|
|
This package provides Trusted Network Connect's (TNC) IMC and IMV
|
|
functionality. Specifically it includes PTS based IMC/IMV for TPM based
|
|
remote attestation and scanner and test IMCs and IMVs. The Strongswan's
|
|
IMC/IMV dynamic libraries can be used by any third party TNC Client/Server
|
|
implementation possessing a standard IF-IMC/IMV interface.
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
# %apply_patches
|
|
|
|
%build
|
|
|
|
libtoolize --install --copy --force --automake
|
|
aclocal -I m4
|
|
autoconf
|
|
autoheader
|
|
automake --add-missing --copy
|
|
|
|
%serverbuild
|
|
%configure \
|
|
--disable-static \
|
|
--with-ipsec-script=%{name} \
|
|
--sysconfdir=%{_sysconfdir}/%{name} \
|
|
--with-ipsecdir=%{_libexecdir}/%{name} \
|
|
--with-ipseclibdir=%{_libdir}/%{name} \
|
|
--with-fips-mode=2 \
|
|
--with-tss=trousers \
|
|
--enable-openssl \
|
|
--enable-md4 \
|
|
--enable-xauth-eap \
|
|
--enable-eap-md5 \
|
|
--enable-eap-gtc \
|
|
--enable-eap-tls \
|
|
--enable-eap-ttls \
|
|
--enable-eap-peap \
|
|
--enable-eap-mschapv2 \
|
|
--enable-farp \
|
|
--enable-dhcp \
|
|
--enable-sqlite \
|
|
--enable-tnc-ifmap \
|
|
--enable-tnc-pdp \
|
|
--enable-imc-test \
|
|
--enable-imv-test \
|
|
--enable-imc-scanner \
|
|
--enable-imv-scanner \
|
|
--enable-imc-attestation \
|
|
--enable-imv-attestation \
|
|
--enable-imv-os \
|
|
--enable-imc-os \
|
|
--enable-eap-tnc \
|
|
--enable-tnccs-20 \
|
|
--enable-tnccs-11 \
|
|
--enable-tnccs-dynamic \
|
|
--enable-tnc-imc \
|
|
--enable-tnc-imv \
|
|
--enable-eap-radius \
|
|
--enable-curl \
|
|
--enable-eap-identity \
|
|
%if %{with nm}
|
|
--enable-nm \
|
|
%endif
|
|
|
|
%make
|
|
sed -i 's/\t/ /' src/starter/ipsec.conf
|
|
|
|
%install
|
|
%makeinstall_std
|
|
# prefix man pages
|
|
for i in %{buildroot}%{_mandir}/*/*; do
|
|
if echo "$i" | grep -vq '/%{name}[^\/]*$'; then
|
|
mv "$i" "`echo "$i" | sed -re 's|/([^/]+)$|/%{name}_\1|'`"
|
|
fi
|
|
done
|
|
# delete unwanted library files
|
|
rm %{buildroot}%{_libdir}/%{name}/*.so
|
|
find %{buildroot} -type f -name '*.la' -delete
|
|
# fix config permissions
|
|
chmod 644 %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf
|
|
# protect configuration from ordinary user's eyes
|
|
chmod 700 %{buildroot}%{_sysconfdir}/%{name}
|
|
|
|
# Create ipsec.d directory tree.
|
|
install -d -m 700 %{buildroot}%{_sysconfdir}/%{name}/ipsec.d
|
|
for i in aacerts acerts certs cacerts crls ocspcerts private reqs; do
|
|
install -d -m 700 %{buildroot}%{_sysconfdir}/%{name}/ipsec.d/${i}
|
|
done
|
|
|
|
%post
|
|
%_post_service %{name}
|
|
|
|
%preun
|
|
%_preun_service %{name}
|
|
|
|
#%postun
|
|
#%_postun_userdel strongswan
|
|
|
|
%files
|
|
%doc README COPYING NEWS TODO
|
|
%dir %{_sysconfdir}/%{name}
|
|
%{_sysconfdir}/%{name}/ipsec.d/
|
|
%config(noreplace) %{_sysconfdir}/%{name}/ipsec.conf
|
|
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
|
|
%{_unitdir}/%{name}.service
|
|
/etc/%{name}/%{name}.d
|
|
/etc/%{name}/swanctl
|
|
/usr/share/%{name}/templates/config/plugins/*.conf
|
|
/usr/share/%{name}/templates/config/%{name}.conf
|
|
/usr/share/%{name}/templates/config/%{name}.d/*.conf
|
|
/usr/share/%{name}/templates/database/imv/*.sql
|
|
%{_libdir}/%{name}/libcharon.so.0
|
|
%{_libdir}/%{name}/libcharon.so.0.0.0
|
|
%{_libdir}/%{name}/libtls.so.0
|
|
%{_libdir}/%{name}/libtls.so.0.0.0
|
|
%{_libdir}/%{name}/libpttls.so.0
|
|
%{_libdir}/%{name}/libpttls.so.0.0.0
|
|
%{_libdir}/%{name}/libtpmtss.so.0
|
|
%{_libdir}/%{name}/libtpmtss.so.0.0.0
|
|
%{_libdir}/%{name}/lib%{name}.so.0
|
|
%{_libdir}/%{name}/lib%{name}.so.0.0.0
|
|
%{_libdir}/%{name}/libvici.so.0
|
|
%{_libdir}/%{name}/libvici.so.0.0.0
|
|
%dir %{_libdir}/%{name}/plugins
|
|
%{_libdir}/%{name}/plugins/lib%{name}-aes.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-attr.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-cmac.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-constraints.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-des.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-dnskey.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-fips-prf.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-gmp.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-hmac.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-kernel-netlink.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-md5.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-nonce.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-openssl.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pem.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pgp.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pkcs1.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pkcs8.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pkcs12.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-rc2.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-sshkey.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pubkey.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-random.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-resolve.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-revocation.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-sha1.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-sha2.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-socket-default.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-stroke.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-updown.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-x509.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-xauth-generic.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-xauth-eap.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-xcbc.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-md4.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-md5.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-gtc.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-tls.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-ttls.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-peap.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-mschapv2.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-farp.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-dhcp.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-curl.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-identity.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-vici.so
|
|
%dir %{_libexecdir}/%{name}
|
|
%{_libexecdir}/%{name}/_copyright
|
|
%{_libexecdir}/%{name}/_updown
|
|
%{_libexecdir}/%{name}/charon
|
|
%{_libexecdir}/%{name}/scepclient
|
|
%{_libexecdir}/%{name}/starter
|
|
%{_libexecdir}/%{name}/stroke
|
|
%{_libexecdir}/%{name}/_imv_policy
|
|
%{_libexecdir}/%{name}/imv_policy_manager
|
|
%{_libexecdir}/%{name}/pt-tls-client
|
|
%{_sbindir}/%{name}
|
|
%{_sbindir}/swanctl
|
|
%{_bindir}/pki
|
|
%{_mandir}/man5/%{name}.conf.5.*
|
|
%{_mandir}/man1/%{name}*.1.*
|
|
%{_mandir}/man5/%{name}_ipsec.conf.5.*
|
|
%{_mandir}/man5/%{name}_ipsec.secrets.5.*
|
|
%{_mandir}/man5/%{name}_swanctl.conf.5.*
|
|
%{_mandir}/man8/%{name}.8.*
|
|
%{_mandir}/man8/%{name}_scepclient.8.*
|
|
%{_mandir}/man8/%{name}_swanctl.8.*
|
|
|
|
%files tnc-imcvs
|
|
%{_libdir}/%{name}/libimcv.so.0
|
|
%{_libdir}/%{name}/libimcv.so.0.0.0
|
|
%{_libdir}/%{name}/libtnccs.so.0
|
|
%{_libdir}/%{name}/libtnccs.so.0.0.0
|
|
%{_libdir}/%{name}/libradius.so.0
|
|
%{_libdir}/%{name}/libradius.so.0.0.0
|
|
%dir %{_libdir}/%{name}/imcvs
|
|
%{_libdir}/%{name}/imcvs/imc-attestation.so
|
|
%{_libdir}/%{name}/imcvs/imc-scanner.so
|
|
%{_libdir}/%{name}/imcvs/imc-test.so
|
|
%{_libdir}/%{name}/imcvs/imc-os.so
|
|
%{_libdir}/%{name}/imcvs/imv-attestation.so
|
|
%{_libdir}/%{name}/imcvs/imv-scanner.so
|
|
%{_libdir}/%{name}/imcvs/imv-test.so
|
|
%{_libdir}/%{name}/imcvs/imv-os.so
|
|
%dir %{_libdir}/%{name}/plugins
|
|
%{_libdir}/%{name}/plugins/lib%{name}-pkcs7.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-sqlite.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-tnc.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnc-imc.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnc-imv.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnc-tnccs.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnccs-20.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnccs-11.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnccs-dynamic.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-eap-radius.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnc-ifmap.so
|
|
%{_libdir}/%{name}/plugins/lib%{name}-tnc-pdp.so
|
|
%dir %{_libexecdir}/%{name}
|
|
%{_libexecdir}/%{name}/attest
|
|
%{_libexecdir}/%{name}/pacman
|
|
|
|
%if %{with nm}
|
|
%files charon-nm
|
|
%doc COPYING
|
|
%{_libexecdir}/%{name}/charon-nm
|
|
%endif
|