Skip to content

Commit ab0f67b

Browse files
committedApr 21, 2024·
Update to openSUSE 15.5
1 parent aa9a31b commit ab0f67b

File tree

12 files changed

+38
-415
lines changed

12 files changed

+38
-415
lines changed
 

‎.github/workflows/run-tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: Run tests against latest openSUSE Leap 15.4
2+
name: Run tests against latest openSUSE Leap 15.5
33

44
on:
55
push:

‎README.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
# Ansible role for an all-in-one mail server based on opensSUSE Leap 15.4
1+
# Ansible role for an all-in-one mail server based on openSUSE Leap 15.5
22

3-
[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/chkpnt/chkpnt-mailserver/Run%20tests%20against%20latest%20openSUSE%20Leap%2015.4?label=Tests%20against%20latest%20openSUSE%20Leap%2015.4)](https://github.com/chkpnt/chkpnt-mailserver/actions/workflows/run-tests.yml)
3+
[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/chkpnt/chkpnt-mailserver/Run%20tests%20against%20latest%20openSUSE%20Leap%2015.5?label=Tests%20against%20latest%20openSUSE%20Leap%2015.5)](https://github.com/chkpnt/chkpnt-mailserver/actions/workflows/run-tests.yml)
44
[![Ansible Role](https://img.shields.io/ansible/role/d/39777?label=Ansible%20Galaxy%20downloads&style=flat-square)](https://galaxy.ansible.com/chkpnt/mailserver)
55

66
The purpose of this Ansible role is to fulfill my demands on my own mail server:
77

8-
- [x] Supports openSUSE Leap 15.4
8+
- [x] Supports openSUSE Leap 15.5
99
- [x] Orchestration of Postfix (MTA), Dovecot (MDA) and Rspamd
1010
- [x] Postfix uses Dovecot for authentication (SMTP AUTH through Dovecot SASL)
1111
- [x] No databases for configuration, just plain files
@@ -27,7 +27,8 @@ The purpose of this Ansible role is to fulfill my demands on my own mail server:
2727
- [x] Ham can be learnt by applying the NonJunk flag, which is used by Thunderbird
2828
- [x] Ham can be learnt by marking the mail with a green flag in the iOS Mail App
2929
- Antivirus
30-
- [x] Integration of ClamAV
30+
- [x] Integration of [ClamAV](https://www.clamav.net/)
31+
- [x] Integration of [Fangfrisch](https://rseichter.github.io/fangfrisch/)
3132
- [ ] Integration of VirusTotal.com
3233
- [x] Infected mails are rejected
3334
- [x] Nice reports (rspamd WebUI is sufficient for me)
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Ansible managed
22
clamav {
33
action = "reject";
4-
servers = "/var/run/clamav/clamd-socket";
4+
servers = "/var/run/clamav/clamd.sock";
55
}

‎meta/main.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22
galaxy_info:
33
role_name: mailserver
44
namespace: chkpnt
5-
description: Ansible role for an all-in-one mail server based on openSUSE Leap 15.4
5+
description: Ansible role for an all-in-one mail server based on openSUSE Leap 15.5
66
author: Gregor Dschung
77
license: Apache
88
min_ansible_version: "9.0"
99
platforms:
1010
- name: opensuse
1111
versions:
12-
- "15.4"
12+
- "15.5"
1313
galaxy_tags:
1414
- mailserver
1515
- mail

‎tasks/install.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
---
2-
# provides rspamd and clamav-unofficial-sigs
2+
# provides rspamd and fangfrisch
33
- name: Install repository home:chkpnt:mailserver
44
community.general.zypper_repository:
55
name: home_chkpnt_mailserver
6-
repo: https://download.opensuse.org/repositories/home:/chkpnt:/mailserver/15.4/
6+
repo: https://download.opensuse.org/repositories/home:/chkpnt:/mailserver/15.5/
77
state: present
88
auto_import_keys: true
99

@@ -20,6 +20,6 @@
2020
- redis
2121
- unbound # using a local resolver is highly recommended for RBLs
2222
- clamav
23-
- clamav-unofficial-sigs
23+
- python311-fangfrisch
2424
- acl
2525
state: present

‎tasks/setup-rspamd.yml

+19-8
Original file line numberDiff line numberDiff line change
@@ -140,17 +140,18 @@
140140
enabled: true
141141
state: started
142142

143-
- name: Enable clamav-unofficial-sigs
144-
ansible.builtin.lineinfile:
145-
path: /etc/clamav-unofficial-sigs/user.conf
146-
regexp: "#user_configuration_complete="
147-
line: user_configuration_complete="yes"
148-
149143
# clamd won't start if /var/lib/clamav doesn't contain the daily and main databases,
150144
# therefore freshclam needs to be executed once.
151-
- name: Execute freshclam
145+
- name: Enable freshclam.timer and make sure it is executed once.
146+
ansible.builtin.systemd:
147+
name: freshclam.timer
148+
enabled: true
149+
state: started
150+
151+
- name: Enable fangfrisch.timer (unofficial signatures) and make sure it is executed once.
152152
ansible.builtin.systemd:
153-
name: freshclam
153+
name: fangfrisch.timer
154+
enabled: true
154155
state: started
155156

156157
- name: Adding a whiteliste database for clamd
@@ -162,6 +163,16 @@
162163
group: vscan
163164
mode: "0644"
164165

166+
- name: Wait for /var/lib/clamav/daily.cvd to be available
167+
ansible.builtin.wait_for:
168+
path: /var/lib/clamav/daily.cvd
169+
state: present
170+
171+
- name: Wait for /var/lib/clamav/main.cvd to be available
172+
ansible.builtin.wait_for:
173+
path: /var/lib/clamav/main.cvd
174+
state: present
175+
165176
- name: Enable clamd and make sure it is running
166177
ansible.builtin.systemd:
167178
name: clamd

‎templates/etc/amavisd.conf.j2

-388
This file was deleted.

‎tests/Vagrantfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ Vagrant.require_version ">= 2.2.6"
66

77
Vagrant.configure("2") do |config|
88

9-
config.vm.box = "Leap-15.4.x86_64"
10-
config.vm.box_url = "https://download.opensuse.org/repositories/Virtualization:/Appliances:/Images:/openSUSE-Leap-15.4/images/boxes/Leap-15.4.x86_64.json"
9+
config.vm.box = "Leap-15.5.x86_64"
10+
config.vm.box_url = "https://download.opensuse.org/repositories/Virtualization:/Appliances:/Images:/openSUSE-Leap-15.5/images/boxes/Leap-15.5.x86_64.json"
1111

1212
config.vm.synced_folder '.', '/vagrant', disabled: true
1313
config.vm.boot_timeout = 600

‎tests/manual/Vagrantfile

+3-4
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@
33

44
Vagrant.configure("2") do |config|
55

6-
hostname = "leap15"
6+
hostname = "leap-15.5"
77

88
# Box
9-
#config.vm.box = "bento/opensuse-leap-42.3"
10-
#config.vm.box = "opensuse/openSUSE-42.3-x86_64"
11-
config.vm.box = "opensuse/openSUSE-15.0-x86_64"
9+
config.vm.box = "Leap-15.5.x86_64"
10+
config.vm.box_url = "https://download.opensuse.org/repositories/Virtualization:/Appliances:/Images:/openSUSE-Leap-15.5/images/boxes/Leap-15.5.x86_64.json"
1211

1312
config.vm.provision :ansible do |ansible|
1413
ansible.force_remote_user = true

‎tests/testfixtures/roles/common/tasks/main.yml

+1
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,5 @@
99
- man
1010
- telnet
1111
refresh: true
12+
extra_args_precommand: --gpg-auto-import-keys
1213
state: present

‎tests/tests/configuration/RspamdTest.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@
9292
{
9393
"clamav": {
9494
"action": "reject",
95-
"servers": "/var/run/clamav/clamd-socket"
95+
"servers": "/var/run/clamav/clamd.sock"
9696
}
9797
}
9898

‎tests/tests/incoming/SieveCanDeliverToFolderTest.yml

-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
- name: Get path of mail in maildir
3434
become: true
3535
become_user: vmail
36-
3736
block:
3837
- ansible.builtin.wait_for:
3938
path: /srv/mail/jane/Maildir/.Spam/new/

0 commit comments

Comments
 (0)
Please sign in to comment.