Distribuição utilizada: Debian 12 Bookworm / Instalação via WSL2 (windows)

Para iniciar a instalação, acesse o bash e vire root com o comando su – , e antes de mais nada tenha seu repositório atualizado.

# su -
# apt update
# apt upgrade

Instalação do Apache2


# apt install apache2 apache2-utils -y

Após a instação, habilitamos o mod_rewrite do Apache que é muito utilizado. Este é um módulo que utiliza um mecanismo baseado em regras de reescrita, e o mod_headers que fornece diretivas para controlar e modificar os cabeçalhos de solicitação e resposta HTTP. Comando para habilitá-lo:

# a2enmod rewrite ; a2enmod headers

A página que acessamos ao abrir o localhost de nosso servidor no navegador fica no diretório /var/www/html e é configurado no arquivo default do apache, que se localiza em /etc/apache2/sites-enabled/000-default.conf, e para que o mod_rewrite e headers funcionem corretamente será necessário adicionar alguma linhas. Edite o arquivo conforme exemplo abaixo:

# vim /etc/apache2/sites-enabled/000-default.conf

Logo abaixo de “DocumentRoot /var/www/html” adicione o seguinte trecho de código:

	Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
 
	<Directory /var/www/html/>
    		Options FollowSymLinks
    		AllowOverride All
	</Directory>

Nota: O HTTP Strict Transport Security ou HSTS (RFC 6797) é um novo padrão de segurança SSL aprovado recentemente pelo IETF. Ele traz diversas melhorias para o SSL como forçar a utilização do HTTPS impedindo que sites sejam acessados usando o protocolo HTTP ou que partes do código de um site que está usando HTTPS seja executado em servidores usando o HTTP entre outras.

Por segurança remova a assinatura do apache e reinicie o apache2 para que as alterações tenham efeito.

# sed -i 's/ServerTokens OS/ServerTokens Prod/' /etc/apache2/conf-available/security.conf
# sed -i 's/ServerSignature On/ServerSignature Off/' /etc/apache2/conf-available/security.conf
# /etc/init.d/apache2 restart

Instalação do PHP 8.2

Para instalação do PHP é interessante incluir algumas extensões que são as mais utilizadas, mas isso fica em aberto dependendo da preferência de cada instalaçãoe pode-se optar em não as instalar. As únicas necessárias necessárias são libapache2-mod-php php php-mysql php-cli.

# apt install libapache2-mod-php php php-mysql php-cli php-pear php-gmp php-gd php-bcmath php-mbstring php-curl php-xml php-zip -y

É necessário reiniciar o apache para que o php tenha efeito.

# /etc/init.d/apache2 restart

Consultado a versão do PHP instalado:

# php --version
Versão do PHP instalado na máquina

Pode-se criar um arquivo php com a função phpinfo() para mostrar todas as informações do PHP que acabou de ser instalado:

# echo '<?php phpinfo(); ?>' > /var/www/html/phpinfo.php
Página em http://localhost/phpinfo.php com as informações do PHP instalado na máquina

Instalação do MariaDB + phpMyAdmin

# apt install mariadb-server mariadb-client phpmyadmin

Por padrão o pacote MaraiDB no Debian usa unix_socket para autenticar o login do usuário, o que basicamente significa que você pode usar o nome de usuário e a senha do sistema operacional para efetuar login no console do MariaDB. Assim, você pode logar diretamente sem fornecer a senha root do MariaDB. Após a instalação, definiremos uma senha, não o faremos agora para evitar um erro ao instalar o phpMyAdmin.

Siga os passos abaixo:

Selecione Apache2
Responda Sim
Informe a senha para o banco de dados do phpmyadmin
Repita a senha

Para acessar o phpMyAdmin digite no browser http://localhost/phpmyadmin

phpMyAdmin rodanado na máquina solicitando usuário e senha

Definindo senha para o root do mariaDB

Para aumentar a seguraça vamos definir uma senha para o usuário root do MariaDB, não esqueça de alterar SENHA_AQUI pela senha de sua preferência.

# mariadb -u root

Execute uma linha por vez:

USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'SENHA_AQUI';
FLUSH PRIVILEGES;
EXIT;

E é isso. Espero que tenhma gostado deste tutorial.


Emilio Mario Wieczorek

I talk about everything, I discuss everything, but I only support 🇧🇼Grêmio. 💻IT Manager, 🎮Gamer and 👽Jedi (or Sith, depending on the day).

0 comentário

Deixe um comentário

Avatar placeholder

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *