Blog voltado para Tecnologia.

Paginas

19/03/2024

INSTALACAO ORACLE MYSQL NO ORACLE LINUX, ALMALINUX, ROCKY LINUX ou RHEL 9.x


#-------------------------------------------------------------------------------------------------------------------------------#
 DOWLOAD DA  ISO (INSTALACAO EM MINIMAL INSTALL):                                            
#--------------------------------------------------------------------------------------------------------------------------------#

   
#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO REPOSITORIO
#--------------------------------------------------------------------------------------------------------------------------------#

dnf -y install epel-release
dnf install -y dnf-utils yum-utils nano telnet traceroute net-tools unzip bzip2 tar wget dnf-plugins-core
dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
dnf -y install https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm
dnf install 'dnf-command(config-manager)'
dnf -y update --refresh
reboot

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - SISTEMA
#--------------------------------------------------------------------------------------------------------------------------------#

rm -f /etc/localtime
ln -s /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
date

#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO PACOTES
#--------------------------------------------------------------------------------------------------------------------------------#

dnf install --disablerepo=appstream mysql-community-server
mysql --version

#--------------------------------------------------------------------------------------------------------------------------------#
  HABILITANDO INICIO DO SERVIÇO NO BOOT
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl enable --now mysqld
systemctl status mysqld

#--------------------------------------------------------------------------------------------------------------------------------#
  ATIVANDO E LIBERANDO A PORTA 3306/TCP NO FIREWALL
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl start firewalld
systemctl enable firewalld
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload

#--------------------------------------------------------------------------------------------------------------------------------#
  CONFIGURANDO O MYSQL
#--------------------------------------------------------------------------------------------------------------------------------#

mysql_secure_installation

#Se você instalou a versão MySQL 8.0 Community e encontrou um erro em relação à senha temporária.

Error: Access denied for user 'root'@'localhost' (using password: NO)

#Conforme mostrado acima, se você encontrar um cenário em que a senha raiz do MySQL já foi definida, 

#você pode usar o seguinte comando para gerar uma senha temporária e fazer login no script MySQL Security. 

#Durante esse processo, você pode definir uma nova senha segura para a instalação do MySQL.

grep 'temporary password' /var/log/mysqld.log

#Saída de exemplo com a nova senha gerada: 

2023-08-01T010:31:57.813212Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Fg042yVsqg)e

#Ao fazer login no script MySQL Security com sua senha temporária, você será solicitado a alterá-la. 

#Esta senha deve ser temporária e deve ser atualizada para uma senha segura o mais rápido possível.

#Ao digitar sua senha, você será questionado sobre o COMPONENTE VALIDAR SENHA. Este componente envolve a configuração de verificações 

#de complexidade de senha para garantir a segurança de sua instalação do MySQL. As configurações padrão geralmente são suficientes, 

#mas você pode ajustá-las para atender aos seus requisitos de segurança específicos.

#Um esboço das configurações que você precisa considerar.

#Defina uma senha para contas root.

#Defina uma senha para todas as contas.

#Remova as contas raiz que são acessíveis de fora do localhost.

#Remova contas de usuários anônimos.

#Remova o banco de dados de teste que é acessível por padrão para usuários anônimos.

#Exemplo de configurações recomendadas: 

Securing the MySQL server deployment.

Enter password for user root: 

The existing password for the user account root has expired. Please set a new password.

New password: <---- SET NEW PASSWORD

Re-enter new password: <---- RE-ENTER NEW PASSWORD

Re-enter new password: 

The 'validate_password' component is installed on the server.

The subsequent steps will run with the existing configuration

of the component.

Using existing password for root.

Estimated strength of the password: 100 

Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY (SKIP IF YOU ALREADY JUST SET)

New password: 

Re-enter new password: 

Estimated strength of the password: 100 

Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

By default, a MySQL installation has an anonymous user,

allowing anyone to log into MySQL without having to have

a user account created for them. This is intended only for

testing, and to make the installation go a bit smoother.

You should remove them before moving into a production

environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

Success.

Normally, root should only be allowed to connect from

'localhost'. This ensures that someone cannot guess at

the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

Success.

By default, MySQL comes with a database named 'test' that

anyone can access. This is also intended only for testing,

and should be removed before moving into a production

environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

 - Dropping test database...

Success.

 - Removing privileges on test database...

Success.

Reloading the privilege tables will ensure that all changes

made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

Success.

All done!

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - MYSQL
#--------------------------------------------------------------------------------------------------------------------------------#

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -p -u root mysql

systemctl restart mysqld

mysql -uroot -p

SET @@global.time_zone = '+3:00';

SELECT NOW();

SET time_zone='America/Sao_Paulo';

SELECT @@time_zone;

FLUSH PRIVILEGES;

exit

#--------------------------------------------------------------------------------------------------------------------------------#
  REINICIE O SERVIDOR NO FINAL DE TUDO
#--------------------------------------------------------------------------------------------------------------------------------#

reboot

#--------------------------------------------------------------------------------------------------------------------------------#

INSTALACAO GLPI 10 COM MYSQL NO ORACLE LINUX, ALMALINUX, ROCKY LINUX ou RHEL 9.x


#-------------------------------------------------------------------------------------------------------------------------------#
 DOWLOAD DA  ISO (INSTALACAO EM MINIMAL INSTALL):                                            
#--------------------------------------------------------------------------------------------------------------------------------#



   
#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO REPOSITORIO
#--------------------------------------------------------------------------------------------------------------------------------#

dnf -y install epel-release 
dnf install -y dnf-utils yum-utils nano telnet traceroute net-tools unzip bzip2 tar wget curl dnf-plugins-core
dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
dnf -y install https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm
dnf install 'dnf-command(config-manager)'
dnf -y update --refresh
reboot

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - SISTEMA
#--------------------------------------------------------------------------------------------------------------------------------#

rm -f /etc/localtime
ln -s /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
date

#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO PACOTES
#--------------------------------------------------------------------------------------------------------------------------------#

dnf -y module install php:remi-8.1
dnf -y install yum-plugin-copr dnf -y copr enable ligenix/enterprise-glpi10
dnf -y install glpi
dnf -y install httpd
dnf -y install php-pecl-apcu php-soap php-xmlrpc php-pecl-zendopcache php-snmp php-opcache
dnf -y install php-sodium php-pear*
dnf -y install certbot python3-certbot-apache

#--------------------------------------------------------------------------------------------------------------------------------#
  HABILITANDO INICIO DO SERVIÇO NO BOOT
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl enable --now httpd
systemctl enable --now firewalld

#--------------------------------------------------------------------------------------------------------------------------------#
  ATIVANDO E LIBERANDO A PORTA 80-443/TCP NO FIREWALL
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl start firewalld
systemctl enable firewalld
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
systemctl restart firewalld

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - PHP
#--------------------------------------------------------------------------------------------------------------------------------#

sed -i 924i'date.timezone = America/Sao_Paulo' /etc/php.ini

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO PHP.INI E GLPI.CONF
#--------------------------------------------------------------------------------------------------------------------------------#

sed -i '846s/^/#/' /etc/php.ini
sed -i 847i'upload_max_filesize = 25M' /etc/php.ini
sed -i '28s/^/#/' /etc/httpd/conf.d/glpi.conf
sed -i '34s/^/#/' /etc/httpd/conf.d/glpi.conf

#--------------------------------------------------------------------------------------------------------------------------------#
  APLICANDO PERMISSÕES
#--------------------------------------------------------------------------------------------------------------------------------#

chown -Rf apache:apache /usr/share/glpi
chown -Rf apache:apache /etc/glpi
chown -Rf apache:apache /var/log/glpi
chown -Rf apache:apache /var/lib/glpi/files

#--------------------------------------------------------------------------------------------------------------------------------#
  CONFIGURANDO SELINUX
#--------------------------------------------------------------------------------------------------------------------------------#

setsebool -P httpd_can_sendmail 1
setsebool -P httpd_can_network_connect 1
setsebool -P httpd_can_network_connect_db 1
setsebool -P httpd_mod_auth_ntlm_winbind  1
setsebool -P allow_httpd_mod_auth_ntlm_winbind 1
setenforce 0 

#--------------------------------------------------------------------------------------------------------------------------------#
  REINICIANDO APACHE E PHP
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl restart httpd
systemctl restart php-fpm

#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALE O ORACLE MYSQL
#--------------------------------------------------------------------------------------------------------------------------------#

#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO PACOTES
#--------------------------------------------------------------------------------------------------------------------------------#

dnf install --disablerepo=appstream mysql-community-server

mysql --version

#--------------------------------------------------------------------------------------------------------------------------------#
  HABILITANDO INICIO DO SERVIÇO NO BOOT
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl enable --now mysqld

systemctl status mysqld

#--------------------------------------------------------------------------------------------------------------------------------#
   ATIVANDO E LIBERANDO A PORTA 3306/TCP NO FIREWALL
#--------------------------------------------------------------------------------------------------------------------------------#

firewall-cmd --permanent --add-port=3306/tcp

firewall-cmd --reload

#--------------------------------------------------------------------------------------------------------------------------------#
  CONFIGURANDO O MYSQL
#--------------------------------------------------------------------------------------------------------------------------------#

mysql_secure_installation

#Se você instalou a versão MySQL 8.0 Community e encontrou um erro em relação à senha temporária.

Error: Access denied for user 'root'@'localhost' (using password: NO)

#Conforme mostrado acima, se você encontrar um cenário em que a senha raiz do MySQL já foi definida, 

#você pode usar o seguinte comando para gerar uma senha temporária e fazer login no script MySQL Security. 

#Durante esse processo, você pode definir uma nova senha segura para a instalação do MySQL.

grep 'temporary password' /var/log/mysqld.log

#Saída de exemplo com a nova senha gerada: 

2023-08-01T010:31:57.813212Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Fg042yVsqg)e

#Ao fazer login no script MySQL Security com sua senha temporária, você será solicitado a alterá-la. 

#Esta senha deve ser temporária e deve ser atualizada para uma senha segura o mais rápido possível.

#Ao digitar sua senha, você será questionado sobre o COMPONENTE VALIDAR SENHA. Este componente envolve a configuração de verificações 

#de complexidade de senha para garantir a segurança de sua instalação do MySQL. As configurações padrão geralmente são suficientes, 

#mas você pode ajustá-las para atender aos seus requisitos de segurança específicos.

#Um esboço das configurações que você precisa considerar.

#Defina uma senha para contas root.

#Defina uma senha para todas as contas.

#Remova as contas raiz que são acessíveis de fora do localhost.

#Remova contas de usuários anônimos.

#Remova o banco de dados de teste que é acessível por padrão para usuários anônimos.

#Exemplo de configurações recomendadas: 

Securing the MySQL server deployment.

Enter password for user root: 

The existing password for the user account root has expired. Please set a new password.

New password: <---- SET NEW PASSWORD

Re-enter new password: <---- RE-ENTER NEW PASSWORD

Re-enter new password: 

The 'validate_password' component is installed on the server.

The subsequent steps will run with the existing configuration

of the component.

Using existing password for root.

Estimated strength of the password: 100 

Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY (SKIP IF YOU ALREADY JUST SET)

New password: 

Re-enter new password: 

Estimated strength of the password: 100 

Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

By default, a MySQL installation has an anonymous user,

allowing anyone to log into MySQL without having to have

a user account created for them. This is intended only for

testing, and to make the installation go a bit smoother.

You should remove them before moving into a production

environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

Success.

Normally, root should only be allowed to connect from

'localhost'. This ensures that someone cannot guess at

the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

Success.

By default, MySQL comes with a database named 'test' that

anyone can access. This is also intended only for testing,

and should be removed before moving into a production

environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

 - Dropping test database...

Success.

 - Removing privileges on test database...

Success.

Reloading the privilege tables will ensure that all changes

made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y <---- Type Y then press the ENTER KEY.

Success.

All done!

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - MYSQL
#--------------------------------------------------------------------------------------------------------------------------------#

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -p -u root mysql

systemctl restart mysqld

mysql -uroot -p

SET @@global.time_zone = '+3:00';

SELECT NOW();

SET time_zone='America/Sao_Paulo';

SELECT @@time_zone;

FLUSH PRIVILEGES;

exit

#--------------------------------------------------------------------------------------------------------------------------------#
  ACESSE O GLPI PELO NAVEGADOR E CONCLUA A INSTALACAO
#--------------------------------------------------------------------------------------------------------------------------------#

#--------------------------------------------------------------------------------------------------------------------------------#
  RODE O COMANDO ABAIXO APOS CONCLUIR A INSTALAÇÃO PELO NAVEGADOR
#--------------------------------------------------------------------------------------------------------------------------------#

mv /usr/share/glpi/install/ /usr/share/glpi/install_old

#--------------------------------------------------------------------------------------------------------------------------------#
  DESCOMENTE A LINHA 28 E 34 DO ARQUIVO /etc/httpd/conf.d/glpi.conf 
  E REINICIE O HTTPD
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl restart httpd
systemctl restart httpd

#--------------------------------------------------------------------------------------------------------------------------------#
  ALTERE A SENHA E NOME DO USUÁRIO "glpi" E REMOVA OS USUARIOS ABAIXO
#--------------------------------------------------------------------------------------------------------------------------------#

normal
post-only
tech

#--------------------------------------------------------------------------------------------------------------------------------#
  REINICIE O SERVIDOR NO FINAL DE TUDO
#--------------------------------------------------------------------------------------------------------------------------------#

reboot

#--------------------------------------------------------------------------------------------------------------------------------#

INSTALAÇÃO GLPI 10 NO ORACLE LINUX, ALMALINUX, ROCKY LINUX ou RHEL 9.x


#-------------------------------------------------------------------------------------------------------------------------------#
 DOWLOAD DA  ISO (INSTALACAO EM MINIMAL INSTALL):                                            
#--------------------------------------------------------------------------------------------------------------------------------#

   
#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO REPOSITORIO
#--------------------------------------------------------------------------------------------------------------------------------#

dnf -y install epel-release 
dnf install -y dnf-utils yum-utils nano telnet traceroute net-tools unzip bzip2 tar wget curl dnf-plugins-core
dnf -y install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
dnf install 'dnf-command(config-manager)'
dnf -y update --refresh
reboot

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - SISTEMA
#--------------------------------------------------------------------------------------------------------------------------------#

rm -f /etc/localtime
ln -s /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
date

#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALANDO PACOTES
#--------------------------------------------------------------------------------------------------------------------------------#

dnf -y module install php:remi-8.1
dnf -y install yum-plugin-copr dnf -y copr enable ligenix/enterprise-glpi10
dnf -y install glpi
dnf -y install httpd
dnf -y install php-pecl-apcu php-soap php-xmlrpc php-pecl-zendopcache php-snmp php-opcache
dnf -y install php-sodium php-pear*
dnf -y install certbot python3-certbot-apache

#--------------------------------------------------------------------------------------------------------------------------------#
  HABILITANDO INICIO DO SERVIÇO NO BOOT
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl enable --now httpd
systemctl enable --now firewalld

#--------------------------------------------------------------------------------------------------------------------------------#
  ATIVANDO E LIBERANDO A PORTA 80-443/TCP NO FIREWALL
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl start firewalld
systemctl enable firewalld
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
systemctl restart firewalld

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO O TIMEZONE - PHP
#--------------------------------------------------------------------------------------------------------------------------------#

sed -i 924i'date.timezone = America/Sao_Paulo' /etc/php.ini

#--------------------------------------------------------------------------------------------------------------------------------#
  AJUSTANDO PHP.INI E GLPI.CONF
#--------------------------------------------------------------------------------------------------------------------------------#

sed -i '846s/^/#/' /etc/php.ini
sed -i 847i'upload_max_filesize = 25M' /etc/php.ini
sed -i '28s/^/#/' /etc/httpd/conf.d/glpi.conf
sed -i '34s/^/#/' /etc/httpd/conf.d/glpi.conf

#--------------------------------------------------------------------------------------------------------------------------------#
  APLICANDO PERMISSÕES
#--------------------------------------------------------------------------------------------------------------------------------#

chown -Rf apache:apache /usr/share/glpi
chown -Rf apache:apache /etc/glpi
chown -Rf apache:apache /var/log/glpi
chown -Rf apache:apache /var/lib/glpi/files

#--------------------------------------------------------------------------------------------------------------------------------#
  CONFIGURANDO SELINUX
#--------------------------------------------------------------------------------------------------------------------------------#

setsebool -P httpd_can_sendmail 1
setsebool -P httpd_can_network_connect 1
setsebool -P httpd_can_network_connect_db 1
setsebool -P httpd_mod_auth_ntlm_winbind  1
setsebool -P allow_httpd_mod_auth_ntlm_winbind 1
setenforce 0 

#--------------------------------------------------------------------------------------------------------------------------------#
  REINICIANDO APACHE E PHP
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl restart httpd
systemctl restart php-fpm

#--------------------------------------------------------------------------------------------------------------------------------#
  INSTALE O SGDB DE SUA PREFERÊNCIA
#--------------------------------------------------------------------------------------------------------------------------------#

#--------------------------------------------------------------------------------------------------------------------------------#
  ACESSE O GLPI PELO NAVEGADOR E CONCLUA A INSTALACAO
#--------------------------------------------------------------------------------------------------------------------------------#

#--------------------------------------------------------------------------------------------------------------------------------#
  RODE O COMANDO ABAIXO APOS CONCLUIR A INSTALAÇÃO PELO NAVEGADOR
#--------------------------------------------------------------------------------------------------------------------------------#

mv /usr/share/glpi/install/ /usr/share/glpi/install_old

#--------------------------------------------------------------------------------------------------------------------------------#
  DESCOMENTE A LINHA 28 E 34 DO ARQUIVO /etc/httpd/conf.d/glpi.conf 
  E REINICIE O HTTPD
#--------------------------------------------------------------------------------------------------------------------------------#

systemctl restart httpd
systemctl restart httpd

#--------------------------------------------------------------------------------------------------------------------------------#
  ALTERE A SENHA E NOME DO USUÁRIO "glpi" E REMOVA OS USUARIOS ABAIXO
#--------------------------------------------------------------------------------------------------------------------------------#

normal
post-only
tech

#--------------------------------------------------------------------------------------------------------------------------------#
  REINICIE O SERVIDOR NO FINAL DE TUDO
#--------------------------------------------------------------------------------------------------------------------------------#

reboot

#--------------------------------------------------------------------------------------------------------------------------------#