インストールガイド · 2 min read · Oct 13, 2025

Debian 12にSuiteCRMをインストールする方法

SuiteCRMは、PHPで書かれた無料のオープンソースCRM(顧客関係管理)ソフトウェアです。これは、ビジネスのマーケティング、販売、顧客サービス部門を整理し、管理するのに役立ちます。SuiteCRMは、製造業、公共部門、技術、金融、教育など、ほぼすべての業界に適しています。

このガイドでは、Debian 12サーバーにSuiteCRMをインストールする手順を説明します。LAMPスタック(Apache2、MariaDB、PHP)を使用して、Debianマシン上でSuiteCRMをインストールして実行します。また、LetsencryptからのSSL/TLS証明書でSuiteCRMを保護します。

前提条件

このガイドを続行するために必要な要件は以下の通りです:

  • Debian 12サーバー。
  • 管理者権限を持つ非ルートユーザー。
  • サーバーIPアドレスにポイントされたドメイン名。

依存関係のインストール

SuiteCRMは、MySQL/MariaDBをデータベースとして使用するPHPで書かれたCRMソフトウェアです。このガイドでは、LAMPスタック(Apache2、MariaDB、PHP)でSuiteCRMを実行し、今からLAMPスタックパッケージと追加のPHP拡張をインストールします。

まず、以下のapt updateコマンドを使用してDebianパッケージインデックスを更新します。

sudo apt update

update repo

次に、以下のコマンドを使用してLAMPスタック(Apache2、MariaDB、PHP)パッケージといくつかのPHP拡張をインストールします。

sudo apt install apache2 mariadb-server php php-cli php-mysql php-bcmath php-xml php-zip php-curl php-mbstring php-gd php-tidy php-intl php-cli php-opcache php-soap php-imap php-ldap unzip

インストールを続行するにはyと入力します。

install dependencies

次に、以下のsystemctlコマンドを実行してapache2サービスを確認します。これにより、apache2サービスが有効で実行中であることが確認されます。

sudo systemctl is-enabled apache2  
sudo systemctl status apache2

出力のenabledはapache2が有効であることを確認し、出力のactive (running)はapache2が実行中であることを確認します。

check apache2

次に、以下のコマンドを使用してmariadbサービスを確認します。

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

apache2サービスの出力と同様に、mariadbサービスが有効で実行中であることが確認できるはずです。

check mariadb

最後に、以下のコマンドを実行してPHPのバージョンといくつかの有効な拡張を確認します。

php -v  
php -m

以下の出力は、PHP 8.2がインストールされており、curl、exif、fileinfo、およびgdなどのいくつかの有効なモジュールがあることを示しています。

check php

MariaDBサーバーの設定

依存関係をインストールした後、MariaDBサーバーのインストールを保護し、SuiteCRMに使用される新しいデータベースとユーザーを作成します。

以下のmariadb-secure-installationコマンドを実行して、MariaDBサーバーを保護します。

sudo mariadb-secure-installation

プロセス中に、設定を確認するためにYを入力するか、nを入力して変更を拒否します。

  • unix_socket認証に切り替えますか?nと入力してENTERを押します。デフォルトのMariaDB rootユーザーはすでに保護されています。オプションで、yを入力して有効にすることもできます。
  • rootパスワードを変更しますか?yを入力して新しいMariaDB rootパスワードを設定します。
  • 匿名ユーザーを削除しますか?yを入力して確認します。
  • リモートからのrootログインを禁止しますか?yを入力して確認します。MariaDB rootユーザーを使用している場合、ローカル接続のみが許可されます。
  • テストデータベースとそのアクセスを削除しますか?yを入力してデフォルトのデータベース’test’を削除します。
  • 最後に、yを再度入力してMariaDBサーバーのすべてのテーブル権限を再読み込みし、新しい変更を適用します。

MariaDBが保護されたので、SuiteCRM用の新しいデータベースとユーザーを作成します。

以下のmariadbクライアントコマンドを使用してMariaDBサーバーにログインします。プロンプトが表示されたら、MariaDB rootパスワードを入力します。

sudo mariadb -u root -p

次に、以下のクエリを実行して新しいデータベースsuitecrmdbとユーザーsuitecrmをパスワードpasswordで作成します。パスワードは自分のものに変更してください。

CREATE DATABASE suitecrmdb;  
CREATE USER 'suitecrm'@'localhost' IDENTIFIED BY 'password';  
GRANT ALL PRIVILEGES ON suitecrmdb.* TO 'suitecrm'@'localhost';  
FLUSH PRIVILEGES;

create database and user

次に、以下のクエリを実行してユーザーsuitecrmを確認します。

SHOW GRANTS FOR 'suitecrm'@'localhost';

以下の出力には、ユーザーsuitecrmがデータベースsuitecrmdbにアクセスできることが表示されるはずです。

veridy database user

MariaDBサーバーから退出するにはquitと入力します。

PHPの設定

MariaDBサーバーが設定されたので、次のステップはPHPインストールを設定することです。SuiteCRMは、カスタムerror_reporting、OPCacheモジュールの有効化、カスタムupload_max_filesizeおよびpost_max_sizeなど、PHP設定のいくつかの変更を必要とします。

以下のnanoエディタコマンドを使用してデフォルトのPHP設定/etc/php/8.2/apache2/php.iniおよび/etc/php/8.2/cli/php.iniを開きます。

sudo nano /etc/php/8.2/apache2/php.ini  
sudo nano /etc/php/8.2/cli/php.ini

以下の行を使用していくつかの設定のデフォルトパラメータを変更します。date.timezoneはサーバーのタイムゾーンに、memory_limitはサーバーのメモリに調整してください。

date.timezone = Europe/Amsterdam  
  
max_execution_time = 60  
memory_limit = 256M  
  
upload_max_filesize = 25M  
post_max_size = 25M

デフォルトのerror_reportingパラメータを次のように変更します。

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE & ~E_WARNING

デフォルトのセッションパスを/var/lib/php/sessionsに設定するために、session.save_pathパラメータのコメントを解除します。

session.save_path = "/var/lib/php/sessions"

次に、OPCache拡張を有効にし、以下のようにいくつかの設定を調整します。

opcache.enable=1  
  
; OPcacheの共有メモリストレージサイズ。  
opcache.memory_consumption=256  
  
; OPcacheハッシュテーブル内のキー(スクリプト)の最大数。  
; 200から100000の間の数値のみが許可されます。  
opcache.max_accelerated_files=20000  
  
; 無効にすると、OPcacheを手動でリセットするか、  
; ファイルシステムの変更を反映させるためにウェブサーバーを再起動する必要があります。  
opcache.validate_timestamps=0

完了したら、ファイルを保存して閉じます。

次に、以下のsystemctlコマンドを実行してapache2サービスを再起動し、行った変更を適用します。

sudo systemctl restart apache2

SuiteCRMのダウンロードとインストール

この時点で、LAMPスタックはSuiteCRM用に設定されています。次に、SuiteCRMのソースコードをダウンロードし、コマンドラインを介してインストールします。

SuiteCRMのターゲットインストールとして使用される新しいディレクトリ/var/www/suitecrmを作成します。

mkdir -p /var/www/suitecrm

/var/www/suitecrmディレクトリに移動し、以下のwgetコマンドを使用してSuiteCRMのソースコードをダウンロードします。最新のソースコードのバージョンを取得するには、SuiteCRMダウンロードページを確認してください。この時点で、SuiteCRM 8.4が最新バージョンです。

cd /var/www/suitecrm  
wget https://suitecrm.com/download/142/suite84/562972/suitecrm-8-4-0.zip

ダウンロードが完了したら、以下のunzipコマンドを使用してsuitecrm-8-4-0.zipファイルを抽出します。

unzip suitecrm-8-4-0.zip

次に、SuiteCRMのソースコードの適切な権限と所有権を設定するために、以下のコマンドを実行します。

find . -type d -not -perm 2755 -exec chmod 2755 {} \;  
find . -type f -not -perm 0644 -exec chmod 0644 {} \;  
find . ! -user www-data -exec chown www-data:www-data {} \;  
chmod +x bin/console

最後に、バイナリファイル/var/www/suitecrm/bin/consoleを実行して、コマンドラインを介してSuiteCRMをインストールします。SuiteCRMインストールに使用されるデータベース名、ユーザー、ホスト、ターゲットドメイン名、管理ユーザー、およびパスワードの詳細を変更してください。

sudo -u www-data ./bin/console suitecrm:app:install -u "alice" -p "password" -U "suitecrm" -P "password" -H "127.0.0.1" -N "suitecrmdb" -S "http://suitecrm.howtoforge.local/"

インストールが完了すると、以下の出力がターミナルに表示されます。

install suitcrm via cli

Suite用のApache2仮想ホストの設定

次のステップでは、SuiteCRMを実行するために使用される新しいApache2仮想ホスト設定を作成します。進む前に、サーバーIPアドレスにポイントされたドメイン名があることを確認してください。

以下のa2enmodコマンドを実行して、SuiteCRMに必要なApache2モジュールを有効にします。

sudo a2enmod rewrite ssl header

次に、以下のnanoエディタコマンドを使用して新しいApache2仮想ホスト設定/etc/apache2/sites-available/suitecrm.confを作成します。

sudo nano /etc/apache2/sites-available/suitecrm.conf

以下の設定を挿入し、ServerNameオプションをドメイン名に変更してください。

  
  
 DocumentRoot /var/www/suitecrm/public  
 ServerName suitecrm.howtoforge.local  
  
   
    Options FollowSymLinks  
    AllowOverride All  
    
  
 ErrorLog /var/log/apache2/suitecrm-error.log  
 CustomLog /var/log/apache2/suitecrm-access.log common  
  

完了したら、ファイルを保存して閉じます。

次に、以下のコマンドを実行して仮想ホストファイルsuitecrm.confを有効にし、Apache2設定を確認します。

sudo a2ensite suitecrm.conf  
sudo apachectl configtest

正しい構文であれば、出力はSyntax OKとなります。

setup vhosts

次に、以下のsystemctlコマンドを実行してapache2サービスを再起動し、変更を適用します。

sudo systemctl restart apache2

最後に、ウェブブラウザを開き、SuiteCRMインストールのドメイン名(例:http://suitecrm.howtoforge.local/)にアクセスします。すべてがうまくいけば、SuiteCRMのログインページが表示されます。

LetsencryptからのSSL/TLSでSuiteCRMを保護する

すべてが設定されたので、LetsencryptからのSSL/TLS証明書でSuiteCRMを保護します。

以下のapt installコマンドを使用してCertbotとCertbot Apacheプラグインをインストールします。インストールを続行するにはyと入力します。

sudo apt install certbot python3-certbot-apache

次に、以下のcertbotコマンドを実行してSSL/TLS証明書を生成します。以下のコマンド内のドメイン名とメールアドレスを変更してください。

sudo certbot --apache --agree-tos --no-eff-email  --redirect --hsts --staple-ocsp --email [email protected] -d suitecrm.howtoforge.local

プロセスが完了すると、SSL証明書は/etc/letsencrypt/live/suitecrm.howtoforge.localディレクトリに生成されます。また、SuiteCRMの仮想ホストファイルsuitecrm.confは自動的にHTTPSで設定されます。

ウェブブラウザに戻り、SuiteCRMのドメイン名にアクセスすると、セキュアなHTTPS接続のためにSuiteCRMのログインページにリダイレクトされるはずです。管理ユーザーとパスワードを入力し、ログインをクリックします。

suitecrm login page

すべてがうまくいけば、以下のようなSuiteCRM管理ダッシュボードが表示されるはずです。

suitecrm dashboard

結論

まとめると、Debian 12サーバーにLAMPスタック(Apache2、MariaDB、PHP)を使用してSuiteCRMを正常にインストールしました。また、Certbotを介して生成されたLetsencryptのSSL/TLSでSuiteCRMを保護しました。これで、SuiteCRMをビジネスの主要なCRM(顧客関係管理)アプリケーションとして使用でき、SuiteCRMインストールにSMTPサーバーを追加することから始めることができます。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。