quinta-feira, 18 de setembro de 2025
Script para instalar PHPiPAM no UBUNTU server 24.04
###INICIO###########################################################
#!/bin/bash
# =================================================================
# Script para Instalação do phpIPAM no Ubuntu Server com PHP 8.3
#
# PHP 8.3 é uma versão moderna, segura e estável, ideal para
# esta aplicação.
#
#
# Data: 10/09/2025
# =================================================================
# --- Configurações de Variáveis (ALTERE A SENHA DO BANCO DE DADOS!) ---
DB_NAME="phpipam"
DB_USER="phpipam_user"
# POR FAVOR, GERE UMA SENHA FORTE E SEGURA PARA O BANCO DE DADOS.
DB_PASS="DIGITE UMA SENHA SEGURA"
# --- Verificação de Segurança ---
if [ "$DB_PASS" == "sua_senha_super_segura_aqui" ]; then
echo "################################################################"
echo "### ATENÇÃO: Por favor, edite o script e altere a variável ###"
echo "### DB_PASS para uma senha segura antes de continuar. ###"
echo "################################################################"
exit 1
fi
if [ "$(id -u)" != "0" ]; then
echo "Este script precisa ser executado como root ou com sudo." 1>&2
exit 1
fi
echo ">>> Inciando a instalação do phpIPAM com PHP 8.3..."
# --- PASSO 1: ATUALIZAÇÃO DO SISTEMA ---
echo ">>> (1/8) Atualizando os pacotes do sistema..."
apt-get update
apt-get upgrade -y
echo ">>> Atualização do sistema concluída."
# --- PASSO 2: INSTALAR SERVIDOR WEB, BANCO DE DADOS E GIT ---
echo ">>> (2/8) Instalando Apache2, MariaDB e outras dependências..."
apt-get install -y apache2 mariadb-server git wget unzip
echo ">>> Servidores web e de banco de dados instalados."
# --- PASSO 3: INSTALAR PHP 8.3 E EXTENSÕES NECESSÁRIAS ---
echo ">>> (3/8) Adicionando o PPA do PHP e instalando o PHP 8.3..."
# Adiciona o PPA de Ondřej Surý para versões mais recentes do PHP
add-apt-repository ppa:ondrej/php -y
apt-get update
# Instala o PHP 8.3 e todas as extensões que o phpIPAM requer
apt-get install -y \
php8.3 \
libapache2-mod-php8.3 \
php8.3-cli \
php8.3-common \
php8.3-mysql \
php8.3-gd \
php8.3-xml \
php8.3-mbstring \
php8.3-curl \
php8.3-gmp \
php8.3-ldap \
php8.3-zip
echo ">>> PHP 8.3 e extensões instalados com sucesso."
apt install php-pear
# --- PASSO 4: CONFIGURAR O BANCO DE DADOS MARIADB ---
echo ">>> (4/8) Configurando o banco de dados MariaDB..."
mysql -e "CREATE DATABASE $DB_NAME CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
mysql -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
mysql -e "GRANT ALL PRIVILEGES ON $DB_NAME.* TO '$DB_USER'@'localhost';"
mysql -e "FLUSH PRIVILEGES;"
echo ">>> Banco de dados '$DB_NAME' e usuário '$DB_USER' criados."
# --- PASSO 5: BAIXAR E CONFIGURAR O PHPIPAM ---
echo ">>> (5/8) Baixando a versão mais recente do phpIPAM..."
# Clona a versão mais recente do phpIPAM do repositório oficial
git clone https://github.com/phpipam/phpipam.git /var/www/html/phpipam
cd /var/www/html/phpipam
# Opcional: Para usar uma versão estável específica em vez da de desenvolvimento,
# descomente e ajuste a linha abaixo para a tag da última versão.
# git checkout 1.6 # ou a versão estável mais recente
# Copia e configura o arquivo de configuração
cp config.dist.php config.php
echo ">>> (6/8) Editando o arquivo de configuração do phpIPAM..."
# Usa o `sed` para substituir automaticamente os detalhes do banco de dados no arquivo de configuração
sed -i "s/\$db\['user'\] = 'phpipam';/\$db\['user'\] = '$DB_USER';/g" /var/www/html/phpipam/config.php
sed -i "s/\$db\['pass'\] = 'phpipamadmin';/\$db\['pass'\] = '$DB_PASS';/g" /var/www/html/phpipam/config.php
sed -i "s/\$db\['name'\] = 'phpipam';/\$db\['name'\] = '$DB_NAME';/g" /var/www/html/phpipam/config.php
echo ">>> Configuração do phpIPAM concluída."
# --- PASSO 6: CONFIGURAR O APACHE ---
echo ">>> (7/8) Configurando o VirtualHost do Apache..."
# Cria um arquivo de configuração para o site do phpipam
cat <<EOF > /etc/apache2/sites-available/phpipam.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/phpipam/
<Directory /var/www/html/phpipam/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog \${APACHE_LOG_DIR}/phpipam_error.log
CustomLog \${APACHE_LOG_DIR}/phpipam_access.log combined
</VirtualHost>
EOF
# Habilita o novo site, o módulo rewrite e reinicia o Apache
a2ensite phpipam.conf
a2dissite 000-default.conf
a2enmod rewrite
systemctl restart apache2
echo ">>> Apache configurado e reiniciado."
# --- PASSO 7: DEFINIR PERMISSÕES ---
echo ">>> (8/8) Ajustando as permissões do diretório..."
chown -R www-data:www-data /var/www/html/phpipam/
chmod -R 755 /var/www/html/phpipam/
echo ">>> Permissões ajustadas."
# --- FINALIZAÇÃO ---
IP_ADDR=$(hostname -I | awk '{print $1}')
echo "================================================================"
echo " Instalação do phpIPAM concluída com sucesso! "
echo "================================================================"
echo ""
echo "Acesse o instalador web para finalizar a configuração:"
echo " http://$IP_ADDR/"
echo ""
echo "Suas credenciais do banco de dados (guarde em local seguro):"
echo " - Usuário: $DB_USER"
echo " - Senha: $DB_PASS"
echo " - Banco: $DB_NAME"
echo ""
echo "Após a instalação web, o login padrão é:"
echo " - Usuário: Admin"
echo " - Senha: ipamadmin"
echo "==> LEMBRE-SE DE ALTERAR A SENHA DO ADMIN IMEDIATAMENTE! <=="
echo "================================================================"
###FIM###########################################################
Como Usar o Script
Conecte-se ao seu Servidor Ubuntu: Use SSH para acessar seu servidor.
Salve o Script: Crie o arquivo
install_phpipam.sh
usando um editor de texto comonano
:Bashnano install_phpipam.sh
Cole todo o código acima no editor.
ALTERE A SENHA: Dentro do editor
nano
, encontre a linhaDB_PASS="sua_senha_super_segura_aqui"
e substitua"sua_senha_super_segura_aqui"
por uma senha forte e única. Salve e saia do editor (Ctrl+X, depois Y, e Enter).Torne o Script Executável: Dê permissão de execução ao arquivo:
Bashchmod +x install_phpipam.sh
Execute o Script: Execute o script com
sudo
. Ele fará todo o trabalho pesado para você.Bashsudo ./install_phpipam.sh
Pós-Instalação: Configuração Web
Após o script terminar, ele exibirá o endereço IP do seu servidor.
Abra seu navegador e acesse
http://<seu-endereco-ip>
.Você verá a tela de instalação web do phpIPAM. Selecione "New phpipam installation".
Na próxima tela, escolha "Automatic database installation". O script já criou e configurou o banco de dados, então o phpIPAM irá apenas criar as tabelas necessárias.
Defina a senha do administrador do phpIPAM quando solicitado.
Siga as instruções na tela até a conclusão.
Faça login com o usuário
Admin
e a senha que você acabou de definir (ou a senha padrãoipamadmin
se não for solicitado alterar durante a instalação).Importante: Se você usou a senha padrão, altere-a imediatamente em "Administration" > "Users".