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

Gmailをメールリレーとして使用するようにPostfixを設定する

Gmailアカウントをお持ちの場合は、Gmailを介して送信メールを中継するようにMTAを設定できます。これにより、Gmailの信頼性と堅牢なインフラストラクチャのメリットが得られ、コマンドラインからメールを送信する簡単な手段が提供されます。

このチュートリアルでは、MTAとしてPostfixを使用します。 Postfixは、無料のオープンソースで、積極的に保守され、安全性の高いメール転送エージェントです。

各ステップで、次のオペレーティングシステムに固有の手順について説明します。

  • Debian 9
  • Ubuntu 18.04 LTS
  • CentOS 7
  • OpenSUSE Leap 15.0
  • Arch Linux 2019.03.01
  • FreeBSD 12.0

mailutilsもインストールします / mailx テストメールを送信できるようにします。必要に応じて、補足のSASLライブラリをインストールします。

で始まるすべてのコマンド ルート権限が必要です。

1。必要なソフトウェアをインストールする

Debian、Ubuntu:

apt-get update && apt-get install postfix mailutils

「一般的なタイプのメール構成」の入力を求められたら、インターネットサイトを選択します。 。

「メール名」の入力を求められたら、メールの送信元としてメールヘッダーで使用するホスト名を選択します。完全修飾ドメイン名が推奨されますが、マシンの単純なホスト名を使用しても問題ありません。ここに入力する内容に関係なく、差出人住所は受信者にGmailアドレスとして表示されます。

「ルートおよびポストマスターのメール受信者」を設定するように求められる場合があります。 rootと入力します 、またはメールサブシステム通知を受信する必要がある別のユーザー。

その他のプロンプトについては、デフォルト値を選択できます。

Fedora:

dnf update && dnf install postfix mailx

CentOS:

yum update && yum install postfix mailx cyrus-sasl cyrus-sasl-plain

OpenSUSE:

zypper update && zypper install postfix mailx cyrus-sasl

Arch Linux:

pacman -Sy postfix mailutils

FreeBSD:

ポートコレクションからPostfixをコンパイルして、SASLのサポートを組み込みます。

portsnap fetch extract update
cd /usr/ports/mail/postfix
make config

構成ダイアログで、SASLサポートを選択します 。他のすべてのオプションは同じままにすることができます。次に:

make install clean

Mailxはバイナリパッケージからインストールできます:

pkg install mailx

2。 Gmail認証を設定する

Gmailで認証を確立するためにPostfixが使用するパスワードファイルを作成または変更します。以下の認証情報で、ユーザー名を置き換えます Gmailのユーザー名とパスワードを使用 Gmailのパスワードを使用します。カスタムGmailアプリのドメイン名を使用している場合は、 gmail.comを置き換えることができます GoogleAppsドメインを使用します。

パスワードファイルはPostfix設定ディレクトリにあります。ファイルには任意の名前を付けることができますが、推奨されるファイル名は sasl_passwdです。 。

Debian、Ubuntu、Fedora、CentOS、OpenSUSE、Arch Linux:

Postfix設定ファイルはディレクトリ/etc / postfixにあります 。パスワードファイルを作成または編集します:

nano /etc/postfix/sasl_passwd

次の行を追加します:

[smtp.gmail.com]:587    [email protected]:password

ファイルを保存して閉じます。 Gmailのパスワードはプレーンテキストで保存されるため、rootのみがファイルにアクセスできるようにします。

chmod 600 /etc/postfix/sasl_passwd

FreeBSD:

Postfix設定ファイルはディレクトリ/usr / local / etc / postfixにあります 。パスワードファイルを作成または編集します:

nano /usr/local/etc/postfix/sasl_passwd

次の行を追加します:

[smtp.gmail.com]:587    [email protected]:password

ファイルを保存して閉じます。ルートからのみアクセスできるようにする:

chmod 600 /usr/local/etc/postfix/sasl_passwd

3。 Postfixを設定する

Postfix設定ファイルma​​in.cfで設定する必要のある6つのパラメータがあります 。パラメータは次のとおりです。

リレーホスト 、メールリレーのホストとポート番号を指定します。ホスト名は角かっこで囲まれ、MXルックアップが不要であることを指定します。

smtp_use_tls 、トランスポート層のセキュリティを有効(または無効)にします。

smtp_sasl_auth_enable 、SASL認証を有効(または無効)にします。

smtp_sasl_security_options 、次の構成では空に設定され、Gmailと互換性のないセキュリティオプションが使用されないようにします。

smtp_sasl_password_maps 、使用するパスワードファイルを指定します。このファイルは、 postmapによってコンパイルおよびハッシュされます。 後のステップで。

smtp_tls_CAfile 、サーバーIDを検証するときに使用する認証局のリストを指定します。

Debian、Ubuntu、Arch Linux:

メインのPostfix設定ファイルを編集します:

nano /etc/postfix/main.cf

次の値を追加または変更します。

relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

ファイルを保存して閉じます。

Fedora、CentOS:

メインのPostfix設定ファイルを編集します:

nano /etc/postfix/main.cf

次の値を追加または変更します。

relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt

ファイルを保存して閉じます。

OpenSUSE:

メインのPostfix設定ファイルを編集します:

nano /etc/postfix/main.cf

次の値を追加または変更します。

relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/ca-bundle.pem

ファイルを保存して閉じます。

OpenSUSEでは、Postfixマスタープロセス設定ファイル master.cfも必要です。 変更されます。編集のために開きます:

nano /etc/postfix/master.cf

次の行を見つけます:

#tlsmgr unix - - n 1000? 1 tlsmg

コメントを外すと、次のようになります。

tlsmgr unix - - n 1000? 1 tlsmg

ファイルを保存して閉じます。

FreeBSD:

メインのPostfix設定ファイルを編集します:

nano /usr/local/etc/postfix/main.cf

次の値を追加または変更します。

relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/mail/certs/cacert.pem

ファイルを保存して閉じます。

4。パスワードファイルの処理

ポストマップを使用する sasl_passwdのコンテンツをコンパイルしてハッシュします 。結果は、Postfix設定ディレクトリのファイル sasl_passwd.dbに保存されます。 。

Debian、Ubuntu、Fedora、CentOS、OpenSUSE、Arch Linux:

postmap /etc/postfix/sasl_passwd

FreeBSD:

postmap /usr/local/etc/postfix/sasl_passwd

5。 Postfixを再起動

Postfixサービスを再起動して、変更を有効にします。

Debian、Ubuntu、Fedora、CentOS、OpenSUSE、Arch Linux:

systemctl restart postfix.service

FreeBSD:

このセッションでのみPostfixサービスを開始するには:

service postfix onestart

システムの初期化時にPostfixを自動的に起動するには、 /etc/rc.confを開きます 編集用:

nano /etc/rc.conf

次の行を追加します:

postfix_enable=YES

ファイルを保存して閉じます。その後、次を実行できます:

service postfix start

Postfixを開始するには。

6。 Gmailで「安全性の低いアプリ」を有効にする

デフォルトでは、Gmailアカウントでは、ウェブ上のGmailへのログインなど、最も安全なログインのみが許可されています。リレーリクエストを許可するには、Gmailアカウントにログインして、安全性の低いアプリを許可するをオンにします。 。

詳細については、Googleサポートドキュメント「安全性の低いアプリにアカウントへのアクセスを許可する」を確認してください。

7。テストメールを送信する

メールを使用してメールを送信して、新しい構成をテストします 指図。実行:

mail -s "Test subject" [email protected]

空白行(または CC:)が表示されます フィールド。Enterキーを押すとバイパスできます)。メッセージの本文を入力し、Enterキーを押して新しい行を表示します。メールの作成が終了したら、 CTRL-Dと入力します それを送信します。メールをキャンセルするには、 CTRL-Cを押します 2回。

合成済みの電子メールを送信するには、次のコマンドを使用します:

mail -s "Subject Here" [email protected] < textfile

テキストファイル 送信するテキストを含むファイルの名前です。

トラブルシューティング

動作しない場合は、ログでPostfixエラーを確認してください:

Debian:

less /var/log/mail.log

Ubuntu、Fedora、CentOS、OpenSUSE、Arch Linux:

journalctl

FreeBSD:

less /var/log/maillog

Gmailから認証エラーを受け取った場合は、安全性の低いアプリを許可することを確認してください 手順6で指定したように、Gmailアカウント設定でオンになっています。

パスワードファイルsasl_passwdを確認します 手順2で指定したように、存在し、その内容が正しくフォーマットされていること。パスワードファイルに変更を加えた場合は、手順4と5を繰り返して新しいパスワードファイルをハッシュし、Postfixを再起動してください。

TLSエラーが表示された場合は、 main.cfの構成を再確認してください。 手順3で指定されているように。設定を変更した場合は、手順5で指定されているようにPostfixを再起動します。


Linux
  1. Postfixをインストールして設定する方法

  2. Postfixを使用してSMTP認証を使用してメールを配信する

  3. Ubuntu20.04にPostfixをインストールして設定する方法

  1. Office365 への Postfix リレー

  2. Postfix を使用して Google アカウント経由でメールを中継する方法

  3. root のメールを転送するための postfix を取得する

  1. 20ポストフィックスインタビューの質問と回答

  2. 2つのWanからのメールを受け入れるようにPostfixを設定しますか?

  3. メールリレーを設定する