Postfix は、Linux システム上で電子メールをルーティングまたは配信するために使用される無料のオープンソース MTA (メール転送エージェント) です。このガイドでは、CentOS 8 に Postfix をインストールして設定する方法を学習します。 ラボのセットアップ:
ステップ1) システムを更新する 最初のステップは、システム パッケージが最新であることを確認することです。これを行うには、次のようにシステムを更新します。 # dnf アップデート 続行する前に、他の MTA (Sendmail など) が存在しないことも確認してください。存在すると、Postfix 設定との競合が発生します。たとえば、Sendmail を削除するには、次のコマンドを実行します。 # dnf 送信メールを削除 ステップ2) ホスト名を設定し、/etc/hostsを更新する システムのホスト名を設定するには、以下の hostnamectl コマンドを使用します。 # ホスト名ctl ホスト名の設定 server1.crazytechgeek.info # bash を実行する さらに、/etc/hosts にシステムのホスト名と IP を追加する必要があります。 # vim /etc/hosts 192.168.1.13 サーバー1.crazytechgeek.info ファイルを保存して終了します。 ステップ3) Postfixメールサーバーをインストールする システム上で他の MTA が実行されていないことを確認した後、次のコマンドを実行して Postfix をインストールします。 # dnf postfixをインストール Postfix Centos8 のインストール ステップ4) Postfixサービスを起動して有効にする Postfix を正常にインストールしたら、次のコマンドを実行して Postfix サービスを開始し、有効にします。 # systemctl postfix を起動する # systemctl postfixを有効にする Postfix のステータスを確認するには、次の systemctl コマンドを実行します。 # systemctl ステータス postfix Postfix のステータスチェックを開始 Centos8 素晴らしい、Postfix が稼働していることが確認できました。次に、ローカル マシンからサーバーにメールを送信するように Postfix を設定します。 ステップ5) mailxメールクライアントをインストールする Postfix サーバーを設定する前に、mailx をインストールする必要があります。インストールするには、次のコマンドを実行します。 # dnf インストール mailx Mailx-CentOS8 のインストール ステップ6) Postfixメールサーバーを設定する Postfix 設定ファイルは /etc/postfix/main.cf にあります。設定ファイルにいくつか変更を加える必要があるので、お気に入りのテキスト エディターで開きます。 # vi /etc/postfix/main.cf 次の行を変更します。 ホスト名 = server1.crazytechgeek.info 私のドメイン = crazytechgeek.info myorigin = $mydomain ## コメントを解除し、inet_interfaces を all に設定します## inet_interfaces = すべて ## すべてに変更 ## inet_protocols = すべて ## 注記 ## #mydestination = $myhostname, localhost.$mydomain, localhost ## コメントを解除 ## mydestination = $myhostname、localhost.$mydomain、localhost、$mydomain ## コメントを解除して IP 範囲を追加します## マイネットワーク = 192.168.1.0/24, 127.0.0.0/8 ## コメントを解除 ## home_mailbox = メールディレクトリ/ 完了したら、設定ファイルを保存して終了します。変更を有効にするには、postfix サービスを再起動します。 # systemctl postfixを再起動します ステップ7) Postfixメールサーバーのテスト 設定が有効かどうかをテストするには、まずテスト ユーザーを作成します。 # ユーザー追加 postfixユーザー # パスワード postfixuser 次に、次のコマンドを実行して、ローカル ユーザー pkumar から別のユーザー postfixuser にメールを送信します。 # telnet ローカルホスト SMTP または # telnet localhost 25 Telnet サービスがインストールされていない場合は、次のコマンドを使用してインストールできます。 # dnf インストール telnet -y 前述のようにコマンドを実行すると、次のような出力が得られます。 [root@linuxtechi ~]# telnet ローカルホスト 25 127.0.0.1 を試行しています... ローカルホストに接続しました。 エスケープ文字は '^]' です。 220 server1.crazytechgeek.info ESMTP ポストフィックス 上記の結果から、Postfix メールサーバーとの接続が正常であることが確認されました。次に、次のコマンドを入力します。 #ehlo ローカルホスト 出力は次のようになります。
次に、mail from、rcpt to、data などオレンジ色で強調表示されているコマンドを実行し、最後に quit と入力します。 メール送信者:<pkumar> 250 2.1.0 OK rcpt to:<postfixuser> 250 2.1.5 大丈夫 データ 354 データは <CR><LF> で終了します。<CR><LF> こんにちは、私のメールサーバー(Postfix)へようこそ 。 250 2.0.0 Ok: B56BF1189BEC としてキューに追加されました やめる 221 2.0.0 さようなら 外部ホストによって接続が閉じられました 次のように telnet コマンドを実行して、ローカル ユーザー pkumar から別のローカル ユーザー postfixuser にメールを送信します。 Telnet でメールを送信する Centos8 すべてが計画通りに進んだ場合、新しいユーザーのホーム ディレクトリで送信済みメールを表示できるはずです。 # ls /home/postfixuser/Maildir/new 1573580091.Vfd02I20050b8M635437.server1.crazytechgeek.info # メールを読むには、次のように cat コマンドを使用します。 # cat /home/postfixuser/Maildir/new/1573580091.Vfd02I20050b8M635437.server1.crazytechgeek.info read-postfix-email-linux を読む Postfix メールサーバのログ Postfix メール サーバーのメール ログは、/var/log/maillog ファイルに保存されます。リアルタイム ログを表示するには、次のコマンドを使用します。 # テール -f /var/log/maillog postfix-メールログ-centos8 Postfix メールサーバーのセキュリティ保護 クライアントと Postfix サーバー間の通信を常に保護することをお勧めします。これは、信頼できる機関からの SSL 証明書または自己署名証明書を使用して実現できます。このチュートリアルでは、openssl コマンドを使用して Postfix の自己署名証明書を生成します。 openssl はすでにシステムにインストールされていると想定していますが、そうでない場合は次の dnf コマンドを使用します。 # dnf インストール openssl -y 以下の openssl コマンドを使用して、秘密鍵と CSR (証明書署名要求) を生成します。 # openssl req -nodes -newkey rsa:2048 -keyout mail.key -out mail.csr Postfix キー CSR CentOS8 次に、次の openssl コマンドを使用して自己署名証明書を生成します。 # openssl x509 -req -days 365 -in mail.csr -signkey mail.key -out mail.crt 署名OK 件名=C = IN、ST = ニューデリー、L = ニューデリー、O = IT、OU = IT、CN = server1.crazytechgeek.info、メールアドレス = root@linuxtechgeek 秘密鍵の取得 # 次に、秘密鍵と証明書ファイルを /etc/postfix ディレクトリにコピーします。 # cp mail.key mail.crt /etc/postfix Postfix 設定ファイル内の秘密鍵と証明書ファイルへのパスを更新します。 # vi /etc/postfix/main.cf ……… smtpd_use_tls = はい smtpd_tls_cert_file = /etc/postfix/mail.crt smtpd_tls_key_file = /etc/postfix/mail.key smtpd_tls_security_level = 5月 ……… 上記の変更を有効にするには、Postfix サービスを再起動します。 # systemctl postfixを再起動します mailx クライアントを使用して、内部のローカル ドメインと外部ドメインにメールを送信してみます。 pkumar から postfixuser に内部ローカル メールを送信するには: # echo "テストメール" | mailx -s "Postfix メールサーバからのテストメール" -r root@linuxtechi root@linuxtechi メールを確認して読むには、次のコマンドを使用します。 # cd /home/postfixuser/Maildir/new/ #ll 合計 8 -rw------。 1 postfixuser postfixuser 476 11月12日 17:34 1573580091.Vfd02I20050b8M635437.server1.crazytechgeek.info -rw------。 1 postfixuser postfixuser 612 11月13日 02:40 1573612845.Vfd02I20050bbM466643.server1.crazytechgeek.info # 猫 1573612845.Vfd02I20050bbM466643.server1.crazytechgeek.info Postfix ユーザーのメールを読み取り CentOS8 postfixuser から外部ドメイン ([email protected]) にメールを送信するには: # echo "外部テストメール" | mailx -s "Postfix メールサーバー" -r root@linuxtechi root@linuxtechi 注意: IP がどこにもブラックリストに登録されていない場合、外部ドメインへのメールは配信されます。そうでない場合は、spamhaus などのデータベースによって IP がブラックリストに登録されているというメッセージとともにメールが返送されます。 Postfixメールキューを確認する キュー内のメールを一覧表示するには、mailq コマンドを使用します。 # メールq メールキューは空です # 仕上げる! Postfix の設定が機能しています。今のところはこれですべてです。このチュートリアルが参考になり、ローカル Postfix サーバーを簡単にセットアップできるようになることを願っています。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: MySQLにおけるACIDトランザクションの実装原理の詳細な説明
Linux のファイル権限まず、現在のディレクトリ内のファイルの内容を確認しましょう。 ls -l ...
<本文> <div id="ルート"> <フォー...
定義と使用法display プロパティは、要素が生成するボックスのタイプを指定します。例示するこの属...
1. 一般的に、CentOS では mariadb がデフォルトでインストールされているため、まず ...
GTIDベースのレプリケーション導入GTID ベースのレプリケーションは、MySQL 5.6 以降に...
mysql 5.6.35 winx64無料インストールバージョン構成チュートリアルwin10、具体的...
多くの人が、ウェブサイト上のテキストはデザインする必要があるのかと疑問に思うかもしれません。多く...
1. dockerでtomcat8をインストールする1. Docker HubでTomcatイメージ...
1.Jenkinsのインストール手順: https://www.jb51.net/article/1...
Ⅰ. 問題の説明: CSS を使用して画像の 3D 凸凹効果を実現します。 Ⅱ実施手順は以下のとお...
序文一般的なビジネス シナリオでは、検索ボックスへの入力が完了した後、検索データを取得するために関連...
また、Dockerを使用してDjangoプロジェクトをデプロイするのも非常に簡単です。とても良いです...
目次1. v-text (v-instruction name = "variable&q...
スタートアップ企業は、型破りな仕事のやり方、ユニークなビジネスモデル、特徴的な製品やサービス、パーソ...
目次1 違い1.1 スペース占有1.2 表現範囲1.3 タイムゾーン2 テスト3つの選択肢MySQL...