SuiteCRM7.10.13(LTS)のインストール設定と日本語化

SuiteCRM7.10.13日本語化済01 ㈱こころみらい

オープンソース日本語対応CRMのF-revo CRMは、残念ながらphp7非対応です。抗うべく、無理やりphp7.2でインストールしてうまくいかずに時間を大きくロストしました。ですが、顧客情報管理アプリケーションのセキュリティ性は非常に大切です。php5系ではセキュリティが心配なため、php7系対応SuiteCRMを2019/2/21時点の最新バージョンLAMPにインストール、日本語パッチ(神奈川県川崎市の株式会社ゼンクさんが前身のSugarCRMで翻訳)を設定します。各工程、Linuxのrootユーザーでコマンド実行しています。

尚、SuiteCRMの前身SugarCRMのマニュアルは株式会社ゼンクさん http://sugarhelp.zenk.co.jp/ にてご確認いただけます。

SuiteCRM github https://github.com/salesagility/SuiteCRM

SuiteCRM Compatibility https://docs.suitecrm.com/admin/compatibility-matrix/

環境はCentOS7でLAMPです。さくらVPSを使いました。Redhat系LinuxのCentOSやFedoraでyum installを使う場合、この記事の手順は参考になります。Devian系Ubuntuなどのapt関連は英語も含めて別の記事を見ていただくようにお願いします。

  • CentOS7
  • php7.2.15
  • Apache2.4.6
  • MariaDB10.2.22

尚、ドキュメントルートは /var/www/独自ドメイン/public_html のようにバーチャルホストを設定しています。説明の都合上 /var/www/独自ドメイン/public_html/suitecrm7.10.13/として、http://独自ドメイン/suitecrm7.10.13/ にてトップのログインページという想定です。

Suite CRM LTS版7.10.13をダウンロード

ダウンロードバージョンの最新LTS確認は https://suitecrm.com/download-suitecrm-lts/ にて参照ください。今回は、最新LTSの7.10.13にしました。以下、コマンドでダウンロードして解凍します。

所有者、グループ、パーミッションの設定

所有者、グループ、パーミッションを再帰的に変更。セキュリティのためにもrootユーザーから所有者とグループをapache:nissyへ変更しておきましょう。

再帰的に775ディレクトリに変えます。

標準エラーを/dev/nullにマージ(公式に書いてありました。必要に応じて行ってください。)

データベース設定

DBのrootユーザーセキュリティのことも考えて、grant関連も網羅してDBユーザやDBを作ります。※時間のあるときにDBのrootユーザーのセキュリティ対策も追記していきます。

初期設定、SuiteCRM向けのphp7.2不足パッケージをインストール

ブラウザで http://独自ドメイン/suitecrm7.10.13/install.phpへ。初期設定を行います。普通に進んでいくと、必要なコンポーネント確認で以下のエラーが出ました。

SuiteCRM7.10.13 phpコンポーネントチェックXML ㈱こころみらい

XML Parsing

Functions associated with XML Parser Libraries that are needed by the SuiteCRM application were not found. You might need to uncomment the extension in the php.ini file, or recompile with the right binary file, depending on your version of PHP. Please refer to your PHP Manual for more information.

ZIP Handling Module

ZIP support not found: SuiteCRM needs ZIP support in order to process compressed files.Location of your PHP configuration file (php.ini):
/etc/php.ini

XML ParsingとZIP Handling Moduleが無いということで、php72のインストール時に入れたと思われるパッケージを確認します。SuiteCRMの必要なパッケージ一覧は https://docs.suitecrm.com/admin/installation-guide/downloading-installing/ で確認出来ます。phpinfo();で見るよりも、現状のパッケージは以下の2コマンドで確認出来ます。このあたりは、php7.2インストール時のパッケージ選定によって環境差が出ます。わからない方は ㈱こころみらい 西村将利(まさとし) までお問合せください。

以下のyumでphp7.2でphp-xmlインストール

Apache再起動します

XML Parsingは解決しました。次はzipインストールです。

端折りますが、再びapache再起動をしてください。その後、次の画面でIMAPが無いと言われます。

SuiteCRM7.10.13 phpコンポーネントチェックIMAP ㈱こころみらい

英語の赤文字部分です。

IMAPのインストールです。このあと、apache再起動も行ってください。

不足分を全部まとめてインストールする場合は以下の様になります。

必要なパッケージなどのコンポーネントチェックを通過して無事にインストール準備ができた状態です。Let’s EncryptなどのSSL化はこの工程の直後に開始する事を推奨します。この工程であれば、DB内に非SSLなログイントップの独自ドメインなどが登録されていません。置換作業なども不要です。SuiteCRM用のデータベースは、まだ白紙状態のためです。Nextに進むとインストール設定に伴う各種入力画面に進みます。

SuiteCRM7.10.13 phpコンポーネントチェック完了 ㈱こころみらい

念のために上記テキストを以下へ記載します。整形が汚くてすみません。

Cronのやり方

そのまま貼り付けただけですが、以下、SuiteCRMのCron解説です。

DBアカウントやSuiteCRMのアドミンユーザーアカウントなど、各種をGUIで設定、入力していくと、このような画面になります。

SuiteCRM7.10.13 phpコンポーネントチェック完了 ㈱こころみらい

以下にテキストとして貼り付けます。

SuiteCRMの日本語翻訳 ja.zip 適用

SuiteCRMの日本語翻訳は、https://crowdin.com/project/suitecrmtranslations/ja# より上記画像の赤枠部分からja.zipをダウンロードしてください。ja.zipをダウンロードしたら、suitecrmのドキュメントルート /var/www/独自ドメイン/public_html/suitecrm7.10.13/ にアップロードして、そのまま展開、上書きします。

suitecrmのドキュメントルートでconfig.phpの314行目にて言語選択肢を以下の様に増やします。元は英語だけです。

今度はブラウザでGUIからログインして、右上のユーザーマークからadmin→Locale→LanguageでJapaneseを選びSAVE(保存)します。ログアウトして、ログインすると日本語版になっています。

日本語翻訳について

日本語翻訳、修正したい部分があったので、以下、githubに翻訳の派生版を作りました。ユーザー登録の中の「IM名」は、InstantMessengerです。SugarCRMはなかなかに歴史が深い様です。
https://github.com/Masamasamasashito/SuiteCRM-japanese

Let’s Encrypt SSL実装

Certbotのインストールをします。

apache向けのSSL証明書取得コマンドを実行します。途中でリダイレクトをするかどうか?聞かれますので2でhttpsリダイレクトをするようにします。

次回は、SiteGuardLiteのWAF実装を行います。さくらVPSのSiteGuardLiteのWAF実装の大きな注意点としては、さくらのFQDNに対するLet’s EncryptのSSL実装もしないといけない点です。 SiteGuardLite が非SSLで独自ドメインのアプリケーションがSSLという本末転倒な事になります。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください