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

Debian11でPostfixAdminを使用してメールサーバーを設定する方法

PostfixAdminは、WebブラウザからPostfixメールサーバーを管理するために使用される無料のオープンソースのWebベースのインターフェイスです。これにより、ユーザー、エイリアスの追加、ディスククォータの設定、Webベースのインターフェイスへのドメインの追加と削除が可能になります。 PostgreSQL、MySQL、MariaDB、SQLiteなどのいくつかのデータベースバックエンドをサポートしています。プラグインを介してSquirrelmailおよびRoundcubeと統合できます。

この記事では、Debian11にPostfixAdminをインストールする方法を説明します。

前提条件
  • postfixがインストールされたDebian11を実行しているサーバー。
  • 有効なドメイン名はサーバーのIPアドレスで示されます。
  • 有効なMXレコードはサーバーのIPアドレスで示されます。
はじめに

まず、次のコマンドを使用して、システムパッケージを最新バージョンに更新します。

apt-get update -y

システムが更新されたら、サーバーの完全修飾ホスト名を設定します。

hostnamectl set-hostname mail.domain.com

次に、次のコマンドを実行して変更を適用します。

hostname -f

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

Nginx、MariaDB、PHPをインストール

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

apt-get install nginx mariadb-server php-fpm php-cli php-imap php-json php-mysql php-opcache php-mbstring php-readline unzip sudo -y

すべてのパッケージがインストールされたら、次のステップに進むことができます。

PostfixAdminデータベースを作成する

次に、PostfixAdminのデータベースとユーザーを作成する必要があります。まず、次のコマンドを使用してMariaDBコンソールにログインします。

mysql

接続したら、次のコマンドを使用してデータベースとユーザーを作成します。

MariaDB [(none)]> CREATE DATABASE postfixadmin;
MariaDB [(none)]> GRANT ALL ON postfixadmin.* TO 'postfixadmin'@'localhost' IDENTIFIED BY 'securepassword';

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

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

この時点で、PostfixAdmin用にMariaDBデータベースが作成されます。これで、次のステップに進むことができます。

PostfixAdminをインストール

まず、SourceforgeのWebサイトから最新バージョンのPostfixAdminをダウンロードする必要があります。次のコマンドでダウンロードできます:

wget https://webwerks.dl.sourceforge.net/project/postfixadmin/postfixadmin-3.3.8/PostfixAdmin%203.3.8.tar.gz

ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを抽出します。

tar -xvzf PostfixAdmin\ 3.3.8.tar.gz

次に、抽出したディレクトリをNginxWebルートディレクトリに移動します。

mv postfixadmin-postfixadmin-7d04685 /var/www/html/postfixadmin

次に、PostfixAdminのインストールに必要なディレクトリを作成します:

mkdir /var/www/html/postfixadmin/templates_c

次に、適切な所有権をPostfixAdminディレクトリに設定します:

chown -R www-data: /var/www/html/postfixadmin/

次に、config.local.phpファイルを作成します:

nano /var/www/html/postfixadmin/config.local.php

次の行を追加します:

<?php
$CONF['configured'] = true;
 
$CONF['database_type'] = 'mysqli';
$CONF['database_host'] = 'localhost';
$CONF['database_user'] = 'postfixadmin';
$CONF['database_password'] = 'securepassword';
$CONF['database_name'] = 'postfixadmin';
 
$CONF['default_aliases'] = array (
 'abuse' => '[email protected]',
 'hostmaster' => '[email protected]',
 'postmaster' => '[email protected]',
 'webmaster' => '[email protected]'
);
 
$CONF['fetchmail'] = 'NO';
$CONF['show_footer_text'] = 'NO';
 
$CONF['quota'] = 'YES';
$CONF['domain_quota'] = 'YES';
$CONF['quota_multiplier'] = '1024000';
$CONF['used_quotas'] = 'YES';
$CONF['new_quota_table'] = 'YES';
 
$CONF['aliases'] = '0';
$CONF['mailboxes'] = '0';
$CONF['maxquota'] = '0';
$CONF['domain_quota_default'] = '0';
?>

ファイルを保存して閉じてから、次のコマンドを使用してPostfixAdminデータベースのスキーマを作成します。

sudo -u www-data php /var/www/html/postfixadmin/public/upgrade.php

次に、PostfixAdminのスーパー管理者アカウントを作成する必要があります。次のコマンドで作成できます:

bash /var/www/html/postfixadmin/scripts/postfixadmin-cli admin add

以下に示すように、管理者のユーザー名、パスワード、およびドメインを入力します。

Welcome to Postfixadmin-CLI v0.3
---------------------------------------------------------------

Admin:  
> [email protected]

Password:  
> [email protected]

Password (again):  
> [email protected]

Super admin:
(Super admins have access to all domains, can manage domains and admin accounts.) (y/n) 
> y

Domain:  
> domain.com

Active: (y/n) 
> y

The admin [email protected] has been added!

---------------------------------------------------------------

PostfixAdmin用にNginxを構成する

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

nano /etc/nginx/conf.d/domain.com.conf

次の行を追加します:

server {
        listen 80;
        root /var/www/html/postfixadmin/public;
        index index.html index.htm index.php;
        server_name mail.domain.com;

        location ~ \.php$ {
          fastcgi_split_path_info ^(.+\.php)(/.+)$;
          fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
          fastcgi_index index.php;
          include fastcgi_params;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          fastcgi_intercept_errors off;
          fastcgi_buffer_size 16k;
          fastcgi_buffers 4 16k;
          fastcgi_connect_timeout 600;
          fastcgi_send_timeout 600;
          fastcgi_read_timeout 600;
        }


   location / {
       try_files $uri $uri/ =404;
   }

}

ファイルを保存して閉じてから、Nginxサービスを再起動して変更を適用します。

systemctl restart nginx

次のコマンドを使用して、Nginxのステータスを確認することもできます。

systemctl status nginx

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

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-28 08:13:22 UTC; 7s ago
       Docs: man:nginx(8)
    Process: 74644 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 74645 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 74646 (nginx)
      Tasks: 2 (limit: 2341)
     Memory: 3.2M
        CPU: 57ms
     CGroup: /system.slice/nginx.service
             ??74646 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??74647 nginx: worker process

Aug 28 08:13:22 mail.domain.com systemd[1]: Starting A high performance web server and a reverse proxy server...
Aug 28 08:13:22 mail.domain.com systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Aug 28 08:13:22 mail.domain.com systemd[1]: Started A high performance web server and a reverse proxy server.
PostfixAdminにアクセス

この時点で、PostfixAdminがインストールおよび構成されています。これで、URL http://mail.domain.comを使用してアクセスできます。 。 PostfixAdminログインページにリダイレクトされます:

管理者のメールアドレスとパスワードを入力し、ログインをクリックします ボタン。次の画面にPostfixAdminダッシュボードが表示されます。

結論

おめでとう!これで、Debian 11にPostfixAdminが正常にインストールされました。これで、WebブラウザからPostfixメールサーバーを簡単に管理できます。ご不明な点がございましたら、お気軽にお問い合わせください。


Debian
  1. Debian11サーバーでSFTPサーバーをセットアップする方法

  2. Ubuntu20.04にPostfixAdminを使用してメールサーバーをインストールする方法

  3. Debian10でOpenVPNサーバーをセットアップする方法

  1. CentOS7でPostfixAdminとMariaDBを使用してメールサーバーをセットアップする

  2. CentOS7でPostfixAdminを使用してメールサーバーを設定する方法

  3. Debian9でPostfixAdminを使用してメールサーバーを設定する

  1. PostfixAdminを使用してメールサーバーを設定する

  2. Debian10でUFWを使用してファイアウォールを設定する方法

  3. Debian9でUFWを使用してファイアウォールを設定する方法