Intern
Já trabalhou com Apache HTTP Server?
sobes.tech IA
Resposta da IA
Sim, trabalhei. Tenho experiência na configuração, otimização e suporte do Apache HTTP Server em várias infraestruturas.
Áreas principais de trabalho:
- Instalação e configuração básica:
- Compilação a partir do código fonte e instalação a partir de pacotes (
apt,yum). - Edição do ficheiro de configuração principal
httpd.conf(ouapache2.conf). - Configuração das portas de escuta (
Listen).
- Compilação a partir do código fonte e instalação a partir de pacotes (
- Hosts virtuais (Virtual Hosts):
- Criação e configuração de hosts virtuais para alojar vários sites no mesmo servidor.
- Configuração baseada no nome (
Name-based Virtual Hosts) e no IP (IP-based Virtual Hosts). - Uso de directivas
ServerName,ServerAlias,DocumentRoot.
- Módulos do Apache (Modules):
- Ativação e desativação de módulos (por exemplo,
mod_rewrite,mod_ssl,mod_proxy). - Configuração de módulos específicos, como regras de reescrita de URL (
mod_rewrite). - Trabalho com MPM (Multi-Processing Modules) —
prefork,worker,event.
- Ativação e desativação de módulos (por exemplo,
- Segurança:
- Configuração de SSL/TLS usando
mod_ssle Let's Encrypt ou outros certificados. - Restrição de acesso por IP (
Order,Deny,Allow). - Configuração de autenticação (
Basic,Digest) usando.htaccessou ficheiros de configuração. - Proteção contra ataques comuns (por exemplo, DDoS, SQL Injection - em conjunto com WAF).
- Configuração de SSL/TLS usando
- Desempenho e escalabilidade:
- Otimização das configurações MPM (
MaxRequestWorkers,StartServers,MinSpareServers,MaxSpareServers). - Uso de cache (
mod_cache,mod_disk_cache). - Integração com FastCGI (PHP-FPM) e proxy de requisições (
mod_proxy,mod_proxy_http,mod_proxy_fcgi). - Configuração de compressão (
mod_deflate).
- Otimização das configurações MPM (
- Registo e monitorização:
- Configuração dos formatos de logs de acesso (
LogFormat,CustomLog). - Análise dos logs de erros (
ErrorLog). - Integração com sistemas de monitorização (por exemplo, Prometheus Exporter, plugins Nagios).
- Uso de
mod_statuspara monitorizar o estado do servidor e as requisições.
- Configuração dos formatos de logs de acesso (
- Automatização e implantação:
- Escrita de playbooks Ansible para instalar e configurar o Apache.
- Uso de contêineres Docker com Apache.
Exemplo de configuração de um host virtual:
# Exemplo de configuração de um host virtual
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/example.com/public_html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# Redirecionar para HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${APACHE_LOG_DIR}/ssl_error.log
CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
<Directory /var/www/example.com/public_html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile /etc/ssl/certs/example.com.crt
SSLCertificateKeyFile /etc/ssl/private/example.com.key
SSLCertificateChainFile /etc/ssl/certs/example.com.ca-bundle # Se disponível
# Configurações de segurança SSL recomendadas
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA
SSLHonorCipherOrder on
SSLSessionTickets off
SSLCompression off
</VirtualHost>
Existe também experiência comparativa com Nginx, o que permite escolher a solução ótima para cada tarefa ou integrá-las (por exemplo, Apache como backend por trás do Nginx).