From ce5003d151d33458171050802f366167e5dd9d41 Mon Sep 17 00:00:00 2001 From: vincent Date: Sun, 14 Apr 2019 11:45:39 +0200 Subject: [PATCH] role ssmtp --- roles/ssmtp/defaults/main.yml | 5 +++++ roles/ssmtp/tasks/main.yml | 35 +++++++++++++++++++++++++++++ roles/ssmtp/templates/revaliases.j2 | 3 +++ roles/ssmtp/templates/ssmtp_conf.j2 | 12 ++++++++++ 4 files changed, 55 insertions(+) create mode 100644 roles/ssmtp/templates/revaliases.j2 create mode 100644 roles/ssmtp/templates/ssmtp_conf.j2 diff --git a/roles/ssmtp/defaults/main.yml b/roles/ssmtp/defaults/main.yml index e69de29..d29b8e9 100644 --- a/roles/ssmtp/defaults/main.yml +++ b/roles/ssmtp/defaults/main.yml @@ -0,0 +1,5 @@ +notification_mail: vincent@ducamps.win +ssmtp_mailhub: smtp.ducamps.win:587 +ssmtp_hostname: ducamps.win +ssmtp_auth_user: vincent@ducamps.win +ssmtp_auth_pass: the_mandrill_api_key \ No newline at end of file diff --git a/roles/ssmtp/tasks/main.yml b/roles/ssmtp/tasks/main.yml index e69de29..3968237 100644 --- a/roles/ssmtp/tasks/main.yml +++ b/roles/ssmtp/tasks/main.yml @@ -0,0 +1,35 @@ + +- name: Install SSMTP + aur: name=ssmtp skip_installed=yes + become_user: aur_builder + + +- name: Set up ssmtp.conf + template: + src: ssmtp_conf.j2 + dest: /etc/ssmtp/ssmtp.conf + owner: root + group: mail + mode: 0640 + become: yes + +- name: Set up revaliases + template: + src: revaliases.j2 + dest: /etc/ssmtp/revaliases + owner: root + group: mail + mode: 0640 + become: yes + +- name: set right on /usr/sbin/ssmtp + file: + path: /usr/sbin/ssmtp # required. Path to the file being managed. + group: mail # not required. Name of the group that should own the file/directory, as would be fed to I(chown). + mode: 2711 # not required. Mode the file or directory should be. For those used to I(/usr/bin/chmod) remember that modes are actually octal numbers. You must either add a leading zero so that Ansible's YAML parser knows it is an octal number (like C(0644) or C(01777)) or quote it (like C('644') or C('1777')) so Ansible receives a string and can do its own conversion from string into number. Giving Ansible a number without following one of these rules will end up with a decimal number which will have unexpected results. As of version 1.8, the mode may be specified as a symbolic mode (for example, C(u+rwx) or C(u=rw,g=r,o=r)). + owner: root # not required. Name of the user that should own the file/directory, as would be fed to I(chown). + become: yes + +#sudo chown root:mail /usr/sbin/ssmtp /etc/ssmtp{,/{ssmtp.conf,revaliases}} +#sudo chmod 2711 /usr/sbin/ssmtp +#sudo chmod o-rwx /etc/ssmtp /etc/ssmtp/ssmtp.conf; \ No newline at end of file diff --git a/roles/ssmtp/templates/revaliases.j2 b/roles/ssmtp/templates/revaliases.j2 new file mode 100644 index 0000000..d2dac30 --- /dev/null +++ b/roles/ssmtp/templates/revaliases.j2 @@ -0,0 +1,3 @@ + +root:{{ notification_mail }}:{{ ssmtp_mailhub }} +{{ user.name }}:{{ notification_mail }}:{{ ssmtp_mailhub }} \ No newline at end of file diff --git a/roles/ssmtp/templates/ssmtp_conf.j2 b/roles/ssmtp/templates/ssmtp_conf.j2 new file mode 100644 index 0000000..e04b29d --- /dev/null +++ b/roles/ssmtp/templates/ssmtp_conf.j2 @@ -0,0 +1,12 @@ + +# ---- basic config +root={{notification_mail}} +AuthMethod=LOGIN +UseSTARTTLS=Yes +UseTLS=NO +hostname={{ssmtp_hostname}} +FromLineOverride=Yes + +AuthUser={{ ssmtp_auth_user }} +mailhub={{ ssmtp_mailhub }} +AuthPass={{ ssmtp_auth_pass }}