Apache

De RJGS Wiki
Revisão de 22h34min de 18 de agosto de 2024 por Rjgs (discussão | contribs)
Ir para navegação Ir para pesquisar

Apache Server

Instalar o apache

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

Permissões para o usuario.

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.

<VirtualHost *:80>

        ServerAdmin [email protected]
        
        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>

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

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:

<VirtualHost *:443>

        ServerAdmin [email protected]

        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>


Reinicie o sistema

reboot