Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
centos:mail_c7:dovecot_8 [07.08.2014 21:38. ] – [Post Konfiguration] djangocentos:mail_c7:dovecot_8 [22.07.2019 15:04. ] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 788: Zeile 788:
  
 Zum Testen, ob unser SQL-Statement das gewünschte Ergebnis liefert, verbinden wir uns von unserem Dovecot-Host aus mit unserer Datenbank. Zum Testen, ob unser SQL-Statement das gewünschte Ergebnis liefert, verbinden wir uns von unserem Dovecot-Host aus mit unserer Datenbank.
-Die Eingaben am Client sind in der Farbe <html><font style="color: rgb(0, 0, 255)">blau</font></html> und die Rückmeldungen des MySQL-Servers in der Farbe <html><font style="color: rgb(02550)">grün</font></html> gekennzeichnet. +Die Eingaben am Client sind in der Farbe <html><font style="color: rgb(0, 0, 255)"><b>blau</b></font></html> und die Rückmeldungen des MySQL-Servers in der Farbe <html><font style="color: rgb(666666)"><b>hellgrau</b></font></html> gekennzeichnet. 
  
 <html><pre class="code"> <html><pre class="code">
 <font style="color: rgb(0, 0, 0)">$ </font><font style="color: rgb(0, 0, 255)">mysql -h mysql.dmz.nausch.org -D postfix -u dovecot_user -p</font> <font style="color: rgb(0, 0, 0)">$ </font><font style="color: rgb(0, 0, 255)">mysql -h mysql.dmz.nausch.org -D postfix -u dovecot_user -p</font>
-<font style="color: rgb(02550)">Enter password:</font><font style="color: rgb(0, 0, 255)">D45_157_5uP3r57r3n9_g3h31m!</font> +<font style="color: rgb(666666)">Enter password:</font><font style="color: rgb(0, 0, 255)">D45_157_5uP3r57r3n9_g3h31m!</font> 
-<font style="color: rgb(02550)">Reading table information for completion of table and column names+<font style="color: rgb(666655)">Reading table information for completion of table and column names
 You can turn off this feature to get a quicker startup with -A You can turn off this feature to get a quicker startup with -A
  
Zeile 805: Zeile 805:
  
 MySQL [postfix]> </font><font style="color: rgb(0, 0, 255)">SELECT CONCAT('/var/spool/mail/vmail/', maildir) AS home, 10000 AS uid, 10000 AS gid, CONCAT('*:bytes=', quota) AS quota_rule FROM mailbox WHERE username = 'django@nausch.org' AND active='1';</font> MySQL [postfix]> </font><font style="color: rgb(0, 0, 255)">SELECT CONCAT('/var/spool/mail/vmail/', maildir) AS home, 10000 AS uid, 10000 AS gid, CONCAT('*:bytes=', quota) AS quota_rule FROM mailbox WHERE username = 'django@nausch.org' AND active='1';</font>
-<font style="color: rgb(02550)">+-------------------------------+-------+-------+--------------------++<font style="color: rgb(666666)">+-------------------------------+-------+-------+--------------------+
 | home                          | uid   | gid   | quota_rule         | | home                          | uid   | gid   | quota_rule         |
 +-------------------------------+-------+-------+--------------------+ +-------------------------------+-------+-------+--------------------+
Zeile 813: Zeile 813:
  
 MySQL [postfix]> </font><font style="color: rgb(0, 0, 255)">SELECT username AS user, password, 10000 AS userdb_uid, 10000 AS userdb_gid, CONCAT('*:bytes=', quota) AS quota_rule FROM mailbox WHERE username = 'django@nausch.org' AND active = '1';</font> MySQL [postfix]> </font><font style="color: rgb(0, 0, 255)">SELECT username AS user, password, 10000 AS userdb_uid, 10000 AS userdb_gid, CONCAT('*:bytes=', quota) AS quota_rule FROM mailbox WHERE username = 'django@nausch.org' AND active = '1';</font>
-<font style="color: rgb(02550)">+-------------------+------------------+------------+------------+--------------------++<font style="color: rgb(666666)">+-------------------+------------------+------------+------------+--------------------+
 | user              | password         | userdb_uid | userdb_gid | quota_rule         | | user              | password         | userdb_uid | userdb_gid | quota_rule         |
 +-------------------+------------------+------------+------------+--------------------+ +-------------------+------------------+------------+------------+--------------------+
Zeile 821: Zeile 821:
  
 MySQL [postfix]> </font><font style="color: rgb(0, 0, 255)">quit;</font> MySQL [postfix]> </font><font style="color: rgb(0, 0, 255)">quit;</font>
-<font style="color: rgb(02550)">Bye</font>+<font style="color: rgb(666666)">Bye</font>
 </pre></html> </pre></html>
  
Zeile 877: Zeile 877:
   }   }
   client_limit = 1   client_limit = 1
 +}
 +
 +#
 +# quota_status_success   : Ist das Speicher noch möglich, nichts machen "DUNNO"
 +# quota_status_nouser    : Ist der Nutzer unbekannt, auch nichts machen "DUNNO". Ein anderes Backend
 +#                          könnte dafür ev. zuständig sein.
 +# quota_status_overquota : Errorcode und Fehlermeldung, die bei Erreichen der gesetzte Quota an den
 +#                          Frontend-Mailserver (MTA) Postfix zurückgemeldet wird. 
 +plugin {
 +  quota_status_success = DUNNO
 +  quota_status_nouser = DUNNO
 +  quota_status_overquota = "552 5.2.2 Mailbox is over quota / Mailbox ist voll"
 } }
 </code> </code>
Zeile 894: Zeile 906:
    tcp        0      0 10.0.0.70:24            0.0.0.0:              LISTEN      0          97793      10151/dovecot     tcp        0      0 10.0.0.70:24            0.0.0.0:              LISTEN      0          97793      10151/dovecot 
  
-==== Postfix Konfiguration ==== 
  
 ==== Paketfilter Konfiguration ==== ==== Paketfilter Konfiguration ====
Zeile 925: Zeile 936:
  
 ==== Postfix Konfiguration ==== ==== Postfix Konfiguration ====
 +Wie schon angesprochen, wollen wir den **//Dovecot-Policy-Daemon//** erst ansprechen, wenn alle Vorprüfungen in Sachen Antivirus und SPAM erfolgt sind und bevor die Nachricht vom Postfix-Server mit einem **permit** angenommen wird.
 +
 +Bei der Installation und **[[centos:mail_c6:mta_3|Grundabsicherung von Postfix]]** haben wir uns bereits ein umfangreiches **[[centos:mail_c6:mta_3#restrictions-regelwerk|Restriction-Regelwerk]]** angelegt. Dort tragen wir nun vor dem abschließendem **//permit//** den **//Quota-Status-Check am Dovecot Backend-System//** ein.
 +   # vim /etc/postfix/main.cf
 +<code bash>...
 +
 +#
 +# Django : 2012-02-06
 +# Schutz durch Restrictions für unseren Postfix-Mailserver 
 +#
 +
 +smtpd_recipient_restrictions =
 +# Postmaster, abuse und andere aufgaben- oder funktionsgebundene E-Mail-Adressen (Role-Accounts) whitelisten
 +        check_recipient_access btree:/etc/postfix/access_recipient-rfc,
 +# Black- und Whitelisting                               (Kapitel 8.2.3 White- und Blacklisting)
 +        check_client_access cidr:/etc/postfix/access_client,
 +        check_helo_access btree:/etc/postfix/access_helo,
 +        check_sender_access btree:/etc/postfix/access_sender,
 +        check_recipient_access btree:/etc/postfix/access_recipient,
 +# Unsauberer eMails nicht annehmen                      (Kapitel 8.2.4 Anforderungen an Mailadressen)
 +        reject_non_fqdn_sender,
 +        reject_non_fqdn_recipient,
 +        reject_unknown_sender_domain,
 +        reject_unknown_recipient_domain,
 +# Unsere eigenen Nutzer zulassen-/erlauben              (Kapitel 8.2.2 Relaying erlauben und verbieten)
 +        permit_sasl_authenticated,
 +        permit_mynetworks,
 +# RBL überprüfen                                        (Kapitel 10.11 Realtime Blackhole Lists)
 +        reject_rbl_client zen.spamhaus.org,
 +        reject_rbl_client ix.dnsbl.manitu.net,
 +        reject_rbl_client bl.spamcop.net,
 +        reject_rhsbl_client multi.uribl.com,
 +# Greylisting via postgrey checken via Unix-Socket      (Kapitel 9.2.5 postgrey installieren)
 +        check_policy_service unix:postgrey/socket,
 +# Policyd-Weight check over TCP-Connection              (Kapitel 9.3 policyd-weight installieren)
 +        check_client_access btree:/etc/postfix/policyd_weight_client_whitelist,
 +        check_policy_service inet:127.0.0.1:12525,
 +# Dynamische Prüfung auf existente Relay-Empfänger      (Kapitel 12.2.2 Dynamische Empfänger-Verifizierung)
 +        reject_unverified_recipient,
 +# Backupserver (MX) erlauben
 +        permit_mx_backup,
 +# alles andere an relaying verbieten                    (Kapitel 8.2.2 Relaying erlauben und verbieten)
 +        reject_unauth_destination,
 +# Quota-Status-Policy-Daemon am Dovecot-Backend-System
 +# Dovecotbuch (ISBN 978-3-95539-74-7) Seite 219 ff.     (Kapitel 11.11 "Der Quota-Policy-Server für Postfix")
 +        check_policy_service inet:10.0.0.70:10000,
 +# Zu guter Letzt alles durchlassen, was bis jetzt noch nicht beanstandet wurde
 +        permit
 +
 +...
 +</code>
 +
 +Zum Aktivieren der Konfigurationsänderung starten wir den Postfix-Mailserver einmal durch.
 +   # systemctl restart postfix
 +
 +
 ===== Mailclient auf Benutzerseite ===== ===== Mailclient auf Benutzerseite =====
 +Mailclients haben bisweilen sehr unterschiedliche Arten, die Informationen aus dem **imap_quota** Plugin darzustellen. 
 +==== kMail ====
 +kMail stelle die Informationen des **imap_quota-//Plugins//** zur Verfügung, wenn der Mauszeiger über den betreffenden Mailkonto plaziert wird.
 +
 +{{ :centos:mail_c7:kmail_001.png?nolink&700 |Bild: Bildschirmphoto des eMail-Clientprogramm kMail}}
 +
 +Wir die Quota überschritten wir zusätzlich der Ordner-Name mit der Schriftfarbe **rot** dargestellt.
 +
 +{{ :centos:mail_c7:kmail_002.png?nolink&700 |Bild: Bildschirmphoto des eMail-Clientprogramm kMail}}
 +
 +==== Thunderbird ====
 +Im Gegensatz zum Mailclient kMail, stellt Thunderbird keine Informationen zur Quota-Auslastung in der Statuszeile an, wenn der Schwellwert noch nicht errreicht wurde.
 +
 +Ist die Quota-Informationsgrenze noch nicht erreicht, wird in der Statusleiste keine Information zum aktuellen Stand der Quota zur Verfügung gestellt.
 +
 +{{ :centos:mail_c7:thunderbird_001.png?nolink |Bild: Bildschirmhardcopy der Statusleiste vom eMail-Client Thunderbird}}
 +
 +Erst bei erreichen der Schwelle wir eine Information angezeigt.
 +
 +{{ :centos:mail_c7:thunderbird_002.png?nolink |Bild: Bildschirmhardcopy der Statusleiste vom eMail-Client Thunderbird}}
 +
 +Abhilfe schafft da das **[[https://addons.mozilla.org/de/thunderbird/addon/display-quota/|Display-Quota Plugin]]**.
 +
 +{{ :centos:mail_c7:display_quota_plugin.png?direct&777 |Bild: Informationen zum Display-Quota-Plugin}}
 +
 +Wird es installiert, werden immer aktuelle Quota-Status-Informationen in der Startleiste angezeigt.
 +
 +{{ :centos:mail_c7:thunderbird_003.png?nolink |Bild: Bildschirmhardcopy der Statusleiste vom eMail-Client Thunderbird}}
 +
 +Entsprechend ist hier die Anzeige bei Überschreitung der Quota-Einstellungen.
 +
 +
 +{{ :centos:mail_c7:thunderbird_004.png?nolink |Bild: Bildschirmhardcopy der Statusleiste vom eMail-Client Thunderbird}}
 +
 +==== Horde Framework/Webmail ====
 +Auch die Nutzer des Webmailers **IMP** unserer Horde-Framework-Installation kommen natürlich in den Genuß der Quota-Anzeige. Wir müssen diese lediglich in der Konfig aktivieren. Hierzu öffnen wir die **backends.local.php** und tragen nachfolgende Zeilen nach.
 +   # vim /var/www/horde/imp/config/backends.local.php
 +<code php>...
 +
 +$servers['advanced'] = array(
 +    // Disabled by default
 +    // Django : 2013-02-01
 +    'disabled' => false,
 +    'name' => 'mein Advanced Dovecot-IMAP Server',
 +    'hostspec' => '10.0.0.70',
 +    'hordeauth' => 'full',
 +    'protocol' => 'imap',
 +    'port' => 143,
 +    'secure' => 'tls',
 +    'maildomain' => 'nausch.org',
 +    'smtp' => array(
 +    'localhost' => 'vml000090.dmz.nausch.org',
 +    'host' => 'vml000080.dmz.nausch.org',
 +    'port' => 25,
 +    ),
 +    // Django : 2014-08-11
 +    'quota' => array(
 +        'driver' => 'imap',
 +        'params' => array(
 +            'hide_when_unlimited' => false,
 +            'unit' => 'MB',
 +            'format' => array('short' => 'Quota Status: %.0f%% bei einer Belegung von %.0f %s')
 +       )
 +    ),
 +    //
 +    'acl' => true,
 +    'cache' => false,
 +);
 +
 +...
 +</code>
 +
 +Sobald wir uns bei unserem Horde-Webmailer anmelden und die Applikation **IMP** auswählen, wird der aktuelle Status zur Quota-Belegung in der Statuszeile angezeigt.
 +
 +{{ :centos:mail_c7:horde_quota_001.jpg?nolink&500 |Bild: Horde Framework Quota Anzeige}}
 +
 +
 +
 +====== Links ======
 +  * **[[centos:mail_c7:start|Zurück zum Kapitel >>Mailserverinstallation unter CentOS 7<<]]**
 +  * **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]**
 +  * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]**
 +
 +
  • centos/mail_c7/dovecot_8.1407447501.txt.gz
  • Zuletzt geändert: 07.08.2014 21:38.
  • von django