如何在 Debian 11 上安裝 Box Billing


本教程將向您展示如何在 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。我們鼓勵您查看更多幫助和有用信息。 盒子計費官方網站..



Source link