Contents

Resolvido: 403 Forbidden "Você não tem permissão para aceder a este servidor"

Muitas configurações de servidores Web enfrentam problemas relacionados com as permissões de ficheiros. Muitas vezes, isso torna o servidor inacessível aos visitantes e manifesta-se sob a forma de um erro “403 Forbidden”. Normalmente, a mensagem de erro é algo como “403 Forbidden: você não tem permissão para acessar / neste servidor”. Pode ser qualquer coisa na forma de “Proibido: você não tem permissão para acessar este recurso”.

“Podem surgir desafios semelhantes devido a discrepâncias nos ficheiros de configuração do Apache e do NGINX, bem como a um potencial mau funcionamento do ficheiro .htaccess. Para resolver esses problemas, é útil seguir estas etapas simples de solução de problemas.

Quais são as causas do erro 403 Forbidden do Apache e do NGINX?

A prevalência de um erro 403 nas plataformas Apache e NGINX pode ser atribuída a uma série de factores díspares. No entanto, ele normalmente resulta de credenciais de autorização insuficientes necessárias para a acessibilidade pública. Além disso, as instalações do WordPress encontram frequentemente este obstáculo como consequência de uma configuração .htaccess incorrecta.

Além disso, com o advento da versão 2.4 do Apache, foram feitas algumas alterações na funcionalidade das directivas que podem impedir o acesso público a sites e potencialmente precipitar um erro “403 Forbidden”.

Como corrigir o erro “403 Forbidden” como utilizador

Se se deparar com o erro “403 Forbidden” enquanto utiliza uma plataforma Web, as tentativas iniciais devem envolver a eliminação das informações em cache do seu browser e a eliminação de quaisquer cookies armazenados. Além disso, se estiver a utilizar uma Rede Privada Virtual (VPN), pode ser necessário desactivá-la, uma vez que uma potencial má configuração da VPN pode resultar neste problema.

Alternativamente, para os administradores de um site, é importante estar ciente de que muitos erros do Apache e do NGINX 403 Forbidden resultam de definições incorrectas de permissões de ficheiros e de ficheiros de configuração com falhas.

Para restaurar a funcionalidade do seu site, siga as etapas descritas no conjunto de soluções fornecido sequencialmente:

Corrigir permissões de arquivo para evitar o erro 403

Muitas pessoas encontram um erro 403 predominante como resultado de uma ausência de autorização adequada. Nos casos em que o administrador do site negligencia a concessão de privilégios de leitura a entidades externas, é provável que os usuários experimentem inacessibilidade ao tentar recuperar um determinado recurso. Consequentemente, esta deficiência na permissão constitui frequentemente a base subjacente a tais erros.

Considere um cenário em que alguém tenta recuperar um documento intitulado “textbook.php” de um site WordPress, apenas para encontrar uma mensagem de erro indicando que não está autorizado a obter entrada em “/textbook.php” no servidor de hospedagem. Isto sugere que o ficheiro existe; no entanto, parece que o administrador do site optou por limitar o acesso ao mesmo para utilizadores gerais.

/pt/images/forbidden-you-can-not-access-textbook-php-on-this-server.jpg

Para garantir que os ficheiros designados para consumo público estão devidamente acessíveis, cabe aos administradores do site verificar se possuem as permissões de leitura necessárias. No caso de um indivíduo encontrar este erro ao visitar um portal público, seria prudente comunicar com o administrador do sítio para retificar a situação.

Modificar as permissões de ficheiros de forma a garantir uma acessibilidade adequada, mantendo a segurança, pode apresentar alguns desafios, especialmente quando se trata de conteúdos publicamente disponíveis. Uma abordagem prudente envolveria começar sem quaisquer permissões e adicioná-las gradualmente conforme necessário. Neste sentido, é geralmente recomendada a organização de directórios com uma definição permissiva de 755 e de ficheiros individuais com uma definição mais restritiva de 644.

Para que uma página web básica funcione corretamente, é necessário conceder privilégios executáveis ao seu diretório associado, assegurando ao mesmo tempo que os ficheiros individuais possuem permissões de leitura. No entanto, deve ter-se o cuidado de não conceder permissões de execução aos próprios ficheiros, uma vez que indivíduos maliciosos podem explorar esta vulnerabilidade para se infiltrarem em servidores acessíveis ao público através de meios não autorizados.

/pt/images/file-permissions-to-solve-you-dont-have-access-error.png

As respectivas permissões conferidas pelos valores 4, 2 e 1 correspondem aos modos de acesso Ler, Escrever e Executar. Consequentemente, quando a um diretório é atribuído um modo de permissão de 755, isso concede ao proprietário autoridade exclusiva sobre o conteúdo do mesmo, enquanto os membros do grupo e outros indivíduos estão limitados à leitura e execução desse conteúdo. Por outro lado, o modo de permissão 644, aplicado a ficheiros, concede ao proprietário privilégios de leitura e escrita, mas restringe todos os outros a apenas ler o conteúdo do ficheiro.

you don’t have permission to access this resource”, é necessário garantir que o diretório webroot tem as permissões de ficheiro e diretório apropriadas. Uma forma de o fazer é utilizando o utilitário chmod , que permite definir as permissões desejadas num formato específico.Por exemplo, o seguinte comando pode ser usado para conceder permissões de leitura, escrita e execução ao dono do diretório enquanto mantém permissões restritas para os outros:bashsudo chown -R :755 /var/www/html/seu-diretório

 sudo find /var/www/html -type d -exec chmod 755 {} \; 

A diretiva acima mencionada presume que você está utilizando a pasta padrão para o seu servidor web, que é tipicamente denotada como a raiz padrão do documento pelo Apache. No caso de estar a utilizar um diretório alternativo, modifique o nome do diretório em conformidade. Para alterar as definições de permissão em cada ficheiro para ‘644’, por favor execute a seguinte instrução:

 sudo find /var/www/html -type f -exec chmod 644 {} \; 

A instrução acima mencionada utiliza os utilitários find para identificar ficheiros singulares, e subsequentemente modifica as suas permissões utilizando chmod. A chave de fecho ‘{}’ engloba os caminhos dos ficheiros obtidos pelo comando find, enquanto o ponto e vírgula ‘;’ denota o fim do processamento iterativo.

Adicionalmente, as permissões para ficheiros individuais também podem ser modificadas. Para ilustrar, considere o seguinte comando que modifica as permissões do arquivo ’textbook.php’ localizado no diretório raiz da web para conceder acessibilidade pública. Consequentemente, qualquer tentativa futura de acessar esse arquivo não apresentará mais a mensagem de erro de acesso não autorizado.

 sudo chmod 644 /var/www/html/textbook.php 

Depois de modificar as permissões de ficheiro necessárias, recomenda-se que inicie um reinício do servidor Web Apache ou NGINX para garantir que quaisquer alterações de configuração são totalmente implementadas e funcionam de forma optimizada.

 sudo systemctl restart apache2.service
sudo systemctl restart nginx 

As instruções acima mencionadas facilitam o reinício dos servidores Apache e NGINX num sistema operativo Ubuntu. No entanto, é importante notar que certas distribuições baseadas em RPM, incluindo o Red Hat Enterprise Linux (RHEL) ou o CentOS, podem ter instalado o Apache com o nome “httpd”. Nestes casos, o utilizador deve empregar o seguinte comando alternativo para uma operação sem problemas:

 sudo systemctl restart httpd 

Fix the .htaccess File for Your WordPress Website

O ficheiro .htaccess funciona como um ficheiro de configuração descentralizado, orientando o servidor web na gestão de ajustes com base em directórios específicos. Em alguns casos, este ficheiro pode ficar danificado e causar um problema de autorização, resultando na mensagem “You do not possess the necessary permissions to access / on this server”.

Felizmente, a resolução de um erro 403 no seu servidor pode ser conseguida simplesmente gerando um novo ficheiro .htaccess. Para gerar um ficheiro .htaccess para o seu site, depois de iniciar sessão no seu painel de controlo do WordPress, navegue até Settings > Permalinks.

/pt/images/pemalink-update-in-wordpress-site.png

Não precisa de efetuar mais nenhum ajuste. Basta clicar no botão “Guardar alterações” e o WordPress criará automaticamente um ficheiro .htaccess atualizado para si.

/pt/images/pemalink-change-in-wordpress-site.png

Quando se deparar com as mensagens de erro “permissão negada para aceder a este recurso” ou “incapaz de ler o ficheiro htaccess; negação de acesso por razões de segurança” num servidor Apache, recomenda-se a criação de um novo ficheiro .htaccess como uma potencial solução, particularmente para sites WordPress.

Configurar diretivas no arquivo de configuração do Apache

O Apache 2.4 emprega um novo módulo de configuração chamado “mod\_authz\_host”, que apresenta várias diretivas inovadoras para implementação. Essencialmente, estas directivas promulgam as orientações subsequentes:

⭐Require all granted:Permitir todos os pedidos

⭐Require all denied:Negar todos os pedidos

A política de segurança para o anfitrião “safe.com” dita que todos os pedidos de entrada devem ter origem neste domínio para que o acesso seja permitido. Isto garante a segurança e a integridade do servidor Web, restringindo o acesso não autorizado e potenciais actividades maliciosas.

Se estiver a utilizar o Apache 2.4, é essencial garantir que o seu ficheiro de configuração principal inclui o segmento de código que se segue. Para verificar se esta secção existe no seu ficheiro, pode utilizar um editor de texto básico, como o Vim, para fins de inspeção. No caso de serem identificadas quaisquer deficiências, adicione o conteúdo necessário ao ficheiro de configuração. Uma vez concluída a operação, será possível

 vim /etc/apache2/apache2.conf 

Code:

 <Directory />
   Options FollowSymLinks
   AllowOverride None
   Require all denied
</Directory>
<Directory /usr/share>
   AllowOverride None
   Require all granted
</Directory>
<Directory /var/www/>
   Options Indexes FollowSymLinks
   AllowOverride None
   Require all granted
</Directory> 

De facto, para um servidor web baseado no Red Hat Enterprise Linux (RHEL), é imperativo assegurar a acessibilidade sem restrições ao diretório /var/www dentro do ficheiro de configuração do Apache. Consequentemente, é crucial que o ficheiro httpd.conf , que pode ser encontrado no caminho especificado, inclua o seguinte trecho de código:

 vim /etc/httpd/conf/httpd.conf 

Código:

 <Directory "/var/www">
         AllowOverride None
         Require all granted
</Directory> 

Em conclusão, para reiniciar o servidor Apache, pode utilizar qualquer um dos métodos acima mencionados, executando um dos comandos fornecidos.

 # for Ubuntu and Debian

sudo systemctl restart apache2.service

# for RHEL and CentOS

sudo systemctl restart httpd 

Corrigir o erro de permissão do servidor 403 Forbidden no Linux

Um problema prevalecente encontrado por várias pessoas envolve dificuldades no acesso a sites públicos ou na resolução de problemas de sites pessoais. Como ação inicial, é recomendável redefinir as permissões do sistema de arquivos dos servidores da Web Apache ou NGINX para resolver esse problema.No entanto, se o erro não for resolvido apesar dos ajustes nas permissões, gerar um novo arquivo .htaccess e verificar se suas diretivas estão configuradas adequadamente no arquivo de configuração do servidor pode ser eficaz.

Uma infinidade de problemas adicionais pode levar a um erro comparável do lado do servidor, necessitando de uma proficiência excecional na resolução de complicações do servidor Linux para restaurar a funcionalidade.