本教程將向您展示如何在 Debian 11 上安裝 Box Billing。對於那些不知道的人,BoxBilling 是一個開源的自託管計費和客戶關係管理 (CRM) 系統。 BoxBilling 有助於自動化計費、收款、客戶管理和溝通。

本文假設您至少具有 Linux 的基本知識,知道如何使用 shell,最重要的是,將您的網站託管在您的 VPS 上。安裝非常簡單,假設您在 root 帳戶下運行。如果沒有,您需要添加一個’。sudo‘向命令獲取root權限。 這是在 Debian 11 (Bullseye) 上分階段安裝 BoxBilling 的方法。

先決條件

  • 運行以下操作系統之一的服務器:Debian 10 或 Debian 11。
  • 我們建議您使用新的操作系統安裝來防止潛在的問題。
  • SSH 訪問服務器(如果您使用的是桌面,則打開終端)。
  • 1 non-root sudo user或訪問 root user..建議充當 non-root sudo user但是,如果您在以 root 身份操作時不小心,可能會損壞您的系統。

在 Debian 11 Bullseye 上安裝 Box Billing

步驟1。在安裝軟件之前,運行以下命令以確保您的系統是最新的很重要。 apt 終端命令:

sudo apt update
sudo apt upgrade

步驟 2. 安裝 LEMP 堆棧。

需要 Debian 11 LEMP 服務器。 如果您沒有安裝 LAMP,請閱讀之前的教程在 Debian 11 上安裝 LEMP 服務器。

步驟 3. 在 Debian 11 上安裝 Box Billing。

默認情況下,BoxBilling 在基於 Debian 11 的存儲庫中不可用。因此,請從官方頁面下載 Box Billing 的最新穩定版本。

mkdir -p /var/www/boxbilling/
cd /var/www/boxbilling
wget https://github.com/boxbilling/boxbilling/releases/download/4.22.1.3/BoxBilling.zip
unzip Boxbilling.zip

然後創建一個新目錄。cache‘ 什麼時候’upload‘:

mkdir -p /var/www/boxbilling/bb-data/{cache,uploads}

您需要更改某些文件夾的權限。

sudo chown -R www-data:www-data /var/www/boxbilling
sudo chmod u+rw /var/www/boxbilling/bb-data/{cache,uploads}

步驟 4. 配置 MariaDB。

默認情況下,MariaDB 未增強。你可以使用它 mysql_secure_installation 劇本。請仔細閱讀以下每個步驟。這些步驟設置 root 密碼、刪除匿名用戶、禁止遠程 root 登錄、刪除測試數據庫並訪問安全的 MariaDB。

mysql_secure_installation

它的配置如下。

- Switch to unix_socket authentication [Y/n] Y
- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

接下來,您需要登錄 MariaDB 控制台並為 Box Billing 創建一個數據庫。運行以下命令。

mysql -u root -p

這將提示您輸入密碼,因此輸入 MariaDB 根密碼並按 Enter。登錄到數據庫服務器後,您需要為 Box Billing 安裝創建一個數據庫。

MariaDB [(none)]> CREATE DATABASE boxbilling_db;
MariaDB [(none)]> CREATE USER 'boxbillingp_user'@'localhost' IDENTIFIED BY 'your-strong-password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON boxbilling_db.* to [email protected]'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

步驟 5. 配置 Nginx。

接下來,創建一個新的 VirtualHost 以更好地管理您的 BoxBilling 網站。

cd /var/www/sites-available/
nano boxbilling.conf

添加以下文件。

server {
    listen 80;
    server_name billing.your-domain.com;
    return 302 https://$server_name$request_uri;
}

server {
  listen 443 ssl http2;

     set $root_path '/var/www/boxbilling';

     server_name  billing.your-domain.com;

     index index.html index.htm index.php;
     root $root_path;
     try_files $uri $uri/ @rewrite;
     sendfile off;

  ssl_certificate /etc/letsencrypt/live/billing.your-domain.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/billing.your-domain.com/privkey.pem;

  ssl_protocols TLSv1.2;
  ssl_prefer_server_ciphers on;
  ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
  ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0
  ssl_session_timeout  10m;
  ssl_session_cache shared:SSL:10m;
  ssl_session_tickets off; # Requires nginx >= 1.5.9
  # ssl_stapling on; # Requires nginx >= 1.3.7
  # ssl_stapling_verify on; # Requires nginx => 1.3.7
  resolver 8.8.8.8 8.8.4.4 valid=300s;
  resolver_timeout 5s;
  add_header X-Frame-Options DENY;
  add_header X-Content-Type-Options nosniff;
  add_header X-XSS-Protection "1; mode=block";

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

     location @rewrite {
         rewrite ^/(.*)$ /index.php?_url=/$1;
     }

    location ~ .php$ {
         include snippets/fastcgi-php.conf;
         fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
         include fastcgi_params;
         fastcgi_intercept_errors on;
    }

     # Disable PHP execution in bb-uploads and bb-data
     location ^~ /bb-uploads/ { }
     location ^~ /bb-data/ {
       deny all;
     }

     location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
         root $root_path;
         expires off;
         proxy_no_cache 1;
         proxy_cache_bypass 1;
     }

     location ~ /.ht {
         deny all;
     }
 }

保存並關閉文件,然後重新啟動 Nginx Web 服務器以進行更改。

ln -s /etc/nginx/sites-available/boxbilling.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

現在開始從您的網絡瀏覽器安裝和配置 Box Billing。

https://billing.your-domain.com

安裝 Boxbilling 後,需要刪除“安裝”目錄並更改文件權限。bb-config.php‘為 BoxBilling 應用程序創建一個新的 cron 作業。

rm -rf /var/www/boxbilling/install
sudo chmod 644 /var/www/boxbilling/bb-config.php

然後為用戶創建一個新的 cron 作業。www-data‘。 BoxBilling 應用程序主要在 Nginx Web 服務器上運行,用戶的www-data‘:

 EDITOR=nano
sudo crontab -u www-data -e

步驟 6. 訪問 Box Billing 管理頁面。

安裝成功後,打開網絡瀏覽器並轉到以下位置: https://boxbilling.your-domain/bb-admin/ 將顯示下一個屏幕上的管理員登錄頁面。請輸入您的用戶名和密碼。

在 Debian 11 Bullseye 上安裝 Box Billing

恭喜! Box Billing 已成功安裝。感謝您使用本教程在 Debian 11 Bullseye 上安裝最新版本的 Box Billing。我們鼓勵您查看更多幫助和有用信息。 盒子計費官方網站..