some build stuff

This commit is contained in:
2018-05-02 13:46:39 +02:00
parent 17d1d5e3d7
commit 958e97a666
14 changed files with 162 additions and 0 deletions

View File

@ -0,0 +1,45 @@
define(`TITLE', `Children Protection for Postfix-based EMail-Server')
define(`CONTENT', `
This small tool implements a whitelist on a Postfix mail-server. It prevents certain recipient addresses (your kids ones) from receiving mail from any not whitelisted address. Any mail from not whitelisted senders is redirected to a delegate (a parent).
Code is here <a href="http://files.a385e-5.de/files/ChildProt-0.9.tar.gz">http://files.a385e-5.de/files/ChildProt-0.9.tar.gz</a>
Configure it by adding this line into the <em>master.cf</em> of the Postfix installation:
<pre>childprot unix  -       n       n       -       25      spawn user=mail argv=/opt/sbin/ChildProt</pre>
and this to the <em>main.cf</em>:
<pre class="brush: text; gutter: false">smtpd_recipient_restrictions =
  [...]
  check_policy_service unix:private/childprot
  [...]</pre>
The restricted recipients and the whitelists are stored in an SQLite3 database:
<pre class="brush: sql; gutter: false">CREATE TABLE child_address_t (
child INTEGER REFERENCES child_t(id),
address TEXT
);
CREATE TABLE child_t (
id INTEGER PRIMARY KEY,
name TEXT,
delegate TEXT
);
CREATE TABLE whitelist_t (
child INTEGER REFERENCES child_t(id),
address TEXT
);
CREATE VIEW child_v AS
SELECT c.id as id,
c.delegate as delegate,
ca.address as address
FROM child_t c,
child_address_t ca
WHERE c.id = ca.child;</pre>
Restricted persons together with their delegates are added to the table <em>child_t</em>, multiple addresses can be assigned to those persons in <em>child_address_t</em>. Whitelists per person are maintained in <em>whitelist_t</em>.
The tool is querying the view <em>child_v</em>.
&nbsp;
&nbsp;
')