多くの人が毎日Gmailを使ってメールを送受信しています。 2020年の世界の推定ユーザー数は18億人でした。 Gmailはポート番号587を介してSMTPプロトコルで動作します。この記事では、SMTPウェブサーバーを構成し、Ansibleからansible-vault
を使用してメールを自動的に送信する方法を示します。 パスワードを保護するため。
パスワードファイルを暗号化する
ansible-vault
コマンドは、機密情報を保存できる暗号化されたファイルを作成します。
ansible-vault create secret.yml
[次のこともお勧めします:メールサーバーを構成するためのシステム管理者ガイド]
Gmailの設定
デフォルトでは、Gmailは安全性の低いアプリアクセスを許可していません 彼らのウェブサーバーに。このための解決策があります。設定を変更して、安全性の低いアプリアクセスを有効にすることができます。 。
Googleアカウントに移動します:
セキュリティをクリックします 下にスクロールします:
安全性の低いアプリへのアクセスをクリックします そしてそれを許可します:
メールプレイブック
localhostを構成します ポート587を介してSMTPプロトコルで動作しているWebサーバーとして。ユーザー名 、パスワード、 およびから フィールドはAnsibleモジュールです。 件名 および本体 主題と本文のコンテンツを提供できるモジュールです。以下はemail.yml
です。 ファイル。
---
- hosts: localhost
vars_files: secret.yml
tasks:
- name: Sending an email using Ansible
mail:
host: smtp.gmail.com
port: 587
username: [email protected]
password: "{{ p }}"
to: [email protected]
subject: Email By Ansible
body: Test successful
delegate_to: localhost
プレイブックを実行する
以下のコマンドでプレイブックを実行します。 –ask-vault-pass
を使用します このキーワードでプレイブックを実行しているときにフラグを立てるAnsibleはボールトのパスワードを尋ねてプレイブックを実行します。
ansible-playbook –ask-vault-pass email.yml
メールは正常に送信されます:
[Red Hatの無料ガイド:ビジネスを自動化するための5つのステップ。 ]
まとめ
これらの手順は、Ansibleからメールメッセージを送信するようにGmailを設定する方法を示しています。さらに、AnsibleVaultでパスワードを保護できます。