CentOS8にCerbコラボレーションとEメール自動化をインストールする方法

Cerbは、大量の電子メールを送信するために使用される、無料のオープンソースのWebベースのコラボレーションおよび自動化ツールです。これはPHPで記述されており、データベースバックエンドとしてMySQLまたはMariaDBを使用します。リアルタイムの監視、タスク管理、および目標の追跡に使用できる、シンプルで使いやすいWebインターフェイスが付属しています。

このチュートリアルでは、CentOS8サーバーにCerbをインストールして構成する方法を学習します。

前提条件

  • CentOS8を実行しているサーバー。
  • サーバーIPを指す有効なドメイン。このチュートリアルでは、cerb.example.comドメインを使用します。
  • ルートパスワードがサーバーに設定されます。

入門

開始する前に、システムにEPELおよびRemiPHPリポジトリをインストールする必要があります。次のコマンドでインストールできます。

dnf install epel-release -y
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
dnf module enable php:remi-7.4

両方のリポジトリがインストールされたら、次のステップに進むことができます。

LAMPスタックをインストールする

次に、Apache、MariaDB、PHP、およびその他の必要なPHP拡張機能をサーバーにインストールする必要があります。次のコマンドを使用して、それらすべてをインストールできます。

dnf install httpd mariadb-server php php-cli php-zip php-curl php-dom php-gd php-imap php-json php-mbstring php-mysqli php-openssl php-pcre php-session php-simplexml php-xml php-spl php-mailparse git unzip wget -y

すべてのパッケージがインストールされたら、php.iniファイルを編集し、いくつかの設定を変更します。

nano /etc/php.ini

次の行を希望の値に変更します。

memory_limit = 256M
upload_max_filesize = 32M
post_max_size = 32M
date.timezone = Asia/Kolkata

終了したら、ファイルを保存して閉じます。次に、ApacheおよびMariaDBサービスを開始し、次のコマンドを使用してシステムの再起動時に開始できるようにします。

systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb

終了したら、次のステップに進むことができます。

MariaDBサーバーを構成する

まず、MariaDBを保護し、MariaDBのrootパスワードを設定する必要があります。次のコマンドを実行して実行できます。

mysql_secure_installation

以下に示すように、すべての質問に答えてください。

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password:
Re-enter new password:
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のインストールが保護されたら、次のコマンドを使用してMariaDBシェルにログインします。

mysql -u root -p

プロンプトが表示されたらMariaDBrootパスワードを入力し、次のコマンドを使用してCerbのデータベースとユーザーを作成します。

MariaDB [(none)]>CREATE DATABASE cerb;
MariaDB [(none)]>GRANT ALL PRIVILEGES ON cerb.* TO 'cerb'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

次に、特権をフラッシュし、次のコマンドを使用してMariaDBシェルを終了します。

MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>EXIT;

終了したら、次のステップに進むことができます。

Postfixをインストールする

次に、Postfixメールサーバーパッケージをサーバーにインストールする必要があります。次のコマンドを実行してインストールできます。

dnf install postfix -y

Postfixがインストールされたら、Postfixサービスを開始し、次のコマンドを使用してシステムの再起動時に開始できるようにします。

systemctl start postfix
 systemctl enable postfix

終了したら、次のステップに進むことができます。

Composerをインストールします

Composerは、プロジェクトに必要な依存関係をインストールするために使用されるPHPの依存関係マネージャーです。次のコマンドを使用して、Composerインストールスクリプトをダウンロードできます。

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

次に、ComposerのGithubリポジトリから最新のComposerインストーラーの署名をダウンロードし、次のコマンドで変数に保存します。

HASH="$(wget -q -O - https://composer.github.io/installer.sig)"

次に、次のコマンドを使用してインストーラースクリプトを確認します。

php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

すべてが正常に機能する場合は、次の出力が表示されます。

インストーラーの検証

最後に、次のコマンドを使用してComposerをインストールします。

php composer-setup.php --install-dir=/usr/local/bin --filename=composer

次の出力が得られるはずです。

All settings correct for using Composer
Downloading...

Composer (version 2.0.7) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

次のコマンドを使用して、Composerのバージョンを確認できます。

composer --version

次の出力が得られるはずです。

Composer version 2.0.7 2020-11-13 17:31:06

終了したら、次のステップに進むことができます。

Cerbをダウンロード

次に、次のコマンドを使用して、Cerbの最新バージョンをGitリポジトリからApacheルートディレクトリにダウンロードします。

cd /var/www/html
git clone git://github.com/wgm/cerb.git cerb

ダウンロードが完了したら、ディレクトリをcerbに変更し、次のコマンドを使用して必要な依存関係をインストールします。

cd cerb
 composer install

次に、次のコマンドを使用して、cerbディレクトリの所有権と権限を設定します。

chown -R apache:apache /var/www/html/cerb
 chmod -R 755 /var/www/html/cerb

終了したら、次のステップに進むことができます。

ApacheをCerb用に構成する

次に、Cerb用のApache仮想ホスト構成ファイルを作成する必要があります。次のコマンドで作成できます。

nano /etc/httpd/conf.d/cerb.conf

次の行を追加します。

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/var/www/html/cerb"
    ServerName cerb.example.com
    ErrorLog "/var/log/httpd/cerb-error_log"
    CustomLog "/var/log/httpd/cerb-access_log" combined
</VirtualHost>

終了したら、ファイルを保存して閉じます。次に、次のコマンドを使用してApacheサービスを再起動します。

systemctl restart httpd

次のコマンドを使用して、Apacheのステータスを確認できるようになりました。

systemctl status httpd

次の出力が得られるはずです。

? httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           ??php-fpm.conf
   Active: active (running) since Tue 2020-11-17 03:35:53 EST; 7s ago
     Docs: man:httpd.service(8)
 Main PID: 5545 (httpd)
   Status: "Started, listening on: port 80"
    Tasks: 213 (limit: 25014)
   Memory: 28.9M
   CGroup: /system.slice/httpd.service
           ??5545 /usr/sbin/httpd -DFOREGROUND
           ??5547 /usr/sbin/httpd -DFOREGROUND
           ??5548 /usr/sbin/httpd -DFOREGROUND
           ??5549 /usr/sbin/httpd -DFOREGROUND
           ??5550 /usr/sbin/httpd -DFOREGROUND

Nov 17 03:35:52 centos8 systemd[1]: Stopped The Apache HTTP Server.
Nov 17 03:35:52 centos8 systemd[1]: Starting The Apache HTTP Server...

終了したら、次のステップに進むことができます。

SELinuxとファイアウォールを構成する

デフォルトでは、SELinuxはCentOS 8で有効になっています。したがって、Cerb用にSELinuxを構成する必要があります。次のコマンドで構成できます。

setsebool -P httpd_can_network_connect 1

次に、firewalldを介してポート80と443を許可する必要があります。次のコマンドで実行できます。

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https

次のコマンドを使用して、firewalldをリロードし、すべての変更を適用します。

firewall-cmd --reload

終了したら、次のステップに進むことができます。

Cerb WebUIにアクセスする

次に、Webブラウザーを開き、URLhttp //cerb.example.comを使用してCerbにアクセスします。次のページが表示されます。

サーバー環境を確認してください

すべての依存関係を確認し、[続行]ボタンをクリックします。次のページが表示されます。

Cerbのインストール

をクリックして使用許諾契約に同意する]ボタンを受け入れます。次のページが表示されます。

Cerbデータベースのセットアップ

データベース情報を入力し、[データベース接続の確認]をクリックします。次のページが表示されます。

CerbMTAセットアップ

SMTPの詳細を入力し、[メール設定確認]をクリックします。次のページが表示されます。

アカウントを作成する

アカウント情報を入力し、[続行]ボタンをクリックします。次のページが表示されます。

Cerbパッケージ

パッケージを選択し、[続行]ボタンをクリックします。次のページが表示されます。

cerbへようこそ

[続行]ボタンをクリックします。次のページが表示されます。

インストールフォルダを削除します

次に、次のコマンドを使用してインストールディレクトリを削除します。

rm -rf /var/www/html/cerb/install/

[ログインして開始]ボタンをクリックします。次のページが表示されます。

Cerbサインイン

メールアドレスを入力して、[続行]ボタンをクリックしてください。次のページが表示されます。

Cerbパスワード

パスワードを入力し、[サインオン]ボタンをクリックします。次のページにCerbのデフォルトダッシュボードが表示されます。

Cerbへようこそ

結論

おめでとう!これで、CentOS 8にApacheを使用してCerbを正常にインストールおよび構成できました。これで、Cerbダッシュボードを使用して大量の電子メールを送信できます。ご不明な点がございましたら、お気軽にお問い合わせください。

Source