openssl.xml 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  3. "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  4. <!ENTITY % general-entities SYSTEM "../general.ent">
  5. %general-entities;
  6. ]>
  7. <sect1 id="ch-system-openssl" role="wrap">
  8. <?dbhtml filename="openssl.html"?>
  9. <sect1info condition="script">
  10. <productname>openssl</productname>
  11. <productnumber>&openssl-version;</productnumber>
  12. <address>&openssl-url;</address>
  13. </sect1info>
  14. <title>OpenSSL-&openssl-version;</title>
  15. <indexterm zone="ch-system-openssl">
  16. <primary sortas="a-OpenSSL">OpenSSL</primary>
  17. </indexterm>
  18. <sect2 role="package">
  19. <title/>
  20. <!--para>The OpenSSL package contains management tools and libraries relating
  21. to cryptography. These are useful for providing cryptographic functions
  22. to other packages, such as OpenSSH, email applications and web browsers
  23. (for accessing HTTPS sites). </para-->
  24. <para>OpenSSL 软件包包含密码学相关的管理工具和库。
  25. 它们被用于向其他软件包提供密码学功能,例如 OpenSSH,
  26. 电子邮件程序和 Web 浏览器(访问 HTTPS 站点)。</para>
  27. <segmentedlist>
  28. <segtitle>&buildtime;</segtitle>
  29. <segtitle>&diskspace;</segtitle>
  30. <seglistitem>
  31. <seg>&openssl-ch6-sbu;</seg>
  32. <seg>&openssl-ch6-du;</seg>
  33. </seglistitem>
  34. </segmentedlist>
  35. </sect2>
  36. <sect2 role="installation">
  37. <title>安装 OpenSSL</title>
  38. <para>首先,修复上游发现的一个问题:</para>
  39. <screen><userinput remap="pre">sed -i '/\} data/s/ =.*$/;\n memset(\&amp;data, 0, sizeof(data));/' \
  40. crypto/rand/rand_lib.c</userinput></screen>
  41. <para>准备安装 OpenSSL:</para>
  42. <screen><userinput remap="configure">./config --prefix=/usr \
  43. --openssldir=/etc/ssl \
  44. --libdir=lib \
  45. shared \
  46. zlib-dynamic</userinput></screen>
  47. <para>编译该软件包:</para>
  48. <screen><userinput remap="make">make</userinput></screen>
  49. <para>运行以下命令以测试编译结果:</para>
  50. <screen><userinput remap="test">make test</userinput></screen>
  51. <!--
  52. <para>测试 40-test_rehash.t 的一个子测试在 LFS chroot 环境中失败,
  53. 但如果以普通用户身份运行就能通过。</para>
  54. -->
  55. <para>安装该软件包:</para>
  56. <screen><userinput remap="install">sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile
  57. make MANSUFFIX=ssl install</userinput></screen>
  58. <para>如果需要的话,安装文档:</para>
  59. <screen><userinput remap="install">mv -v /usr/share/doc/openssl /usr/share/doc/openssl-&openssl-version;
  60. cp -vfr doc/* /usr/share/doc/openssl-&openssl-version;</userinput></screen>
  61. </sect2>
  62. <sect2 id="contents-openssl" role="content">
  63. <title>OpenSSL 的内容</title>
  64. <segmentedlist>
  65. <segtitle>安装的程序</segtitle>
  66. <segtitle>安装的库</segtitle>
  67. <segtitle>安装的目录</segtitle>
  68. <seglistitem>
  69. <seg>
  70. c_rehash 和 openssl
  71. </seg>
  72. <seg>
  73. libcrypto.{so,a} 和 libssl.{so,a}
  74. </seg>
  75. <seg>
  76. /etc/ssl,
  77. /usr/include/openssl,
  78. /usr/lib/engines 以及
  79. /usr/share/doc/openssl-&openssl-version;
  80. </seg>
  81. </seglistitem>
  82. </segmentedlist>
  83. <variablelist>
  84. <bridgehead renderas="sect3">简要描述</bridgehead>
  85. <?dbfo list-presentation="list"?>
  86. <?dbhtml list-presentation="table"?>
  87. <varlistentry id="c_rehash">
  88. <term><command>c_rehash</command></term>
  89. <listitem>
  90. <para>
  91. 一个 <application>Perl</application> 脚本,
  92. 扫描一个目录中的所有文件,并添加它们的符号链接,
  93. 符号链接名为对应文件的散列值
  94. </para>
  95. <indexterm zone="ch-system-openssl c_rehash">
  96. <primary sortas="b-c_rehash">c_rehash</primary>
  97. </indexterm>
  98. </listitem>
  99. </varlistentry>
  100. <varlistentry id="openssl-prog">
  101. <term><command>openssl</command></term>
  102. <listitem>
  103. <para>
  104. 一个命令行工具,用于从 shell 使用
  105. <application>OpenSSL</application> 密码学库的一些密码学函数。
  106. 它可以被用于 <command>man 1 openssl</command>
  107. 描述的许多功能。
  108. </para>
  109. <indexterm zone="ch-system-openssl openssl-prog">
  110. <primary sortas="b-openssl">openssl</primary>
  111. </indexterm>
  112. </listitem>
  113. </varlistentry>
  114. <varlistentry id="libcrypto">
  115. <term><filename class="libraryfile">libcrypto.so</filename></term>
  116. <listitem>
  117. <para>
  118. 实现不同 Internet 标准使用的许多密码学算法。
  119. 该库提供的服务被 <application>OpenSSL</application> 的
  120. SSL TLS 和 S/MIME 实现使用,也被用于实现
  121. <application>OpenSSH</application>、
  122. <application>OpenPGP</application> 和其他密码学标准。</para>
  123. <indexterm zone="ch-system-openssl libcrypto">
  124. <primary sortas="c-libcrypto">libcrypto.so</primary>
  125. </indexterm>
  126. </listitem>
  127. </varlistentry>
  128. <varlistentry id="libssl">
  129. <term><filename class="libraryfile">libssl.so</filename></term>
  130. <listitem>
  131. <!--para>
  132. implements the Transport Layer Security (TLS v1) protocol.
  133. It provides a rich API, documentation
  134. on which can be found by running <command>man 3 ssl</command>.
  135. </para-->
  136. <para>实现传输层安全 (TLS v1) 协议。
  137. 它提供了丰富的 API,这些 API 的文档可以通过执行
  138. <command>man 3 ssl</command> 查阅。</para>
  139. <indexterm zone="ch-system-openssl libssl">
  140. <primary sortas="c-libssl">libssl.so</primary>
  141. </indexterm>
  142. </listitem>
  143. </varlistentry>
  144. </variablelist>
  145. </sect2>
  146. </sect1>