GNU/Linux >> Linux の 問題 >  >> Cent OS

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

このチュートリアルでは、CentOS 7にPostfixAdminを使用してメールサーバーをインストールおよび構成する方法を示します。知らない人のために、PostfixadminはMySQLまたはのWebフロントエンドです。 Postfixで使用されるMariaDBデータベース。Postfixadminを使用すると、WebブラウザからPostfixサービスを簡単に管理し、メールユーザーとドメイン、メールエイリアス、ディスククォータなどを追加および削除できます。

この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudoを追加する必要があります。 ルート権限を取得するコマンドに‘。 CentOS7サーバーへのPostfixAdminを使用したメールサーバーの段階的なインストールを紹介します。

前提条件

  • 次のオペレーティングシステムのいずれかを実行しているサーバー:CentOS7。
  • 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
  • サーバーへのSSHアクセス(またはデスクトップを使用している場合はターミナルを開く)
  • non-root sudo user またはroot userへのアクセス 。 non-root sudo userとして行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。

CentOS7にPostfixAdminを使用してメールサーバーをインストールする

ステップ1.まず、システムが最新であることを確認することから始めましょう。

 yum clean allyum -y update 

手順2.LAMPサーバーをインストールします。

CentOS 7 LAMPスタックサーバーが必要です。LAMPがインストールされていない場合は、こちらのガイドに従ってください。また、必要なPHPモジュールをインストールしてください。

 yum install php70w-cli php70w-gd php70w-xml php70w-curl php70w-mysql php70w-zip php70w-mbstring php70w-mcrypt 

ステップ3.PostfixAdmin用にMariaDBを構成します。

デフォルトでは、MariaDBは強化されていません。mysql_secure_installationを使用してMariaDBを保護できます。 脚本。ルートパスワードの設定、匿名ユーザーの削除、リモートルートログインの禁止、テストデータベースの削除と安全なMariaDBへのアクセスを行う各手順を注意深くお読みください。

 mysql_secure_installation 

次のように構成します:

-rootパスワードを設定しますか? [Y / n] y-匿名ユーザーを削除しますか? [Y / n] y-rootログインをリモートで禁止しますか? [Y / n] y-テストデータベースを削除してアクセスしますか? [Y / n] y-特権テーブルを今すぐリロードしますか? [Y / n] y 

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

 mysql -u root -p 

これによりパスワードの入力を求められるので、MariaDBルートパスワードを入力してEnterキーを押します。データベースサーバーにログインしたら、次のデータベースを作成する必要があります。 PostfixAdminのインストール:

 CMariaDB [(none)]> CREATE DATABASE postfixadmin; MariaDB [(none)]>postfixadmin。*のすべての特権を付与する'postfixadmin' @'localhost' IDENTIFIED BY'strong_password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(なし)]> \ q 

ステップ4.PostfixAdminをインストールします。

最初に行うことは、PostfixAdminのダウンロードページに移動し、PostfixAdminの最新の安定バージョンをダウンロードすることです。

 cd /var/www/htmlwget https://github.com/postfixadmin/postfixadmin/archive/refs/tags/postfixadmin-3.3.11.tar.gztar -xzf postfixadmin-3.3.11.tar.gz 

メインの構成ファイルを開きます:

 nano /var/www/html/postfixadmin-3.3.11/config.inc.php 

次の値を編集します:

 $ CONF ['configured'] =true; $ CONF ['database_type'] ='mysqli'; $ CONF ['database_host'] ='localhost'; $ CONF ['database_user'] ='postfixadmin'; $ CONF ['database_password'] ='strong_password'; $ CONF ['database_name'] ='postfixadmin'; $ CONF ['domain_path'] ='NO'; $ CONF ['domain_in_mailbox'] ='YES'; 
>

次に、ファイルとフォルダーの所有権をApacheのユーザーとグループに割り当てる必要があります。これを行うには、コマンドは次のとおりです。

 chown -R apache:/var/www/html/postfixadmin-3.3.11 

データベースにデータを入力するには、https://Your_IP_Address/postfixadmin-3.0.2/setup.phpにアクセスすると、次のように表示されます。

データベース接続のテスト-OK-mysqli:// postfixadmin:xxxxx @ localhost/postfixadminすべてが正常に見えます...データベース構造を作成/更新しようとしています

新しい管理者ユーザーを作成します:

 bash /var/www/html/postfixadmin-3.3.11/scripts/postfixadmin-cli admin add admin@your_domain_idroot.us --password strong_password22 --password2 strong_password22 --superadmin 1 --active 1 
ステップ5.Postfixのインストールと設定。

次のコマンドでpostfixをインストールします:

 yum -y install postfix 

インストールが完了したら、構成ファイルを作成する必要があります:

 mkdir -p / etc / postfix / sql / 
 nano /etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias、alias_domain WHERE alias_domain.alias_domain ='%d' and alias.address =CONCAT('@'、alias_domain.target_domain)AND alias.active =1 AND alias_domain.active ='1' 
 nano /etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT maildir FROM メールボックス、alias_domain WHERE alias_domain.alias_domain ='%d'およびmailbox.username =CONCAT('%u'、'@'、alias_domain.target_domain)ANDメールボックス.active =1 AND alias_domain.active ='1' 
 nano /etc/postfix/sql/mysql_virtual_alias_domain_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias、alias_domain WHERE alias_domain.alias_domain ='%d' and alias.address =CONCAT('%u'、'@'、alias_domain.target_domain)AND alias .active =1 AND alias_domain.active ='1' 
 nano /etc/postfix/sql/mysql_virtual_alias_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias WHERE address ='%s' AND active ='1' #expansion_limit =100 
 nano /etc/postfix/sql/mysql_virtual_domains_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT domain FROM domain WHERE domain ='%s' AND active ='1' #query =SELECT domain FROM domain WHERE domain ='%s'#optional query to use whenバックアップのリレーMX#query =SELECT domain FROM domain WHERE domain ='%s' AND backupmx ='0' AND active ='1' #expansion_limit =100 
 nano /etc/postfix/sql/mysql_virtual_mailbox_limit_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT quote FROM namespace WHERE username ='%s' AND active ='1' 
 nano /etc/postfix/sql/mysql_virtual_mailbox_maps.cf 

次の値を編集します:

 user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT maildir FROM namespace WHERE username ='%s' AND active ='1' #expansion_limit =100 

次に、main.cfファイルを編集します:

 postconf -e "myhostname =$(hostname -f)" postconf -e "virtual_mailbox_domains =proxy:mysql:/etc/postfix/sql/mysql_virtual_domains_maps.cf" postconf -e "virtual_alias_maps =proxy:mysql:/ etc / postfix / sql / mysql_virtual_alias_maps.cf、proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf、proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf "postconf -e" virtual_mailbox_maps =proxy:mysql:/ etc /postfix/sql/mysql_virtual_mailbox_maps.cf、proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf "postconf -e" smtpd_tls_cert_file =/etc/pki/tls/certs/localhost.crt "postconf -e" smtpd_tls_key_file =/ etc / pki / tls / private / localhost.key "postconf -e" smtpd_use_tls =yes "postconf -e" smtpd_tls_auth_only =yes "postconf -e" smtpd_sasl_type =dovecot "postconf -e" smtpd_sasl_path =private / auth "postconf -e" smtpd_sasl_auth_enable =yes "postconf -e" smtpd_recipient_restrictions =permit_sasl_authenticated、permit_mynetworks、reject_unauth_destination "postcon f -e "mydestination =localhost" postconf -e "mynetworks =127.0.0.0/8" postconf -e "inet_protocols =ipv4" postconf -e "inet_interfaces =all" postconf -e "virtual_transport =lmtp:unix:private / dovecot- lmtp "

master.cfを開きます ファイルを作成し、submissioninetnセクションとsmtpsinetnセクションを見つけて、次のように編集します。

 nano /etc/postfix/master.cf 

次の値を編集します:

<前>提出のinet n - でのn - - smtpdの-o syslog_name =接尾/提出-o smtpd_tls_security_level =暗号-o smtpd_sasl_auth_enable =YES#-o smtpd_reject_unlisted_recipient =なし#-oはsmtpd_client_restrictions =$ mua_client_restrictions#-o smtpd_helo_restrictions =$ mua_helo_restrictions# - O smtpd_sender_restrictions =$ mua_sender_restrictions#-o smtpd_recipient_restrictions =-o smtpd_relay_restrictions =でpermit_sasl_authenticated、拒否-o milter_macro_daemon_name =ORIGINATINGsmtpsのinet n - でのn - - smtpdの-o syslog_name =postfixの/ SMTPS#-o smtpd_tls_wrappermode =yesの-o smtpd_sasl_auth_enable =YES#-o smtpd_reject_unlisted_recipient =no#-o smtpd_client_restrictions =$ mua_client_restrictions#-o smtpd_helo_restrictions =$ mua_helo_restrictions#-o smtpd_sender_restrictions =$ mua_sender_restrictions#-o smtpd_ ATING

最後に、postfixサービスを有効にします:

 systemctl enable postfixsystemctl restart postfix 

ステップ6.Dovecotのインストールと構成。

以下のコマンドを使用してdovecotをインストールします:

 yum install dovecot dovecot-mysql 

/ etc / dovecot / conf.d / 10-mail.confファイルを開きます:

 nano /etc/dovecot/conf.d/10-mail.conf 

次の値を変更します:

 mail_location =maildir:/ var / vmail /%d /%nmail_privileged_group =mailmail_uid =vmailmail_gid =mailfirst_valid_uid =150last_valid_uid =150 

/ etc / dovecot / conf.d / 10-auth.confファイルを開きます:

 nano /etc/dovecot/conf.d/10-auth.conf 

次の値を変更します:

 auth_mechanisms =plain login#!include auth-system.conf.ext!include auth-sql.conf.ext 

新しいdovecot-sql.conf.extファイルを作成します:

 nano /etc/dovecot/dovecot-sql.conf.ext 

次の値を編集します:

 driver =mysqlconnect =host =localhost dbname =postfixadmin user =postfixadmin password =strong_passworddefault_pass_scheme =MD5-CRYPTpassword_query =SELECT username as user、password、'/ var / vmail /%d /%n' as userdb_home、'maildir:/ var / vmail /%d /%n'as userdb_mail、150 as userdb_uid、8 as userdb_gid FROM namespace WHERE username ='%u'AND active ='1'user_query =SELECT'/ var / vmail /%d /%u' as home、'maildir:/ var / vmail /%d /%u' as mail、150 AS uid、8 AS gid、concat('dirsize:storage ='、quota)ASクォータFROMメールボックスWHEREユーザー名='%u' ANDアクティブ='1'

/ etc / dovecot / conf.d / 10-ssl.confファイルでSSLサポートを有効にします:

 ssl =yes 

/ etc / dovecot / conf.d / 15-lda.confファイルを開き、postmaster_addressメールアドレスを設定します:

 postmaster_address =postmaster@your_domain_name.com 

/ etc / dovecot / conf.d / 10-master.confファイルを開き、service lmtpセクションを見つけて、次のように変更します。

 service lmtp {unix_listener / var / spool / postfix / private / dovecot-lmtp {mode =0600 user =postfix group =postfix}} 

サービス認証セクションを見つけて、次のように変更します:

 service auth {unix_listener / var / spool / postfix / private / auth {mode =0666 user =postfix group =postfix} unix_listener auth-userdb {mode =0600 user =vmail #group =vmail} user =dovecot} 

service auth-workerセクションを次のように変更します:

 service auth-worker {user =vmail} 

次に、ファイルとフォルダーの所有権を割り当てる必要があります。これを行うには、コマンドは次のとおりです。

 chown -R vmail:dovecot / etc / dovecotchmod -R o-rwx / etc / dovecot 

最後に、dovecotサービスを有効にして再起動します:

 systemctl enable dovecot systemctl restart dovecot 

ステップ7.Spamassassinのインストールと設定。

以下のコマンドを使用してSpamAssassinをインストールします:

yum-yはspamassassinをインストールします

SpamAssassinシステムユーザーを作成します:

 groupadd spamduseradd -g spamd -s / bin / false -d / var / log / spamassassin spamdchown spamd:spamd / var / log / spamassassin 

次に、SpamAssassinを使用するようにPostfixを設定します:

 nano /etc/postfix/master.cf 

値の変更:

 smtp inet n-n--smtpd 

使用:

 smtp inet n-n-smtpd -o content_filter =spamassassin 

ファイルの最後に次の行を追加します:

 systemctl enable spamassassin systemctl restart spamassassin 

最後に、postfixサービスを再起動します:

 systemctl restart postfix 

ステップ8.PostfixAdminへのアクセス。

すべてが正しく設定されている場合は、http://Your_IP_Address/postfixadmin-3.0.2.2 最初の仮想ドメインとメールボックスを作成します。

おめでとうございます!PostfixAdminが正常にインストールされました。CentOS7システムにPostfixAdminを使用してメールサーバーをインストールするためにこのチュートリアルを使用していただきありがとうございます。追加のヘルプや役立つ情報については、PostfixAdminの公式Webサイトを確認することをお勧めします。


Cent OS
  1. CentOS6を使用して仮想サーバーにSpamAssassinをインストールする方法

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

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

  1. RHEL 8 /CentOS8にpostfixメールサーバーをインストールする方法

  2. CentOS7VPSにWebsiteBakerをインストールする方法

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

  1. CentOS8にMariaDBをインストールする方法

  2. CentOS 7 / RHEL 7にiRedMail(メールサーバー)をインストールする方法

  3. CentOS8にPostfixメールサーバーをインストールして設定する方法