Editando
Apache
(seção)
Ir para navegação
Ir para pesquisar
Aviso:
Você não está conectado. Seu endereço IP será visível publicamente se você fizer alguma edição. Se você
fizer login
ou
criar uma conta
, suas edições serão atribuídas ao seu nome de usuário, juntamente com outros benefícios.
Verificação contra spam.
Não
preencha isto!
= Apache Server = Servidor de Páginas Web Open Source que se caracteriza por trabalhar de forma modular ele tem a capacidade de hospedar vários sites de forma simultânea. == Instalar o Apache2 == Atualize os repositórios e o sistema. apt update ; apt upgrade -y Instala o apache apt install apache2 apache2-data apache2-doc apache2-utils apachetop http-icons -y Conferir se o Firewall do sistema está habilitado ufw status Caso esteja habilitado, libere as portas '''80''' e '''443''' ufw allow 80 ufw allow 443 Permissões para o usuário. adduser $USER www-data adduser $USER sudo adduser $USER root Setando permissões na pasta host. chmod -R 775 /var/www/* Criar a pasta que vai abrigar os arquivos do site. mkdir /var/www/seusite.com.br mkdir /var/www/seusite.com.br/public_html Copie o arquivo index para a pasta criada cp -rv /var/www/html/index.html /var/www/seusite.com.br/public_html/ == Host Virtual == Acesse a pasta das configurações do apache server. cd /etc/apache2/sites-available/ Copie o arquivo padrão '''000-default.conf''' com o nome do seu site e a extensão '''.conf'''. cp -rv /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/seusite.com.br.conf Edite o arquivo '''/etc/apache2/sites-available/seusite.com.br.conf'''. vim /etc/apache2/sites-available/seusite.com.br.conf O arquivo vai estar com a configuração default. Edite-o para que ele redirecione ao endereço do site, conforme as instruções abaixo. <pre> <VirtualHost *:80> ServerAdmin $USERinfo@gmail.com ServerName seusite.com.br DocumentRoot /var/www/seusite.com.br/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> </pre> Após editar o arquivo, habilite o site. a2ensite seusite.com.br.conf Desabilite o site padrão. a2dissite 000-default.conf Restart no apache systemctl reload apache2 ; systemctl restart apache2 ; systemctl status apache2 == Certificado SSL == Para habilitar o mod de SSL. a2enmod ssl Agora chegou a hora de gerar o certificado. openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt onde: * '''openssl''': esta é a ferramenta de linha de comando básica para criar e gerenciar certificados, chaves e outros arquivos OpenSSL. * '''req''': este subcomando especifica o uso do gerenciamento de solicitação de assinatura de certificado (CSR) X.509. O “X.509” é um padrão de infraestrutura de chave pública ao qual SSL e TLS aderem para seu gerenciamento de chave e certificado. Para criar um novo certificado X.509, use este subcomando. * '''-x509''': Isso modifica ainda mais o subcomando anterior informando ao utilitário para criar um certificado autoassinado em vez de gerar uma solicitação de assinatura de certificado, como normalmente aconteceria. * '''-nodes''': Isso informa ao OpenSSL para ignorar a opção de proteger o certificado com uma senha. O Apache precisa ser capaz de ler o arquivo, sem intervenção do usuário, quando o servidor for inicializado. Uma senha impediria que isso acontecesse porque os usuários teriam que inseri-la após cada reinicialização. * '''-days 365''': Esta opção define o período de tempo que o certificado será considerado válido. Neste caso, é definido por um ano. * '''-newkey rsa''': 2048 : especifica que você deseja gerar um novo certificado e uma nova chave ao mesmo tempo. A chave necessária para assinar o certificado não foi criada em uma etapa anterior, portanto, ela precisa ser criada junto com o certificado. A rsa:2048parte diz para criar uma chave RSA com 2048 bits de comprimento. * '''-keyout''': Esta linha informa ao OpenSSL onde colocar o arquivo de chave privada gerado que está sendo criado. * '''-out''': Isso informa ao OpenSSL onde colocar o certificado que está sendo criado. O retorno do comando acima lhe será perguntado algumas informações provenientes de quem está criando o certificado. Preencha os campos cnforme o exemplo abaixo: <pre> Country Name (2 letter code) [AU]:BR State or Province Name (full name) [Some-State]:# Estado Locality Name (eg, city) []:# Cidade Organization Name (eg, company) [Internet Widgits Pty Ltd]:# O nome da sua empresa ou projeto. Organizational Unit Name (eg, section) []:# Setor da sua empresa ou projeto. Common Name (e.g. server FQDN or YOUR name) []: # Nome do seu site (seusite.com.br) Email Address []:# usuario@dominio.com.br </pre> O comando acima cria a chave '''/etc/ssl/private/apache-selfsigned.key''' e o certificado '''/etc/ssl/certs/apache-selfsigned.crt'''. Esses dois arquivos serão inseridos nas configurações do apache em '''/etc/apache2/sites-available/seusite.com.br.conf'''. Você pode coferí-los listando a pasta. ls -lha /etc/ssl/certs/ Ou dando um cat neles. cat /etc/ssl/certs/apache-selfsigned.crt cat /etc/ssl/private/apache-selfsigned.key Para configurar a chave e o certificado, edite o arquivo '''.conf''' correto. vim /etc/apache2/sites-available/seusite.com.br.conf A configuração deve ser similar a essa: <pre> <VirtualHost *:443> ServerAdmin $USERinfo@gmail.com ServerName seusite.com.br DocumentRoot /var/www/seusite.com.br/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on # Aqui você insere o caminho absoluto do certificado. SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt # Aqui você insere a chave. SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key <FilesMatch "\.(?:cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> </VirtualHost> </pre> Reinicie o sistema reboot == Restrição por senha == Atualizar sudo apt update Instalaçao do resurso do apache. sudo apt install apache2-utils -y Criando o usuário e a senha de acesso ao diretório. sudo htpasswd -c /etc/apache2/.htpasswd usuario Para visualizar o arquivo: cat /etc/apache2/.htpasswd Abra o arquivo de Host Virtual do site: sudo vim /etc/apache2/sites-enabled/dominio.com.br.conf Nele, insira as seguintes instruções: <pre> <Directory "/var/www/html"> AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/apache2/.htpasswd Require valid-user </Directory> </pre> O arquivo deverá ficar semelhante a esse: <pre> <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory "/var/www/html"> AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/apache2/.htpasswd Require valid-user </Directory> </VirtualHost> </pre> Para garantir que as configurações estão corretas: sudo apache2ctl configtest Deverá retornar algumas informações, mas a mais importante é <code>Syntax OK</code>. Agora reinicie o apache sudo systemctl restart apache2 sudo systemctl status apache2 Agora, crie o arquivo <code>.htaccess</code> no diretorio que será restrito. sudo vim /var/www/html/pasta_restrita Insira estas instruções no arquivo: <pre> AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/apache2/.htpasswd Require valid-user </pre> Reinicie novamente o apache sudo systemctl restart apache2 sudo systemctl status apache2 == Fonte == https://www.digitalocean.com/community/tutorials/how-to-set-up-password-authentication-with-apache-on-ubuntu-18-04-pt
Resumo da edição:
Por favor, note que todas as suas contribuições em RJGS Wiki são consideradas como lançadas nos termos da licença Creative Commons Zero (Domínio público) (veja
RJGS Wiki:Direitos de autor
para detalhes). Se não deseja que o seu texto seja inexoravelmente editado e redistribuído de tal forma, não o envie.
Você está, ao mesmo tempo, garantindo-nos que isto é algo escrito por você mesmo ou algo copiado de uma fonte de textos em domínio público ou similarmente de teor livre.
NÃO ENVIE TRABALHO PROTEGIDO POR DIREITOS AUTORAIS SEM A DEVIDA PERMISSÃO!
Cancelar
Ajuda de edição
(abre numa nova janela)
Menu de navegação
Ferramentas pessoais
Não autenticado(a)
Discussão
Contribuições
Crie uma conta
Entrar
Espaços nominais
Página
Discussão
português do Brasil
Visualizações
Ler
Editar
Editar código-fonte
Ver histórico
Mais
Pesquisa
Navegação
Página principal
Mudanças recentes
Página aleatória
Ajuda do MediaWiki
Ferramentas
Páginas afluentes
Mudanças relacionadas
Páginas especiais
Informações da página