Cenário:
VM com 512MB de RAM (Recomendável 1gb)
Disco VHDX 40gb
Processador i3 4-Core
1.) Faça a instalação do Debian 11 e escolha apenas a opção SSH para instalação:
3.) Você irar criar um arquivo install.sh para automatizar a instalação:
Comandos para criar o "INSTALL.SH":
nano install.sh
"COPIE E COLE O SCRIPT NO ARQUIVO INSTALL.SH"
4.) Execute o chmod para dar permissão e torná-lo executável:
chmod 755 install.sh
chmod +x install.sh
sh install.sh
Copie e cole o código abaixo para dentro do "install.sh":
## SCRIPT COMENTADO
## ATUALIZANDO O SISTEMA
apt update
## INSTALANDO DEPENDÊNCIAS
apt install ufw sudo wget apt-transport-https software-properties-common curl gnupg2 ca-certificates lsb-release -y
## INSTALANDO O NGINX
apt install nginx -y && systemctl start nginx && systemctl enable nginx
## HABILITANDO A PORTA 80 PARAO NGINX
sudo ufw allow 'Nginx HTTP'
## INSTALANDO O MARIADB-SERVER
apt install mariadb-server mariadb-client -y
## REINICIANDO O SERVIÇO DO MARIADB-SERVER
systemctl restart mariadb
## INSTALANDO O PHP
apt-get install php-fpm php-gd php php-cli php-json php-pdo php-zip php-mbstring php-curl php-xml php-pear php-bcmath php-mysqli -y
## HABILITANDO O PHP
systemctl enable php7.4-fpm.service
## ATIVANDO PHP
sudo systemctl is-active php7.4-fpm.service
## INICIANDO O PHP
sudo service php7.4-fpm start
## INSTALANDO O ADMINER PARA GERENCIAMENTO DO MYSQL MARIADB
## PARA ACESSAR http://IP/adminer.php
wget "http://www.adminer.org/latest.php" -O /var/www/html/adminer.php
wget "http://www.adminer.org/latest.php" -O /var/www/html/adminer.php
chown -R www-data:www-data /var/www/html/adminer.php
chmod 755 /var/www/html/adminer.php
chmod 755 /var/www/html/adminer.php
## ALTERANDO A CONFIGURAÇÃO PADRÃO DO NGINX PARA O PHP
mv /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bkp
cat << 'EOF' > /etc/nginx/sites-available/default
server {
listen 80;
listen [::]:80;
root /var/www/html;
index index.php index.html index.htm index.nginx-debian.html;
server_name _;
access_log /var/log/nginx/example_access.log;
error_log /var/log/nginx/example_error.log;
client_max_body_size 100M;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_pass 127.0.0.1:9000;
#try_files $uri =404;
include fastcgi_params;
#fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
EOF
## TESTANDO AS CONFIGURAÇÕES DO NGINX
sudo nginx -t
## ALTERANDO AS CONFIGURAÇÕES PADRÕES DO PHP
cp /etc/php/7.4/fpm/php.ini /etc/php/7.4/fpm/php.ini.bkp
sudo sed -i 's|;cgi.fix_pathinfo=1|cgi.fix_pathinfo=0|g' /etc/php/7.4/fpm/php.ini
sudo sed -i 's|default_socket_timeout = 60|default_socket_timeout = 600\npm.max_children = 20|g' /etc/php/7.4/fpm/php.ini
## ALTERANDO O ARQUIVO PADRÃO DO www.conf
mv /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/www.conf.bkp
cat << 'EOF' > /etc/php/7.4/fpm/pool.d/www.conf
;CHANGE FILES
;listen = /var/run/php5-fpm.sock para listen = 127.0.0.1:9000
;request_terminate_timeout = 60000
[www]
user = www-data
group = www-data
listen = 127.0.0.1:9000
listen.owner = www-data
listen.group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
request_terminate_timeout = 60000
EOF
## REINICIANDO OS SERVIÇOS NGINX, PHP E MARIDB-SERVER
sudo service php7.4-fpm restart
sudo service nginx restart
sudo service mariadb restart
## TESTANDO AS CONFIGURAÇÕES DO NGINX
sudo service nginx configtest
## ARQUIVO DE TESTE PHP | PHPINFO http://IP/phpinfo.php
cat << 'EOF' > /var/www/html/phpinfo.php
<?php phpinfo(); ?>
EOF
### SENHA ROOT MYSQL EM BRANCO, CADASTRANDO SENHA:
mysql -u root -e "FLUSH PRIVILEGES;"
mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'SENHA_MYSQL_ROOT';"
Nenhum comentário:
Postar um comentário