summaryrefslogtreecommitdiff
path: root/lfs-12.0-sysv/chapter08/openssl.html
diff options
context:
space:
mode:
authorSn4il <sn4il@thedroth.rocks>2024-01-10 16:57:29 +0300
committerSn4il <sn4il@thedroth.rocks>2024-01-10 16:57:29 +0300
commitc4d43142181a45b849a15cf8ec5ebe61cea33897 (patch)
tree459a90d19e6f1ece81fbf364c1b5292214d99615 /lfs-12.0-sysv/chapter08/openssl.html
parenta044ba7b1561a513e33de0b7c1876aaa401a26d7 (diff)
downloadsn4il-site-c4d43142181a45b849a15cf8ec5ebe61cea33897.tar.gz
sn4il-site-c4d43142181a45b849a15cf8ec5ebe61cea33897.zip
LFS 12 mirror
Diffstat (limited to 'lfs-12.0-sysv/chapter08/openssl.html')
-rw-r--r--lfs-12.0-sysv/chapter08/openssl.html300
1 files changed, 300 insertions, 0 deletions
diff --git a/lfs-12.0-sysv/chapter08/openssl.html b/lfs-12.0-sysv/chapter08/openssl.html
new file mode 100644
index 0000000..097e1f5
--- /dev/null
+++ b/lfs-12.0-sysv/chapter08/openssl.html
@@ -0,0 +1,300 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+ <title>
+ 8.47. OpenSSL-3.1.2
+ </title>
+ <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
+ <meta name="generator" content="DocBook XSL Stylesheets V1.79.1" />
+ <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
+ "text/css" media="print" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ </head>
+ <body class="lfs" id="lfs-12.0">
+ <div class="navheader">
+ <h4>
+ Линукс с нуля - Версия 12.0
+ </h4>
+ <h3>
+ Глава 8. Установка базового системного программного обеспечения
+ </h3>
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="automake.html" title=
+ "Automake-1.16.5">Пред.</a>
+ <p>
+ Automake-1.16.5
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="kmod.html" title="Kmod-30">След.</a>
+ <p>
+ Kmod-30
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter08.html" title=
+ "Глава 8. Установка базового системного программного обеспечения">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.0">Начало</a>
+ </li>
+ </ul>
+ </div>
+ <div class="wrap" lang="en" xml:lang="en">
+ <h1 class="sect1">
+ <a id="ch-system-openssl" name="ch-system-openssl"></a>8.47.
+ OpenSSL-3.1.2
+ </h1>
+ <div class="package" lang="en" xml:lang="en">
+ <p>
+ Пакет OpenSSL содержит инструменты управления и библиотеки,
+ относящиеся к криптографии. Они полезны для предоставления
+ криптографических функций другим пакетам, таким как OpenSSH,
+ приложениям электронной почты и веб-браузерам (для доступа к сайтам
+ по HTTPS).
+ </p>
+ <div class="segmentedlist">
+ <div class="seglistitem">
+ <div class="seg">
+ <strong class="segtitle">Приблизительное время сборки:</strong>
+ <span class="segbody">3.0 SBU</span>
+ </div>
+ <div class="seg">
+ <strong class="segtitle">Требуемое дисковое
+ пространство:</strong> <span class="segbody">587 MB</span>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="installation" lang="en" xml:lang="en">
+ <h2 class="sect2">
+ 8.47.1. Установка пакета OpenSSL
+ </h2>
+ <p>
+ Подготовьте OpenSSL к компиляции:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">./config --prefix=/usr \
+ --openssldir=/etc/ssl \
+ --libdir=lib \
+ shared \
+ zlib-dynamic</kbd></pre>
+ <p>
+ Скомпилируйте пакет:
+ </p>
+ <pre class="userinput"><kbd class="command">make</kbd></pre>
+ <p>
+ Чтобы протестировать пакет, выполните:
+ </p>
+ <pre class="userinput"><kbd class="command">make test</kbd></pre>
+ <p>
+ Известно, что один тест, 30-test_afalg.t, завершится ошибкой, если
+ в ядре хоста не включен параметр <code class=
+ "option">CONFIG_CRYPTO_USER_API_SKCIPHER</code> или отсутствуют
+ какие-либо опции, обеспечивающих реализацию AES с CBC (например,
+ комбинация <code class="option">CONFIG_CRYPTO_AES</code> и
+ <code class="option">CONFIG_CRYPTO_CBC</code> или <code class=
+ "option">CONFIG_CRYPTO_AES_NI_INTEL</code>, если процессор
+ поддерживает AES-NI). В случае неудачи его можно смело
+ игнорировать.
+ </p>
+ <p>
+ Установите пакет:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile
+make MANSUFFIX=ssl install</kbd></pre>
+ <p>
+ Добавьте версию к имени каталога документации, чтобы структура
+ соответствовала другим пакетам:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">mv -v /usr/share/doc/openssl /usr/share/doc/openssl-3.1.2</kbd></pre>
+ <p>
+ По желанию, установите дополнительную документацию:
+ </p>
+ <pre class="userinput"><kbd class=
+ "command">cp -vfr doc/* /usr/share/doc/openssl-3.1.2</kbd></pre>
+ <div class="admon note">
+ <img alt="[Примечание]" src="../images/note.png" />
+ <h3>
+ Примечание
+ </h3>
+ <p>
+ Вы должны обновить OpenSSL, когда будет выпущена новая версия,
+ исправляющая уязвимости. Начиная с OpenSSL 3.0.0, схема
+ управления версиями OpenSSL следует формату MAJOR.MINOR.PATCH.
+ Совместимость API/ABI гарантируется для одной и той же ОСНОВНОЙ
+ (MAJOR) версии. Поскольку LFS устанавливает только общие
+ библиотеки, нет необходимости перекомпилировать пакеты, которые
+ ссылаются на <code class="filename">libcrypto.so</code> или
+ <code class="filename">libssl.so</code>, <span class=
+ "emphasis"><em>при обновлении до версии с тем же ОСНОВНЫМ номером
+ версии</em></span>.
+ </p>
+ <p>
+ Если установлен <span class="application">OpenSSH</span>, это
+ будет исключением из общего правила, указанного выше. Он содержит
+ чрезмерно ограничительную проверку версии OpenSSL, поэтому и
+ SSH-клиент, и SSH-сервер откажутся запускаться, если OpenSSL
+ обновлен с прежним номером MAJOR версии, но с другим номером
+ MINOR версии. После такого обновления вам необходимо пересобрать
+ <span class="application">OpenSSH</span>. <span class=
+ "bold"><strong>Если <span class="application">OpenSSH</span>
+ используется для доступа к системе, вам необходимо пересобрать и
+ переустановить его после обновления OpenSSL до новой MINOR версии
+ перед выходом из системы, иначе вы не сможете больше войти в
+ систему через SSH.</strong></span>
+ </p>
+ <p>
+ Все запущенные программы, связанные с этими библиотеками, после
+ обновления необходимо остановить и перезапустить. Для получения
+ более подробной информации ознакомьтесь с соответствующей записью
+ в <a class="xref" href="pkgmgt.html#pkgmgmt-upgrade-issues"
+ title="8.2.1. Проблемы с обновлением">Раздел&nbsp;8.2.1,
+ «Проблемы с обновлением»</a>.
+ </p>
+ </div>
+ </div>
+ <div class="content" lang="en" xml:lang="en">
+ <h2 class="sect2">
+ <a id="contents-openssl" name="contents-openssl"></a>8.47.2.
+ Содержимое пакета OpenSSL
+ </h2>
+ <div class="segmentedlist">
+ <div class="seglistitem">
+ <div class="seg">
+ <strong class="segtitle">Установленные программы:</strong>
+ <span class="segbody">c_rehash и openssl</span>
+ </div>
+ <div class="seg">
+ <strong class="segtitle">Установленные библиотеки:</strong>
+ <span class="segbody">libcrypto.so и libssl.so</span>
+ </div>
+ <div class="seg">
+ <strong class="segtitle">Созданные каталоги:</strong>
+ <span class="segbody">/etc/ssl, /usr/include/openssl,
+ /usr/lib/engines и /usr/share/doc/openssl-3.1.2</span>
+ </div>
+ </div>
+ </div>
+ <div class="variablelist">
+ <h3>
+ Краткое описание
+ </h3>
+ <table border="0" class="variablelist">
+ <colgroup>
+ <col align="left" valign="top" />
+ <col />
+ </colgroup>
+ <tbody>
+ <tr>
+ <td>
+ <p>
+ <a id="c_rehash" name="c_rehash"></a><span class=
+ "term"><span class=
+ "command"><strong>c_rehash</strong></span></span>
+ </p>
+ </td>
+ <td>
+ <p>
+ это <span class="application">Perl</span> скрипт, который
+ сканирует все файлы в каталоге и добавляет символические
+ ссылки к их хеш-значениям. Использование <span class=
+ "command"><strong>c_rehash</strong></span> считается
+ устаревшим и должно быть заменено командой <span class=
+ "command"><strong>openssl rehash</strong></span>
+ </p>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <p>
+ <a id="openssl-prog" name="openssl-prog"></a><span class=
+ "term"><span class=
+ "command"><strong>openssl</strong></span></span>
+ </p>
+ </td>
+ <td>
+ <p>
+ это инструмент командной строки для использования
+ различных криптографических функций библиотеки
+ <span class="application">OpenSSL</span> из оболочки. Его
+ можно использовать для различных функций, которые
+ задокументированы в <span class="command"><strong>man 1
+ openssl</strong></span>
+ </p>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <p>
+ <a id="libcrypto" name="libcrypto"></a><span class=
+ "term"><code class="filename">libcrypto.so</code></span>
+ </p>
+ </td>
+ <td>
+ <p>
+ реализует широкий спектр криптографических алгоритмов,
+ используемых в различных интернет-стандартах. Услуги,
+ предоставляемые этой библиотекой, используют <span class=
+ "application">OpenSSL</span>-реализацию SSL, TLS и
+ S/MIME, а также для реализации <span class=
+ "application">OpenSSH</span>, <span class=
+ "application">OpenPGP</span> и других криптографических
+ стандартов.
+ </p>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <p>
+ <a id="libssl" name="libssl"></a><span class=
+ "term"><code class="filename">libssl.so</code></span>
+ </p>
+ </td>
+ <td>
+ <p>
+ реализует протокол безопасности транспортного уровня (TLS
+ v1). Он предоставляет богатый API, документацию по
+ которому можно найти, выполнив команду: <span class=
+ "command"><strong>man 7 ssl</strong></span>
+ </p>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+ </div>
+ <div class="navfooter">
+ <ul>
+ <li class="prev">
+ <a accesskey="p" href="automake.html" title=
+ "Automake-1.16.5">Пред.</a>
+ <p>
+ Automake-1.16.5
+ </p>
+ </li>
+ <li class="next">
+ <a accesskey="n" href="kmod.html" title="Kmod-30">След.</a>
+ <p>
+ Kmod-30
+ </p>
+ </li>
+ <li class="up">
+ <a accesskey="u" href="chapter08.html" title=
+ "Глава 8. Установка базового системного программного обеспечения">Наверх</a>
+ </li>
+ <li class="home">
+ <a accesskey="h" href="../index.html" title=
+ "Линукс с нуля - Версия 12.0">Начало</a>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>