Mercurial > hg > nginx-site
view xml/ru/linux_packages.xml @ 2322:bb03e6ac2f16
Added per-distro instructions on how to enable packages signature checks.
author | Konstantin Pavlov <thresh@videolan.org> |
---|---|
date | Wed, 30 Jan 2019 13:04:46 +0300 |
parents | 580c3007d242 |
children | eaef8f4ca921 |
line wrap: on
line source
<!-- Copyright (C) Nginx, Inc. --> <!DOCTYPE article SYSTEM "../../dtd/article.dtd"> <article name="nginx: пакеты для Linux" link="/ru/linux_packages.html" lang="ru" rev="31" toc="no"> <section id="distributions"> <para> В данный момент доступны готовые пакеты для следующих дистрибутивов и их версий: </para> <para> RHEL/CentOS: <table note="yes"> <tr> <td width="30%">Версия</td> <td>Поддерживаемые платформы</td> </tr> <tr> <td width="30%">6.x</td> <td>x86_64, i386</td> </tr> <tr> <td width="30%">7.4+</td> <td>x86_64, ppc64le</td> </tr> </table> </para> <para> Debian: <table note="yes"> <tr> <td width="30%">Версия</td> <td>Поддерживаемые платформы</td> </tr> <tr> <td width="30%">8.x “jessie”</td> <td>x86_64, i386</td> </tr> <tr> <td width="30%">9.x “stretch”</td> <td>x86_64, i386</td> </tr> </table> </para> <para> Ubuntu: <table note="yes"> <tr> <td width="30%">Версия</td> <td>Поддерживаемые платформы</td> </tr> <tr> <td width="30%">14.04 “trusty”</td> <td>x86_64, i386, aarch64/arm64</td> </tr> <tr> <td width="30%">16.04 “xenial”</td> <td>x86_64, i386, ppc64el, aarch64/arm64</td> </tr> <tr> <td width="30%">18.04 “bionic”</td> <td>x86_64, aarch64/arm64</td> </tr> <tr> <td width="30%">18.10 “cosmic”</td> <td>x86_64</td> </tr> </table> </para> <para> SLES: <table note="yes"> <tr> <td width="30%">Версия</td> <td>Поддерживаемые платформы</td> </tr> <tr> <td width="30%">12</td> <td>x86_64</td> </tr> <tr> <td width="30%">15</td> <td>x86_64</td> </tr> </table> </para> <para> Для того, чтобы поставить nginx на новой машине, необходимо подключить и настроить репозиторий пакетов nginx. После этого можно будет установить и обновлять nginx из этого репозитория. </para> </section> <section name="Инструкции по установке" id="instructions"> <section name="RHEL/CentOS" id="RHEL-CentOS"> <para> Установите пакеты, необходимые для подключения yum-репозитория: <programlisting> sudo yum install yum-utils </programlisting> Для подключения yum-репозитория создайте файл с именем <path>/etc/yum.repos.d/nginx.repo</path> со следующим содержимым: <programlisting> [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key </programlisting> По умолчанию используется репозиторий для стабильной версии nginx. Если предпочтительно использовать пакеты для основной версии nginx, выполните следующую команду: <programlisting> sudo yum-config-manager --enable nginx-mainline </programlisting> Чтобы установить nginx, выполните следующую команду: <programlisting> sudo yum install nginx </programlisting> При запросе подтверждения GPG-ключа проверьте, что отпечаток ключа совпадает с <command>573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62</command>, и, если это так, подтвердите его. </para> </section> <section name="Debian" id="Debian"> <para> Установите пакеты, необходимые для подключения apt-репозитория: <programlisting> sudo apt install curl gnupg2 ca-certificates lsb-release </programlisting> Для подключения apt-репозитория для стабильной версии nginx, выполните следующую команду: <programlisting> echo "deb http://nginx.org/packages/debian `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list </programlisting> Если предпочтительно использовать пакеты для основной версии nginx, выполните следующую команду вместо предыдущей: <programlisting> echo "deb http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list </programlisting> Теперь нужно импортировать официальный ключ, используемый apt для проверки подлинности пакетов: <programlisting> curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add - </programlisting> Проверьте, верный ли ключ был импортирован: <programlisting> sudo apt-key fingerprint ABF5BD827BD9BF62 </programlisting> Вывод команды должен содержать полный отпечаток ключа <command>573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62</command>: <programlisting> pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14] 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 uid [ unknown] nginx signing key <signing-key@nginx.com> </programlisting> Чтобы установить nginx, выполните следующие команды: <programlisting> sudo apt update sudo apt install nginx </programlisting> </para> </section> <section name="Ubuntu" id="Ubuntu"> <para> Установите пакеты, необходимые для подключения apt-репозитория: <programlisting> sudo apt install curl gnupg2 ca-certificates lsb-release </programlisting> Для подключения apt-репозитория для стабильной версии nginx, выполните следующую команду: <programlisting> echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list </programlisting> Если предпочтительно использовать пакеты для основной версии nginx, выполните следующую команду вместо предыдущей: <programlisting> echo "deb http://nginx.org/packages/mainline/ubuntu `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list </programlisting> Теперь нужно импортировать официальный ключ, используемый apt для проверки подлинности пакетов: <programlisting> curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add - </programlisting> Проверьте, верный ли ключ был импортирован: <programlisting> sudo apt-key fingerprint ABF5BD827BD9BF62 </programlisting> Вывод команды должен содержать полный отпечаток ключа <command>573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62</command>: <programlisting> pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14] 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 uid [ unknown] nginx signing key <signing-key@nginx.com> </programlisting> Чтобы установить nginx, выполните следующие команды: <programlisting> sudo apt update sudo apt install nginx </programlisting> </para> </section> <section name="SLES" id="SLES"> <para> Установите пакеты, необходимые для подключения zypper-репозитория: <programlisting> sudo zypper install curl ca-certificates gpg2 </programlisting> Для подключения zypper-репозитория для стабильной версии nginx, выполните следующую команду: <programlisting> sudo zypper addrepo --gpgcheck --type yum --refresh --check \ 'http://nginx.org/packages/sles/$releasever' nginx-stable </programlisting> Если предпочтительно использовать пакеты для основной версии nginx, выполните следующую команду вместо предыдущей: <programlisting> sudo zypper addrepo --gpgcheck --type yum --refresh --check \ 'http://nginx.org/packages/mainline/sles/$releasever' nginx-mainline </programlisting> Теперь нужно импортировать официальный ключ, используемый zypper/rpm для проверки подлинности пакетов. Скачайте ключ: <programlisting> curl -o /tmp/nginx_signing.key https://nginx.org/keys/nginx_signing.key </programlisting> Проверьте, верный ли ключ был загружен: <programlisting> gpg --with-fingerprint /tmp/nginx_signing.key </programlisting> Вывод команды должен содержать полный отпечаток ключа <command>573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62</command>: <programlisting> pub 2048R/7BD9BF62 2011-08-19 [expires: 2024-06-14] Key fingerprint = 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 uid nginx signing key <signing-key@nginx.com> </programlisting> Импортируйте ключ в базу данных rpm: <programlisting> sudo rpmkeys --import /tmp/nginx_signing.key </programlisting> Чтобы установить nginx, выполните следующую команду: <programlisting> sudo zypper install nginx </programlisting> </para> </section> </section> <section name="Пакеты с исходным кодом" id="sourcepackages"> <para> Исходные коды пакетов находятся в соответствующем <link url="http://hg.nginx.org/pkg-oss">репозитории</link>. </para> <para> Ветка репозитория <literal>default</literal> содержит исходные коды пакетов для mainline-версии, в то время как ветки <literal>stable-*</literal> содержат исходные коды пакетов для стабильных релизов. Для сборки бинарных пакетов запустите <command>make</command> в каталоге <path>debian/</path> для Debian/Ubuntu или в каталоге <path>rpm/SPECS/</path> для RHEL/CentOS/SLES. </para> <para> Исходные коды пакетов распространяются под той же <link url="../LICENSE">BSD-подобной лицензией из 2 пунктов</link>, что и сам nginx. </para> </section> <section name="Динамические модули" id="dynmodules"> <para> Для того чтобы избежать увеличения числа зависимостей, основной пакет nginx не включает модули, которым требуются дополнительные библиотеки. Начиная с версии 1.9.11 nginx поддерживает <link doc="docs/ngx_core_module.xml" id="load_module">динамические модули</link>, и следующие модули собираются как динамические и поставляются в виде отдельных пакетов: <programlisting> nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt </programlisting> </para> </section> <section name="Подписи" id="signatures"> <para> Поскольку наши <link doc="../en/pgp_keys.xml">PGP-ключи</link> находятся на том же сервере, что и пакеты, им следует доверять в равной степени. Поэтому мы настоятельно рекомендуем дополнительно проверить подлинность загруженных PGP-ключей. В PGP есть понятие “сети доверия”, когда ключ подписывается чьим-либо другим ключом, тот в свою очередь третьим, и т.д. Это зачастую позволяет построить цепочку от произвольного ключа до ключа человека, которого вы знаете и кому доверяете лично, и таким образом удостовериться в подлинности первого ключа в цепочке. Подробно эта концепция описана в <link url="http://www.dewinter.com/gnupg_howto/english/GPGMiniHowto-1.html"> GPG Mini Howto</link>. У наших ключей есть достаточное количество подписей, поэтому проверить их подлинность относительно несложно. </para> </section> </article>