一键安装脚本Phpipam.md 3.9 KB


title: 一键安装脚本Phpipam date: 2024-12-02T14:10:31+08:00

lastmod: 2024-12-02T14:10:49+08:00

一键安装脚本Phpipam

install_phpipam.sh 优化版

#!/bin/bash

# 设置常量
DB_NAME="phpipam"
DB_USER="phpipamuser"
DB_PASSWORD="phpipam_password"
PHPIPAM_DIR="/var/www/phpipam"
DOMAIN="your-domain-or-ip"  # 请替换为你的域名或IP地址

# 更新系统
echo "更新系统..."
sudo dnf update -y

# 安装必要的软件包
echo "安装必要的软件包..."
sudo dnf install -y epel-release
sudo dnf install -y nginx php-fpm php-mysqlnd php-cli git mariadb-server

# 启动并启用服务
echo "启动并启用服务..."
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start mariadb
sudo systemctl enable mariadb

# 配置MariaDB数据库
echo "配置MariaDB数据库..."
mysql -u root <<EOF
CREATE DATABASE ${DB_NAME};
CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASSWORD}';
GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';
FLUSH PRIVILEGES;
EXIT;
EOF

# 克隆PHPIPAM源码
echo "克隆PHPIPAM源码..."
cd /var/www/
sudo git clone https://github.com/phpipam/phpipam.git
sudo chown -R nginx:nginx phpipam
sudo chmod -R 755 phpipam

# 配置PHP-FPM
echo "配置PHP-FPM..."
sudo sed -i 's/user = apache/user = nginx/' /etc/php-fpm.d/www.conf
sudo sed -i 's/group = apache/group = nginx/' /etc/php-fpm.d/www.conf
sudo sed -i 's|listen = 127.0.0.1:9000|listen = /var/run/php-fpm/php-fpm.sock|' /etc/php-fpm.d/www.conf

# 启动PHP-FPM服务
echo "启动PHP-FPM服务..."
sudo systemctl start php-fpm
sudo systemctl enable php-fpm

# 配置Nginx
echo "配置Nginx..."
cat <<EOF | sudo tee /etc/nginx/conf.d/phpipam.conf > /dev/null
server {
    listen 80;
    server_name ${DOMAIN};

    root ${PHPIPAM_DIR};
    index index.php index.html index.htm;

    location / {
        try_files \$uri \$uri/ =404;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
    }

    location ~ /\.ht {
        deny all;
    }
}
EOF

# 重启Nginx服务
echo "重启Nginx服务..."
sudo systemctl restart nginx

# 设置PHPIPAM配置
echo "配置PHPIPAM数据库连接..."
cat <<EOF | sudo tee ${PHPIPAM_DIR}/config.php > /dev/null
<?php
    // Database configuration
    \$db['host'] = 'localhost';
    \$db['user'] = '${DB_USER}';
    \$db['pass'] = '${DB_PASSWORD}';
    \$db['name'] = '${DB_NAME}';
    \$db['port'] = 3306;
    \$db['type'] = 'mysqli';
    \$db['socket'] = '';
    // Other configurations
    \$enable_phpipam_dhcp = false;
    \$enable_phpipam_radius = false;
?>
EOF

# 完成安装提示
echo "PHPIPAM安装完成!访问 http://${DOMAIN} 即可进行Web界面配置!"

脚本执行步骤:

  1. 创建安装脚本文件: 将上面的脚本内容复制到一个新的 .sh​ 文件中,例如 install_phpipam.sh

    nano install_phpipam.sh
    

然后粘贴脚本内容并保存。

  1. 赋予脚本执行权限

    chmod +x install_phpipam.sh
    
  2. 执行脚本

    ./install_phpipam.sh
    

重要事项:

  1. DOMAIN设置

    • DOMAIN​ 变量替换为你的域名或 IP 地址,如 example.com​ 或 192.168.1.100。这将配置 Nginx 使其在访问时指向 PHPIPAM。
  2. 数据库密码

    • 数据库密码已在脚本中设置为 phpipam_password,你可以根据需要修改。此密码会自动应用于数据库创建及配置文件。
  3. 访问 Web 配置

    • 脚本运行完毕后,你只需要通过浏览器访问 http://your-domain-or-ip,即可自动进入 PHPIPAM 安装界面,填写一些基础信息完成安装。

总结:

  这个脚本是完全自动化的,执行后会创建数据库、配置 Nginx 和 PHP-FPM,确保你可以直接访问 Web 界面。