GNU/Linux >> Linux の 問題 >  >> Linux

CentOS7でRoundCubeを使用してメールボックスを管理する方法

Roundcubeは、Webサービスを介して信頼性が高くカスタマイズ可能な電子メールサービスを管理するための最もよく知られているオープンソースソリューションの1つです。

このチュートリアルには、CentOS 7でRoundcubeを使用してWebメールサービスをインストールおよび管理するためのすべての情報があります。PHPに基づいているため、RoundcubeではNGINXやApacheなどのWebサーバーをインストールする必要があります。 MariaDBなどのMySQLのようなデータベースに依存しています。

まず、SSH接続を介してサーバーに接続します。まだ行っていない場合は、ガイドに従って、SSHで安全に接続することをお勧めします。ローカルサーバーの場合は、次の手順に進み、サーバーのターミナルを開きます。

NGINXとPHPのインストール

PHPとMySQLをサポートするNGINXのインスタンスをインストールして続行します:

$ sudo yum install nginx php php-fpm php-mcrypt php-cli php-gd php-curl php-xml php-mysql php-mbstring php-pspell php-imagick 

すべてのパッケージのインストールが終了したら、NGINXを起動し、システムでの自動起動を有効にします。

$ sudo systemctl start nginx$ sudo systemctl enable nginx

Roundcubeを使用するには、/ etc/php.iniにあるPHP構成ファイル内の2つのパラメーターを変更する必要があります。

# Impostazione della nostra timezone

date.timezone = "Europe/Rome"
cgi.fix_pathinfo=0

変更したファイルを保存し、PHP-FPMサービスを開始して有効にします。

$ sudo systemctl start php-fpm$ sudo systemctl enable php-fpm 

MariaDBのインストール

Roundcubeを正しく機能させるには、次のコマンドでインストールできるMariaDBデータベースが必要です。

$ sudo yum install mariadb-server

インストールが完了したら、サービスを開始します:

$ sudo systemctl start mariadb

$ sudo systemctl enable mariadb

MariaDBに含まれているスクリプトを実行して、セキュリティを強化し、データベースへのアクセスを制限して、MariaDBのセキュリティを続行します。

MariaDb "mysql_secure_installation"が提供するユーティリティスクリプトを開始し、すべての質問に答えます。

$ sudo mysql_secure_installation

最初に、パスワード検証システムを有効にするかどうかを尋ねられます。このシステムを有効にすると、ユーザーのパスワードを設定したときに評価されます。パスワードが最小セキュリティ要件を満たしていない場合、エラーメッセージが表示されて拒否されます。

次に、rootパスワードを好みのパスワードに変更するかどうかを尋ねられます。パスワード検証システムを有効にする場合は、セキュリティ基準を尊重するパスワードを入力する必要があります。

安全なパスワードを作成するためのいくつかのベストプラクティスに従うことをお勧めします。これには以下が含まれます:

  • 大文字と小文字の両方の使用

  • 文字と数字の両方の使用

  • @#$%ˆ&!

    などの英数字以外の文字の使用
  • 以前に使用されたもの以外のパスワードの使用

最後に、匿名ユーザーを削除するかどうか、データベースをテストするかどうか、rootユーザーによるリモートログインを無効にするかどうかを選択します。適切なレベルのセキュリティを確保するには、これらすべての変更を確認することをお勧めします。

この時点で、表示されたテーブルの更新を確認して、新しいセキュリティ基準を適用します。

Enter current password for root (enter for none):

OK, successfully used password, moving on...
                Setting the root password ensures that nobody can log into MariaDB

root user without the proper authorisation.
                Set root password? [Y/n] Y

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

 ... Success!
                Remove anonymous users? [Y/n] Y

 ... Success!
                Normally, root should only be allowed to connect from 'localhost'.  This

ensures that someone cannot guess at the root password from the network.
                Disallow root login remotely? [Y/n] Y

 ... Success!
                Remove test database and access to it? [Y/n] Y

 - Dropping test database...

 ... Success!

 - Removing privileges on test database...

 ... Success!
                Reload privilege tables now? [Y/n] Y

 ... Success!
                Cleaning up...
                All done!  If you've completed all of the above steps, your MariaDB

installation should now be secure.
                Thanks for using MariaDB!

サービスを再起動した後、Roundcubeのデータベースとその新しいユーザー(パスワードを変更することにより)を作成できます:

$ mysql -u root -p

MariaDB [(none)]> CREATE DATABASE roundcubemail /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;

MariaDB [(none)]> CREATE USER 'roundcube'@'localhost' IDENTIFIED BY 'mf0c3mhx';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcubemail.* TO 'roundcube'@'localhost';

MariaDB [(none)]> FLUSH PRIVILEGES;

MariaDB [(none)]> exit
Roundcubeのインストール

Roundcubeの最新バージョンをダウンロードするには、wgetが必要です。システムにインストールされていない場合は、次のコマンドを使用してインストールします。

$ sudo yum install wget

それ以外の場合は、githubからパッケージをダウンロードして抽出します。

$ wget -c https://github.com/roundcube/roundcubemail/releases/download/1.3.7/roundcubemail-1.3.7-complete.tar.gz

$ tar xzf roundcubemail-1.3.7-complete.tar.gz

次に、すべてをNGINXディレクトリに移動します:

$ sudo mv roundcubemail-1.3.7 /var/www/html/roundcubemail

$ sudo cd /var/www/html/roundcubemail/

Roundcubeパッケージには、必要な構造で新しく作成されたデータベースにインポートする必要のあるSQLファイルが含まれています。

$ mysql -u root -p roundcubemail < SQL/mysql.initial.sql

インポートプロセス中に、MariaDBのインストール中に入力されたデータベースrootパスワードの入力を求められます。

データベースの構成が完了したら、ドメインmail.domain.com用にNGINX仮想サーバーを準備します。まず、htmlフォルダーの所有者がNGINXであることを確認します:

$ sudo chown -R nginx:nginx /var/www/html/roundcubemail

次に、仮想ホストファイル/etc/nginx/conf.d/mail.example.com.confを次のように作成および編集します。

server {

        listen 80;

        server_name mail.domain.com;
                 

        root /var/www/html/roundcubemail;

        index  index.php index.html;
                 

        #i# Logging

        access_log /var/log/nginx/mail.domain.com_access_log;

        error_log   /var/log/nginx/mail.domain.com_error_log;
                 

        location / {

                try_files $uri $uri/ /index.php?q=$uri&$args;

        }
                 

        location ~ ^/(README.md|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {

                deny all;

        }
                 

        location ~ ^/(config|temp|logs)/ {

                deny all;

        }
                 

        location ~ /\. {

                deny all;

                access_log off;

                log_not_found off;

        }
                 

        location ~ \.php$ {

                include /etc/nginx/fastcgi_params;

                #fastcgi_pass 127.0.0.1:9000;

                fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;

                fastcgi_index index.php;

                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        }

}

すべての変更を保存する前に、「domain.com」ドメインを自分のドメインに変更することを忘れないでください。

権限エラーの場合は、次のパラメーターを変更して、/ etc / php-fpm.d/www.confにあるPHP-FPM構成を変更します。

user = nginx

group = nginx

listen = /var/run/php-fpm/php-fpm.sock

listen.owner = nginx

listen.group = nginx

listen.mode = 0660

また、PHPの「セッション」ディレクトリの所有者がNGINXであることを確認してください:

$ sudo chown -R nginx:nginx /var/lib/php/session/

この時点で、RoundcubeをWebインターフェイスから構成する準備ができています。

Webインターフェイスを介したRoundcube構成

インストールを続行するには、Webブラウザから次のURLにアクセスしてください:http://mail.domain.com/installer/

この最初のフェーズでは、Roundcubeインストーラーがシステムを正しく操作するための要件の概要を表示します。 [次へ]ボタンをクリックして続行します。

この第2フェーズでは、一連の操作パラメーターを入力する必要があります。ドメイン名または選択したニックネームを入力するproduct_nameを除いて、すべて変更しないでください。

SQL Serverへのアクセスデータを、インストールフェーズで入力したデータに変更することが重要です。完了したら、[次へ]をクリックして続行します。

2番目のフェーズが完了したら、サーバーのIMAP / SMTPパラメーターをテストして、Roundcubeがメールを送受信できることを確認します。

終了したら、次のコマンドを実行して、/ var / www / html / roundcubemail/installerフォルダーにあるインストールに必要なすべてのファイルを削除します。

$ sudo rm -rf /var/www/html/roundcubemail/installer

構成フェーズで入力したパラメーターを変更または変更する場合は、/ var / www / html / roundcubemail / config/config.inc.phpディレクトリ内のファイルをいつでも変更できます。

ウェブメールにアクセス

RoudcubeインスタンスはURLhttp://mail.domain.com/で使用する準備ができています。次に、Dovecotで構成されたメールボックスのログイン詳細を使用してログインします。


Linux
  1. Linuxでアカウントのパスワードを管理する方法

  2. CentOS 7.xにMySQLをインストールする方法は?

  3. Linuxでパスワードを確認するには?

  1. CentOS7にNginxとMariaDBを使用してownCloud9.1をインストールする方法

  2. CentOS8にRoundcubeWebメールをインストールする方法

  3. CentOS6でMySQLをMariaDBに置き換える方法

  1. CentOS 7にPHPとMySQL(LEMPスタック)を使用してNginxをインストールする方法

  2. LinuxでEnpassを使用してパスワードを管理する方法

  3. CentOS7にPHP-FPMとMariaDBを使用してLighttpdをインストールする方法