рдЬрдм рд╕рд░реНрд╡рд░ рдХреЛ рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╣реА рднреМрддрд┐рдХ рдЖрдИрдкреА рдкрддреЗ рдкрд░ HTTPS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдИ рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рд╣реЛрд╕реНрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЧрдпрд╛ред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрд╕реА CentOS 5.6 рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдорд╛рдирдХ Apache-2.2.19 рдкрд░ рд░рд╣рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
рдореБрдЭреЗ CentOS рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ред
рд╕рд┐рджреНрдзрд╛рдВрдд
рдЖрд░рдПрдлрд╕реА 4366 рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЦрдВрдб
3.1ред рд╕рд░реНрд╡рд░ рдирд╛рдо рд╕рдВрдХреЗрдд рд╕рдВрднрд╡ рд╣реИред
рдЙрдЪрд┐рдд рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рд╕рд░реНрд╡рд░ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ (рдмреНрд░рд╛рдЙрдЬрд╝рд░) рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЕрднреНрдпрд╛рд╕
рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ SNI рд╡рд┐рд╕реНрддрд╛рд░ рд╕рдорд░реНрдерди рдХреЛ Apache HTTP рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг 2.2.12 рд╕реЗ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╡рд┐рд╡рд░рдг
рдЕрдкрд╛рдЪреЗ рд╡рд┐рдХреА рдореЗрдВ рд╣реИрдВ ред
рдХрд╛рд░реНрдп рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ OpenSSL рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрд╕реНрдХрд░рдг 0.9.8f рдпрд╛ рдЙрдЪреНрдЪрддрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ CentOS 5.6 OpenSSL рд╕рдВрд╕реНрдХрд░рдг 0.9.8e рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╣реИ, рдФрд░ "рдЙрдард╛рдирд╛" рдпрд╣ рдЗрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрдИ рдЕрдиреНрдп рдШрдЯрдХ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдмрдВрдзреЗ рд╣реИрдВред
рдкреИрдХреЗрдЬ рдЯреНрд░реА рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рдЕрд▓рдЧ рдУрдкрдирдПрд╕рдПрд╕рдПрд▓ рдФрд░ рдЕрдкрд╛рдЪреЗ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЕрдирд┐рд╢реНрдЪрд┐рдд рд╣реИред
рдПрдХ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдореИрдВ рдПрдХ рд╡рд┐рдХрд▓реНрдк рднрд░ рдореЗрдВ рдЖрдпрд╛:
рдЧреНрд░реВрдЯрд▓реНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдФрд░
mod_gnutls рдореЙрдбреНрдпреВрд▓ред
рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЧреНрд░реВрдЯрд▓реНрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рднреА рдореМрдЬреВрдж рд╣реИ рдФрд░ рдмрд╣реБрдд рдкреБрд░рд╛рдиреА рднреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдлреА рджрд░реНрдж рд░рд╣рд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдирддреАрдЬрддрди, "рддрд╛рдЬрд╛"
рдЧрдЯрд░рд▓реНрд╕ рдФрд░
mod_gnutls рдкреИрдХреЗрдЬ рдЗрдХрдЯреНрдареЗ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЧрдП рдереЗ, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдмрд╛рдХреА рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдиреНрдпреВрдирддрдо рдкреНрд░рднрд╛рд╡ рдХреЗ рд╕рд╛рде рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рджреАред рдЕрд╕реЗрдВрдмрд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд░ рдХреИрдЯ рд╡рд┐рд╡рд░рдг рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рддрд╣рддред
рдкреИрдХреЗрдЬ рд╡рд┐рдзрд╛рдирд╕рднрд╛
рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдирд┐рдпрдорд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ * -рд╡реЗрд▓ рдкреИрдХреЗрдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреА рд╕реВрдЪреА рдирд╣реАрдВ рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред
- рдлреЗрдбреЛрд░рд╛ рдХреЛрд░ 15 рдмрдВрдбрд▓ ( рдлреЗрдбреЛрд░рд╛ рдорд┐рд░рд░ рд▓рд┐рд╕реНрдЯ ) рд╕реЗ рдореИрдВрдиреЗ рдкреИрдХреЗрдЬ рд▓рд┐рдпрд╛:
libtasn1-2.7-2.fc15.src.rpm
GNUTLS-2.10.5-1.fc15.src.rpm
- рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реЛрдо рдкреЗрдЬ ( mod_gnutls ) рд╕реЗ рдореИрдВрдиреЗ рдореЙрдбреНрдпреВрд▓ рд╕реНрд░реЛрдд рдХреЛрдб рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рд▓рд┐рдпрд╛ред
- рд╕реНрдерд╛рдкрд┐рдд рд╕реНрд░реЛрдд рд╕рдВрдХреБрд▓ (- nndd5 рдХреБрдВрдЬреА рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЕрдЧрд░ cpio md5 рдмреЗрдореЗрд▓ рдкрд░ рдХрд╕рдо рдЦрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ srpm рдПрдХ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рд╣реИ)
rpm -ivh --nomd5 libtasn1-2.7-2.fc15.src.rpm
rpm -ivh --nomd5 gnutls-2.10.5-1.fc15.src.rpm
- рд╕реНрд░реЛрдд рдХреЛрдб рд╕рдВрдЧреНрд░рд╣ (mod_gnutls-0.5.9.tar.bz2) / usr / src / redhat / SOURCES рдХреЛ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ред
- In / usr / src / redhat / SPECS рдиреЗ mod_gnutls.spec рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИред рдЖрдзрд╛рд░ mod_gnutls.spec рд╕реЗ http://dev.centos.org/centos/5/testing/SRPMS/mod_gnutls-0.2.0-1.el5.centos.src.rpm рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкреЛрд╕реНрдЯ рдХреЗ рдЕрдВрдд рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА ( mod_gnutls.spec )ред - рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рд╣рдЯрд╛рдП рдЧрдП рдкреБрд░рд╛рдиреЗ рдкреИрдХреЗрдЬ:
yum рдорд┐рдЯрд╛рдирд╛ gnutls libtasn1
- рд╕рдВрдХрд▓рд┐рдд libtasn1 :
rpmbuild -bb --clean /usr/src/redhat/SPECS/libtasn1 .spec - Libtasn1 рд╕рдВрдХреБрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛:
рдпрдо рд╕реНрдерд╛рдиреАрдп рд╕реНрдерд╛рдкрдирд╛ --nogpgcheck/usr/src/redhat/RPMS/x86_64/libtasn1-*.rpm - рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рд╣реБрдЖ рдЕрдВрдЧреВрд░ :
rpmbuild -bb --clean /usr/src/redhat/SPECS/gnutls.spec - рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рдЧрд┐рд░реНрдЯрд▓ рдкреИрдХреЗрдЬ:
yum localinstall --nogpgcheck/usr/src/redhat/RPMS/x86_64/gnutls-*.rpm - рдореИрдВрдиреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ рдХреЗ рд▓рд┐рдП /usr/lib64/pkgconfig/gnutls.pc рдлрд╝рд╛рдЗрд▓ рд╕реЗ zlib рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ред рд╕реНрдерд╛рдкрд┐рдд zlib-devel рдореЗрдВ pkg-config рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИред
- рдЗрдХрдЯреНрдареЗ mod_gnutls :
rpmbuild -bb --clean /usr/src/redhat/SPECS/mod_gnutives.spec - рд╕реНрдерд╛рдкрд┐рдд mod_gnutls рд╕рдВрдХреБрд▓:
yum localinstall --nogpgcheck/usr/src/redhat/RPMS/x86_64/mod_gnutls-*.rpm
рдкреНрд▓рдЧрдЗрди рд╡рд┐рдиреНрдпрд╛рд╕
рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЙрд╕рдХрд╛ рдЕрдкрдирд╛ рдХреИрд╢ рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ
GnuTLSCache рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрджрд┐
рд╕реЗрд▓рд┐рдирдХреНрд╕ рд╕рдХреНрд╖рдо рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдиреАрддрд┐ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
semanage fcontext -a -f "" -t httpd_cache_t "/var/cache/mod_gnutls_cache(/*"? "рдЖрдкрдХреЛ рдХреИрд╢ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдЙрд╕реЗ рдЕрдзрд┐рдХрд╛рд░ рд╕реМрдВрдкрдиреЗ рдЪрд╛рд╣рд┐рдП:
mkdir / var / cache / mod_gnutls_cachechown apache: apache / var / cache / mod_gnutls_cachechmod 700 / var / cache / mod_gnutls_cacheрдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ /etc/httpd/conf.d/mod_gnutls.conf рдореЗрдВ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдореЙрдбреНрдпреВрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ mod_gnutls.conf
рд╡рд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╕рдордп рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдмрд┐рдВрджреБ рд╣реИрдВ:
- рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ mod_ssl рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд▓рд╛рд╣ рджреА рдЬрд╛рддреА рд╣реИред
- рдкреНрд░рддреНрдпреЗрдХ VirtualHost рдпрд╛ рддреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ HTTP рдпрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ HTTPS рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ "рдорд┐рд╢реНрд░рд┐рдд" рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде, SSL-рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдбреЗрдЯрд╛ рдЕрднреА рднреА рдЖрддрд╛ рд╣реИред
- рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд░реНрдЪреБрдЕрд▓ HTTPS рд╣реЛрд╕реНрдЯ рдореЗрдВ рдПрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ рдПрдХ рдХреБрдВрдЬреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрдиреЗрдХреНрд╢рди рдЙрд╕рдХреЗ рд╕рд╛рде рд╣реИред
VirtualHost рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЙрджрд╛рд╣рд░рдг
Listen 80 Listen 443 NameVirtualHost *:80 NameVirtualHost *:443 ServerName defsrv.home.net
рд╕реНрдкреЗрдХ рдлрд╝рд╛рдЗрд▓ ( mod_gnutls.spec )
Summary: mod_gnutls is a DSO module for the apache Web server. Name: mod_gnutls Version: 0.5.9 Release: 1%{?dist} Group: System Environment/Daemons URL: http://www.outoforder.cc/projects/apache/mod_gnutls/ Source: http://www.outoforder.cc/downloads/mod_gnutls/%{name}-%{version}.tar.bz2 Source1: mod_gnutls.conf License: Apache Software License BuildRoot: %{_tmppath}/%{name}-root BuildRequires: httpd-devel > 2.0.42 BuildRequires: gnutls >= 1.2.0, gnutls-devel >= 1.2.0, gnutls-utils >= 1.2.0, apr-devel Requires: httpd-mmn = %(cat %{_includedir}/httpd/.mmn || echo missing httpd-devel) Requires: gnutls >= 1.2.0, httpd >= 2.0.42 %description mod_gnutls uses the GnuTLS library to provide SSL v3, TLS 1.0 and TLS 1.1 encryption for Apache HTTPD. It is similar to mod_ssl in purpose, but does not use OpenSSL. %prep %setup -q %build %configure --disable-srp make %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_libdir}/httpd/modules install -m755 src/.libs/lib%{name}.so $RPM_BUILD_ROOT%{_libdir}/httpd/modules