Files
archived-doc-pt-br/security/apache.xml
2025-08-28 17:13:49 -03:00

68 lines
3.2 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: ab6785b01ce1006e3a9761988575289f40c9b678 Maintainer: fabioluciano Status: ready --><!-- CREDITS: narigone, fabioluciano -->
<!-- splitted from ./index.xml, last change in rev 1.66 -->
<chapter xml:id="security.apache" xmlns="http://docbook.org/ns/docbook">
<title>Instalando como módulo do Apache</title>
<simpara>
Quando o <acronym>PHP</acronym> é usado como módulo do Apache, ele herda as permissões
do usuário do Apache (normalmente as do usuário "nobody"). Isso tem
vários impactos de segurança e autorização. Por exemplo, se você estiver usando
o <acronym>PHP</acronym> para acessar um banco de dados, a menos que o banco de dados tenha um controle
de acesso interno, você terá que fazer com que o banco de dados seja acessível ao usuário
"nobody". Isso significa que um script malicioso pode acessar e modificar
o banco de dados, mesmo sem um usuário e senha. É possível que um web spider
possa passar em uma página web de administração do banco de dados
e remover todos os bancos de dados. Você pode se proteger contra isso
usando autorização do Apache, ou você pode desenvolver
seu modelo de acesso próprio usando LDAP, arquivos &htaccess;, etc. e incluir
esse código como parte dos seus scripts <acronym>PHP</acronym>.
</simpara>
<simpara>
Normalmente, uma vez que a segurança está estabelecida até esse ponto onde o
usuário do <acronym>PHP</acronym> (no caso, o usuário apache) tem pouco risco atribuído a ele,
você descobre que o <acronym>PHP</acronym> não tem permissão de escrita nos
diretórios dos usuários. Ou talvez tenha sido proibido de acessar
ou alterar bancos de dados. Também foi proibido de escrever
arquivos, bons ou ruins, ou fazer transações de bancos de dados, boas ou ruins.
</simpara>
<simpara>
Um erro frequente de segurança feito até esse ponto é permitir ao Apache
permissões de administrador (root), ou aumentar as habilidades do Apache
de qualquer outra forma.
</simpara>
<simpara>
Aumentar as permissões do usuário do Apache para a de administrador é
extremamente perigoso e pode comprometer o sistema inteiro, então executar com sudo,
com chroot, ou então executar como root não deve ser considerado por
aqueles que não são profissionais em segurança.
</simpara>
<simpara>
Existem algumas soluções mais simples. Usando a diretiva
<link linkend="ini.open-basedir">open_basedir</link> pode-se controlar e restringir quais
diretórios o <acronym>PHP</acronym> tem permissão de usar. Você também pode configurar
áreas exclusivas para o Apache, restringir todas as atividades web para arquivos
que não sejam de algum usuário ou do sistema.
</simpara>
</chapter>
<!-- 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
-->