Changes...

This commit is contained in:
andryyy
2016-12-11 14:13:17 +01:00
parent 1be1b059f7
commit e3f0058f4f
24 changed files with 836 additions and 57 deletions

View File

@@ -1,14 +1,10 @@
From ubuntu:xenial
MAINTAINER Andre Peters <andre.peters@servercow.de>
# Set noninteractive mode for apt-get
ENV DEBIAN_FRONTEND noninteractive
# Update
RUN apt-get update
# Start editing
# Install package here for cache
RUN apt-get -y install dovecot-common dovecot-core dovecot-imapd dovecot-lmtpd dovecot-managesieved dovecot-sieve dovecot-mysql dovecot-pop3d
RUN groupadd -g 5000 vmail
@@ -16,5 +12,4 @@ RUN useradd -g vmail -u 5000 vmail -d /var/vmail
EXPOSE 24 10001
# Run
CMD ["/usr/sbin/dovecot", "-F"]

View File

@@ -1,14 +1,10 @@
From ubuntu:xenial
MAINTAINER Andre Peters <andre.peters@servercow.de>
# Set noninteractive mode for apt-get
ENV DEBIAN_FRONTEND noninteractive
# Update
RUN apt-get update
# Start editing
# Install package here for cache
RUN apt-get -y install supervisor \
postfix \
sasl2-bin \
@@ -26,5 +22,4 @@ RUN useradd -g vmail -u 5000 vmail -d /var/vmail
EXPOSE 588
# Run
CMD /usr/bin/supervisord -c /etc/supervisor/supervisord.conf

View File

@@ -1,6 +1,8 @@
FROM debian:jessie
MAINTAINER Andre Peters <andre.peters@servercow.de>
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update \
&& apt-get install -y wget \
&& wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add - \

View File

@@ -1,6 +1,8 @@
FROM debian:jessie
MAINTAINER Andre Peters <andre.peters@debinux.de>
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update \
&& apt-get install -y wget \
&& wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add - \

View File

@@ -1,6 +1,8 @@
FROM debian:jessie
MAINTAINER Andre Peters <andre.peters@debinux.de>
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update \
&& apt-get -y --force-yes install apt-transport-https \
&& apt-key adv --keyserver keys.gnupg.net --recv-key 0x810273C4 \

View File

@@ -11,3 +11,4 @@ default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
#sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

View File

@@ -24,7 +24,7 @@ while ($row = array_shift($rows)) {
$username_sane = preg_replace("/[^a-zA-Z0-9]+/", "", $row['object']);
?>
score_<?=$username_sane;?> {
priority = low;
priority = low;
<?php
$stmt = $pdo->prepare("SELECT `option`, `value` FROM `filterconf`
WHERE (`option` = 'highspamlevel' OR `option` = 'lowspamlevel')
@@ -39,15 +39,15 @@ while ($row = array_shift($rows)) {
$grouped_lists = $stmt->fetchAll(PDO::FETCH_COLUMN);
$value_sane = preg_replace("/\.\./", ".", (preg_replace("/\*/", ".*", $grouped_lists[0])));
?>
from = "/^((?!<?=$value_sane;?>).)*$/";
rcpt = "<?=$row['object'];?>";
from = "/^((?!<?=$value_sane;?>).)*$/";
rcpt = "<?=$row['object'];?>";
<?php
$stmt = $pdo->prepare("SELECT `address` FROM `alias` WHERE `goto` = :object_goto AND `address` NOT LIKE '@%' AND `address` != :object_address");
$stmt->execute(array(':object_goto' => $row['object'], ':object_address' => $row['object']));
$rows_aliases_1 = $stmt->fetchAll(PDO::FETCH_ASSOC);
while ($row_aliases_1 = array_shift($rows_aliases_1)) {
?>
rcpt = "<?=$row_aliases_1['address'];?>";
rcpt = "<?=$row_aliases_1['address'];?>";
<?php
}
$stmt = $pdo->prepare("SELECT CONCAT(`local_part`, '@', `alias_domain`.`alias_domain`) AS `aliases` FROM `mailbox`
@@ -57,20 +57,22 @@ while ($row = array_shift($rows)) {
$rows_aliases_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
while ($row_aliases_2 = array_shift($rows_aliases_2)) {
?>
rcpt = "<?=$row_aliases_2['aliases'];?>";
rcpt = "<?=$row_aliases_2['aliases'];?>";
<?php
}
?>
apply "default" {
actions {
reject = <?=$spamscore['highspamlevel'][0];?>;
greylist = <?=$spamscore['lowspamlevel'][0] - 1;?>;
"add header" = <?=$spamscore['lowspamlevel'][0];?>;
apply "default" {
actions {
reject = <?=$spamscore['highspamlevel'][0];?>;
greylist = <?=$spamscore['lowspamlevel'][0] - 1;?>;
"add header" = <?=$spamscore['lowspamlevel'][0];?>;
}
}
}
<?php
}
?>
}
<?php
/*
// Start whitelist
*/

View File

@@ -6,7 +6,7 @@ classifier "bayes" {
backend = "redis";
servers = "redis:6379";
min_tokens = 11;
min_learns = 200;
min_learns = 20;
autolearn = true;
per_user = <<EOD

View File

@@ -184,6 +184,13 @@ if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'user
'msg' => 'MySQL: '.$e
);
}
if (count($rows) == 0):
?>
<div class="row">
<div class="col-sm-12"><i><?=$lang['user']['spamfilter_table_empty'];?></i></div>
</div>
<?php
endif;
while ($whitelistRow = array_shift($rows)):
?>
<div class="row striped">