Группа :: Система/Серверы
Пакет: openvpn
Главная Изменения Спек Патчи Загрузить Bugs and FR
# spec file for package openvpn (Version 2.0)
#
%define version 2.0.8
%define release alt0.M24.1
Name: openvpn
Version: %version
Release: %release
Summary: a full-featured SSL VPN solution
Summary(ru_RU.KOI8-R): полнофункциональное решение VPN на базе SSL
License: GPL
Group: System/Servers
URL: http://www.openvpn.net
Packager: Nikolay A. Fetisov <naf at altlinux.ru>
# Because of /etc/syslog.d/ feature.
Conflicts: syslogd < 1.4.1-alt11
BuildRequires: libssl-devel, zlib-devel, liblzo-devel
BuildRequires: coreutils, chrooted >= 0.3, libpam-devel
Source0: %name-%version.tar.gz
Source1: %name.init
Source2: %name-startup
Source3: %name.sysconfig
Source4: %name.chroot.lib
Source5: %name.chroot.conf
Source6: %name.chroot.all
Source7: %name-README.ALT.koi8-r
Source8: %name-server.conf
Source9: %name-client.conf
%description
OpenVPN is a full-featured SSL VPN solution which can accomodate
a wide range of configurations, including road warrior access,
home/office/campus telecommuting, WiFi security, secure branch
office linking, and enterprise-scale remote access solutions
with load balancing, failover, and fine-grained access-controls.
%description -l ru_RU.KOI8-R
OpenVPN - полнофункциональное решение для VPN с использованием
SSL, с помощью которого можно решить широкий круг задач, включая
подключения для удалённых пользователей, телекоммуникации для
дома и офиса, безопасные подключения для беспроводных сетей,
безопасную связь с удалёнными офисами, решения для удалённого
доступа масштаба предприятий с поддержкой балансировки нагрузки,
отказоустойчивости и четко разграниченным контролем доступа.
%package plugins
Summary: external plugins for OpenVPN
Summary(ru_RU.KOI8-R): внешние расширения для OpenVPN
Group: System/Servers
Requires: %name = %version-%release
Provides: %name-plugins = %version-%release
Obsoletes: %name-plugins
%description plugins
OpenVPN is a full-featured SSL VPN solution.
This package contains OpenVPN plugins for user authentification
via PAM and to allow run a down script with root privileges.
%description plugins -l ru_RU.KOI8-R
OpenVPN - полнофункциональное решение для VPN на базе SSL.
Данный пакет содержит расширения (plugins) для авторизации
пользователей через PAM и запуска при разрыве соединений
скрипта с привилегиями root.
%package docs
Summary: OpenVPN documentation
Summary(ru_RU.KOI8-R): документация к OpenVPN
Group: System/Servers
Requires: %name = %version-%release
Provides: %name-docs = %version-%release
Obsoletes: %name-docs
%description docs
OpenVPN is a full-featured SSL VPN solution.
This package contains OpenVPN documentation,
sample configs and scripts.
%description docs -l ru_RU.KOI8-R
OpenVPN - полнофункциональное решение для VPN на базе SSL.
Данный пакет содержит документацию, примеры конфигурации и
скриптов для OpenVPN.
%define openvpn_root %_localstatedir/%name
%define openvpn_cache %openvpn_root/cache
%prep
%setup -n %name-%version
%__cp %SOURCE7 README.ALT.koi8-r
%__cp %SOURCE8 server.conf
%__cp %SOURCE9 client.conf
%__mv -f COPYRIGHT.GPL COPYRIGHT.GPL.orig
%__ln_s $(relative %_licensedir/GPL-2 %_docdir/%name/COPYRIGHT.GPL) COPYRIGHT.GPL
%__subst 's/DLOPEN_PAM=1/DLOPEN_PAM=0/' plugin/auth-pam/Makefile
%build
%configure --enable-iproute2
%make_build
%__subst 's|nobody|openvpn|' sample-config-files/*
%__make -C plugin/down-root/
%__make -C plugin/auth-pam/
# Building 'simple' plugin
cd plugin/examples
./build simple
%__mv simple.so %name-examples.so
# make check hangs inside hasher
#%%__make check
%install
%make_install DESTDIR=%buildroot install
%__mkdir_p %buildroot/%_initdir
%__mkdir_p %buildroot/%_sysconfdir/sysconfig
%__install -m 0750 -d %buildroot%_sysconfdir/%name
%__install -m 0750 -d %buildroot%_sysconfdir/%name/keys
%__install -m 0755 -d %buildroot%openvpn_root
%__install -m 0755 -d %buildroot%openvpn_root/{etc,lib}
%__install -m 0755 -d %buildroot%openvpn_root/etc/openvpn
%__install -m 0755 -d %buildroot%openvpn_cache
%__install -m 0755 %SOURCE1 %buildroot%_initdir/%name
%__install -m 0750 %SOURCE2 %buildroot%_sysconfdir/%name
%__install -m 0640 %SOURCE3 %buildroot%_sysconfdir/sysconfig/%name
%__install -p -m 0750 -D %SOURCE4 %buildroot%_sysconfdir/chroot.d/%name.lib
%__install -p -m 0750 -D %SOURCE5 %buildroot%_sysconfdir/chroot.d/%name.conf
%__install -p -m 0750 -D %SOURCE6 %buildroot%_sysconfdir/chroot.d/%name.all
# Install plugins
%__install -m 0750 -d %buildroot%_libdir/%name/plugin
for pi in auth-pam down-root examples; do
%__mv -f plugin/$pi/README plugin/README.$pi
if [ -x plugin/$pi/%name-$pi.so ]; then
%__install -c -m 0755 plugin/$pi/%name-$pi.so %buildroot%_libdir/%name/plugin/%name-$pi.so
fi
done
%__mkdir plugins
%__mv -f plugin/README plugin/README.plugins
%__mv -f plugin/README* plugins/
# Make use of syslogd-1.4.1-alt11 /etc/syslog.d/ feature.
%__mkdir_p %buildroot%openvpn_root/dev
/usr/bin/mksock %buildroot%openvpn_root/dev/log
%__mkdir_p -m700 %buildroot%_sysconfdir/syslog.d
ln -s %openvpn_root/dev/log %buildroot%_sysconfdir/syslog.d/%name
%pre
# Add the "openvpn" user
/usr/sbin/useradd -c 'OpenVPN daemon' \
-s /dev/null -r -d /dev/null openvpn 2> /dev/null || :
%post
%_sysconfdir/chroot.d/%name.all
%post_service %name
%preun
%preun_service %name
%files
%doc AUTHORS ChangeLog NEWS PORTS README COPYING
%doc --no-dereference COPYRIGHT.GPL
%doc README.ALT.koi8-r server.conf client.conf
%_sbindir/%name
%_mandir/man?/*
%attr(0750,root,openvpn) %dir %_sysconfdir/%name
%attr(0750,root,openvpn) %dir %_sysconfdir/%name/keys
%attr(0750,root,openvpn) %dir %openvpn_root
%dir %openvpn_root/etc
%attr(0710,root,openvpn) %dir %openvpn_root/dev
%ghost %attr(0666,root,root) %openvpn_root/dev/log
%dir %openvpn_root/etc/openvpn
%dir %openvpn_root/lib
%attr(0750,openvpn,openvpn) %dir %openvpn_cache
%config(noreplace) %_sysconfdir/%name/%name-startup
%config(noreplace) %_sysconfdir/sysconfig/%name
%config %_sysconfdir/chroot.d/%name.*
%config %_initdir/%name
%_sysconfdir/syslog.d/%name
%files plugins
%doc plugins*
%dir %_libdir/%name
%dir %_libdir/%name/plugin
%_libdir/%name/plugin/%name-*.so
%files docs
%doc INSTALL-win32.txt INSTALL
%doc easy-rsa*
%doc sample-config-files*
%doc sample-keys*
%doc management*
%doc sample-scripts*
%changelog
…
Полный changelog можно просмотреть здесь
#
%define version 2.0.8
%define release alt0.M24.1
Name: openvpn
Version: %version
Release: %release
Summary: a full-featured SSL VPN solution
Summary(ru_RU.KOI8-R): полнофункциональное решение VPN на базе SSL
License: GPL
Group: System/Servers
URL: http://www.openvpn.net
Packager: Nikolay A. Fetisov <naf at altlinux.ru>
# Because of /etc/syslog.d/ feature.
Conflicts: syslogd < 1.4.1-alt11
BuildRequires: libssl-devel, zlib-devel, liblzo-devel
BuildRequires: coreutils, chrooted >= 0.3, libpam-devel
Source0: %name-%version.tar.gz
Source1: %name.init
Source2: %name-startup
Source3: %name.sysconfig
Source4: %name.chroot.lib
Source5: %name.chroot.conf
Source6: %name.chroot.all
Source7: %name-README.ALT.koi8-r
Source8: %name-server.conf
Source9: %name-client.conf
%description
OpenVPN is a full-featured SSL VPN solution which can accomodate
a wide range of configurations, including road warrior access,
home/office/campus telecommuting, WiFi security, secure branch
office linking, and enterprise-scale remote access solutions
with load balancing, failover, and fine-grained access-controls.
%description -l ru_RU.KOI8-R
OpenVPN - полнофункциональное решение для VPN с использованием
SSL, с помощью которого можно решить широкий круг задач, включая
подключения для удалённых пользователей, телекоммуникации для
дома и офиса, безопасные подключения для беспроводных сетей,
безопасную связь с удалёнными офисами, решения для удалённого
доступа масштаба предприятий с поддержкой балансировки нагрузки,
отказоустойчивости и четко разграниченным контролем доступа.
%package plugins
Summary: external plugins for OpenVPN
Summary(ru_RU.KOI8-R): внешние расширения для OpenVPN
Group: System/Servers
Requires: %name = %version-%release
Provides: %name-plugins = %version-%release
Obsoletes: %name-plugins
%description plugins
OpenVPN is a full-featured SSL VPN solution.
This package contains OpenVPN plugins for user authentification
via PAM and to allow run a down script with root privileges.
%description plugins -l ru_RU.KOI8-R
OpenVPN - полнофункциональное решение для VPN на базе SSL.
Данный пакет содержит расширения (plugins) для авторизации
пользователей через PAM и запуска при разрыве соединений
скрипта с привилегиями root.
%package docs
Summary: OpenVPN documentation
Summary(ru_RU.KOI8-R): документация к OpenVPN
Group: System/Servers
Requires: %name = %version-%release
Provides: %name-docs = %version-%release
Obsoletes: %name-docs
%description docs
OpenVPN is a full-featured SSL VPN solution.
This package contains OpenVPN documentation,
sample configs and scripts.
%description docs -l ru_RU.KOI8-R
OpenVPN - полнофункциональное решение для VPN на базе SSL.
Данный пакет содержит документацию, примеры конфигурации и
скриптов для OpenVPN.
%define openvpn_root %_localstatedir/%name
%define openvpn_cache %openvpn_root/cache
%prep
%setup -n %name-%version
%__cp %SOURCE7 README.ALT.koi8-r
%__cp %SOURCE8 server.conf
%__cp %SOURCE9 client.conf
%__mv -f COPYRIGHT.GPL COPYRIGHT.GPL.orig
%__ln_s $(relative %_licensedir/GPL-2 %_docdir/%name/COPYRIGHT.GPL) COPYRIGHT.GPL
%__subst 's/DLOPEN_PAM=1/DLOPEN_PAM=0/' plugin/auth-pam/Makefile
%build
%configure --enable-iproute2
%make_build
%__subst 's|nobody|openvpn|' sample-config-files/*
%__make -C plugin/down-root/
%__make -C plugin/auth-pam/
# Building 'simple' plugin
cd plugin/examples
./build simple
%__mv simple.so %name-examples.so
# make check hangs inside hasher
#%%__make check
%install
%make_install DESTDIR=%buildroot install
%__mkdir_p %buildroot/%_initdir
%__mkdir_p %buildroot/%_sysconfdir/sysconfig
%__install -m 0750 -d %buildroot%_sysconfdir/%name
%__install -m 0750 -d %buildroot%_sysconfdir/%name/keys
%__install -m 0755 -d %buildroot%openvpn_root
%__install -m 0755 -d %buildroot%openvpn_root/{etc,lib}
%__install -m 0755 -d %buildroot%openvpn_root/etc/openvpn
%__install -m 0755 -d %buildroot%openvpn_cache
%__install -m 0755 %SOURCE1 %buildroot%_initdir/%name
%__install -m 0750 %SOURCE2 %buildroot%_sysconfdir/%name
%__install -m 0640 %SOURCE3 %buildroot%_sysconfdir/sysconfig/%name
%__install -p -m 0750 -D %SOURCE4 %buildroot%_sysconfdir/chroot.d/%name.lib
%__install -p -m 0750 -D %SOURCE5 %buildroot%_sysconfdir/chroot.d/%name.conf
%__install -p -m 0750 -D %SOURCE6 %buildroot%_sysconfdir/chroot.d/%name.all
# Install plugins
%__install -m 0750 -d %buildroot%_libdir/%name/plugin
for pi in auth-pam down-root examples; do
%__mv -f plugin/$pi/README plugin/README.$pi
if [ -x plugin/$pi/%name-$pi.so ]; then
%__install -c -m 0755 plugin/$pi/%name-$pi.so %buildroot%_libdir/%name/plugin/%name-$pi.so
fi
done
%__mkdir plugins
%__mv -f plugin/README plugin/README.plugins
%__mv -f plugin/README* plugins/
# Make use of syslogd-1.4.1-alt11 /etc/syslog.d/ feature.
%__mkdir_p %buildroot%openvpn_root/dev
/usr/bin/mksock %buildroot%openvpn_root/dev/log
%__mkdir_p -m700 %buildroot%_sysconfdir/syslog.d
ln -s %openvpn_root/dev/log %buildroot%_sysconfdir/syslog.d/%name
%pre
# Add the "openvpn" user
/usr/sbin/useradd -c 'OpenVPN daemon' \
-s /dev/null -r -d /dev/null openvpn 2> /dev/null || :
%post
%_sysconfdir/chroot.d/%name.all
%post_service %name
%preun
%preun_service %name
%files
%doc AUTHORS ChangeLog NEWS PORTS README COPYING
%doc --no-dereference COPYRIGHT.GPL
%doc README.ALT.koi8-r server.conf client.conf
%_sbindir/%name
%_mandir/man?/*
%attr(0750,root,openvpn) %dir %_sysconfdir/%name
%attr(0750,root,openvpn) %dir %_sysconfdir/%name/keys
%attr(0750,root,openvpn) %dir %openvpn_root
%dir %openvpn_root/etc
%attr(0710,root,openvpn) %dir %openvpn_root/dev
%ghost %attr(0666,root,root) %openvpn_root/dev/log
%dir %openvpn_root/etc/openvpn
%dir %openvpn_root/lib
%attr(0750,openvpn,openvpn) %dir %openvpn_cache
%config(noreplace) %_sysconfdir/%name/%name-startup
%config(noreplace) %_sysconfdir/sysconfig/%name
%config %_sysconfdir/chroot.d/%name.*
%config %_initdir/%name
%_sysconfdir/syslog.d/%name
%files plugins
%doc plugins*
%dir %_libdir/%name
%dir %_libdir/%name/plugin
%_libdir/%name/plugin/%name-*.so
%files docs
%doc INSTALL-win32.txt INSTALL
%doc easy-rsa*
%doc sample-config-files*
%doc sample-keys*
%doc management*
%doc sample-scripts*
%changelog
…
Полный changelog можно просмотреть здесь