Files
archived-doc-pt-br/reference/openssl/configure.xml
2024-10-22 13:55:14 -03:00

145 lines
5.5 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: badd30777a8ce1e6ad58265e36dfa76452e90119 Maintainer: fernandowobeto Status: ready --><!-- CREDITS: fernandowobeto -->
<section xml:id="openssl.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.install;
<para>
Para usar o suporte OpenSSL do PHP, o PHP deve ser compilado com <option
role="configure">--with-openssl</option>.
</para>
<para>
A biblioteca OpenSSL também tem requisitos adicionais para operação normal em
tempo de execução. Mais notavelmente, o OpenSSL requer acesso a um gerador de
números aleatórios ou pseudoaleatórios; na maioria das plataformas Unix e similares (incluindo Linux),
isso significa que ele deve ter acesso a um dispositivo <literal>/dev/urandom</literal> ou
<literal>/dev/random</literal>.
</para>
<para>
A opção <option role="configure">--with-system-ciphers</option> do comando "configure"
está disponível, o que faz com que o PHP use a lista de cifras do sistema em vez de um padrão fixo codificado.
</para>
<note>
<title>Nota para usuários do Win32</title>
<para>
&ext.windows.path.dll;
<filename>libeay32.dll</filename>,
ou, a partir do OpenSSL 1.1, <filename>libcrypto-*.dll</filename>
</para>
<para>
Além disso, se houver planos de usar as funções de geração de chaves e
assinatura de certificados, será necessário instalar um arquivo
<filename>openssl.cnf</filename> válido em seu sistema.
Existe um arquivo de configuração de exemplo incluído
nas distribuições binárias do PHP para Win32, no diretório
<filename class="directory">extras/ssl</filename>.
</para>
<para>
O PHP pesquisará o <filename>openssl.cnf</filename> usando a
seguinte lógica:
<itemizedlist>
<listitem>
<simpara>a variável de ambiente <literal>OPENSSL_CONF</literal>, se
definida, será usada como o caminho (incluindo o nome do arquivo) do arquivo
de configuração.
</simpara>
</listitem>
<listitem>
<simpara>a variável de ambiente <literal>SSLEAY_CONF</literal>, se
definida, será usada como o caminho (incluindo o nome do arquivo) do arquivo
de configuração.
</simpara>
</listitem>
<listitem>
<simpara>Será assumido que o arquivo <filename>openssl.cnf</filename> deve ser
encontrado na área padrão de certificados, conforme configurado no momento em que
a DLL do openssl foi compilada. Isso geralmente significa que o nome de arquivo padrão
é <filename>C:\Program Files\Common Files\SSL\openssl.cnf</filename> (x64)
ou <filename>C:\Program Files (x86)\Common Files\SSL\openssl.cnf</filename> (x86), ou,
antes do PHP 7.4.0, <filename>C:\usr\local\ssl\openssl.cnf</filename>.
</simpara>
</listitem>
</itemizedlist>
</para>
<simpara>
É necessário escolher de o
arquivo de configuração deve ser instalado no caminho padrão ou
em outro lugar e usar variáveis de ambiente
(possivelmente uma configuração para cada host virtual) para localizar o arquivo de configuração.
Observe que é possível substituir o caminho padrão do script usando
as opções no parâmetro <parameter>options</parameter> das funções que exigem um
arquivo de configuração.
</simpara>
<caution>
<simpara>
Deve ser assegurado que usuários não privilegiados não tenham permissão para modificar <filename>openssl.cnf</filename>.
</simpara>
</caution>
<simpara>
A partir do OpenSSL 3.0.0, que é usado no Windows por padrão a partir do PHP 8.2.0, vários
algoritmos foram considerados legados. Esses algoritmos comumente caíram em desuso,
foram considerados inseguros pela comunidade criptográfica ou algo semelhante.
Esses algoritmos ainda estão disponíveis através do provedor legado
(<filename>extras/ssl/legacy.dll</filename>); seu uso é descrito na seção sobre
<link xlink:href="&url.openssl.config;#Provider-Configuration">configuração do provedor</link>
no manual do OpenSSL.
</simpara>
</note>
<simplesect role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>7.4.0</entry>
<entry>
A opção <option role="configure">--with-openssl[=DIR]</option> não
aceita mais um argumento de diretório, em favor da configuração da variável pkg-config
<envar>PKG_CONFIG_PATH</envar> para a localização do OpenSSL ou
especificando as variáveis <envar>OPENSSL_LIBS</envar> e
<envar>OPENSSL_CFLAGS</envar>.
</entry>
</row>
<row>
<entry>7.4.0</entry>
<entry>
O caminho de configuração padrão do OpenSSL foi alterado de <filename>C:\usr\local\ssl</filename>
para <filename>C:\Program Files\Common Files\SSL</filename> e
<filename>C:\Program Files (x86)\Common Files\SSL</filename>, respectivamente.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</simplesect>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->