<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.synology-forum.de/wiki/index.php?action=history&amp;feed=atom&amp;title=Archiv%3AVirtuelle_E-Mail_User_erstellen</id>
	<title>Archiv:Virtuelle E-Mail User erstellen - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://www.synology-forum.de/wiki/index.php?action=history&amp;feed=atom&amp;title=Archiv%3AVirtuelle_E-Mail_User_erstellen"/>
	<link rel="alternate" type="text/html" href="https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;action=history"/>
	<updated>2026-05-07T06:21:56Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Synology Wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=10594&amp;oldid=prev</id>
		<title>Tommes: Tommes verschob die Seite Virtuelle E-Mail User erstellen nach Archiv:Virtuelle E-Mail User erstellen</title>
		<link rel="alternate" type="text/html" href="https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=10594&amp;oldid=prev"/>
		<updated>2025-03-15T07:19:08Z</updated>

		<summary type="html">&lt;p&gt;Tommes verschob die Seite &lt;a href=&quot;/wiki/Virtuelle_E-Mail_User_erstellen&quot; class=&quot;mw-redirect&quot; title=&quot;Virtuelle E-Mail User erstellen&quot;&gt;Virtuelle E-Mail User erstellen&lt;/a&gt; nach &lt;a href=&quot;/wiki/Archiv:Virtuelle_E-Mail_User_erstellen&quot; title=&quot;Archiv:Virtuelle E-Mail User erstellen&quot;&gt;Archiv:Virtuelle E-Mail User erstellen&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 15. März 2025, 07:19 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Tommes</name></author>
	</entry>
	<entry>
		<id>https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=467&amp;oldid=prev</id>
		<title>imported&gt;Jahlives: /* Quellcode */</title>
		<link rel="alternate" type="text/html" href="https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=467&amp;oldid=prev"/>
		<updated>2010-09-12T12:37:38Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Quellcode&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 12. September 2010, 12:37 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l320&quot;&gt;Zeile 320:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 320:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;exit&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;exit&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Mailstation]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Jahlives</name></author>
	</entry>
	<entry>
		<id>https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=4154&amp;oldid=prev</id>
		<title>imported&gt;Jahlives: /* Mailbenutzer erstellen */</title>
		<link rel="alternate" type="text/html" href="https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=4154&amp;oldid=prev"/>
		<updated>2010-04-18T14:46:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Mailbenutzer erstellen&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 18. April 2010, 14:46 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Zeile 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== config ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== config ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die Config Sektion des Codes muss man sich nach seinen Gegebenheiten anpassen. Das Script schreibt in Systemfiles und darum sind alle Pfade von Files die geschrieben werden im Auslieferungszustand auf /tmp gesetzt. Damit kann man das Script ausprobieren und schauen ob die generierten/angepassten Files in /tmp soweit korrekt sind. &amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die Config Sektion des Codes muss man sich nach seinen Gegebenheiten anpassen. Das Script schreibt in Systemfiles und darum sind alle Pfade von Files die geschrieben werden im Auslieferungszustand auf /tmp gesetzt. Damit kann man das Script ausprobieren und schauen ob die generierten/angepassten Files in /tmp soweit korrekt sind. &amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im folgenden eine kurze Beschreibung der Konfig&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im folgenden eine kurze Beschreibung der Konfig &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(diese bezieht sich auf die [http://svn.brain-force.ch/filedetails.php?repname=Linux+Stuff&amp;amp;path=%2Fcreate_mailuser%2Fdevel%2FcreateMaildir devel-Version] des Scripts!)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== global ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== global ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== mail =====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== mail =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Jahlives</name></author>
	</entry>
	<entry>
		<id>https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=4153&amp;oldid=prev</id>
		<title>imported&gt;Jahlives: Die Seite wurde neu angelegt: „== Mailbenutzer erstellen == Wenn ihr neue E-Mail Benutzer erstellen wollt, dann geht das am Schnellsten via dem DSM. Der Nachteil dieser Lösung ist es, dass man…“</title>
		<link rel="alternate" type="text/html" href="https://www.synology-forum.de/wiki/index.php?title=Archiv:Virtuelle_E-Mail_User_erstellen&amp;diff=4153&amp;oldid=prev"/>
		<updated>2010-04-18T14:43:40Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „== Mailbenutzer erstellen == Wenn ihr neue E-Mail Benutzer erstellen wollt, dann geht das am Schnellsten via dem DSM. Der Nachteil dieser Lösung ist es, dass man…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Mailbenutzer erstellen ==&lt;br /&gt;
Wenn ihr neue E-Mail Benutzer erstellen wollt, dann geht das am Schnellsten via dem DSM. Der Nachteil dieser Lösung ist es, dass man dann für jeden E-Mail Benutzer einen lokalen Systemaccount einrichten muss. Dafür gibt es virtuelle Benutzer, welche es ermöglichen alle Mailprozesse unter einem lokalen User fahren zu lassen. Das hat den Vorteil, dass man für neue E-Mail Nutzer nur noch einen virtuellen Benutzer für die Mailserver anlegen muss. Das System (also /etc/passwd) kennt diese Mailbenutzer jedoch nicht. Darum virtuell ;)&lt;br /&gt;
Mehr dazu wie man virtuelle Nutzer für [[Virtuelle_E-Mail_Nutzer_mit_postfix|Postfix]] und [[Virtuelle_E-Mail_Nutzer_mit_dovecot|Dovecot]] erstellen kann.&lt;br /&gt;
&lt;br /&gt;
Da man virtuelle Benutzer nicht über den DSM anlegen kann, habe ich folgendes kleine Script geschrieben, welches dem admin beim Einrichten der User hilft.&lt;br /&gt;
Ihr könnt den Code in [http://svn.brain-force.ch/listing.php?repname=Linux+Stuff&amp;amp;path=%2Fcreate_mailuser%2F meinem svn finden] oder [[#Quellcode|weiter unten]] direkt in diesem Beitrag&lt;br /&gt;
=== config ===&lt;br /&gt;
Die Config Sektion des Codes muss man sich nach seinen Gegebenheiten anpassen. Das Script schreibt in Systemfiles und darum sind alle Pfade von Files die geschrieben werden im Auslieferungszustand auf /tmp gesetzt. Damit kann man das Script ausprobieren und schauen ob die generierten/angepassten Files in /tmp soweit korrekt sind. &amp;lt;br /&amp;gt;&lt;br /&gt;
Im folgenden eine kurze Beschreibung der Konfig&lt;br /&gt;
==== global ====&lt;br /&gt;
===== mail =====&lt;br /&gt;
Legt das Root Verzeichnis der virtuellen User fest&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mail=/tmp/dovecot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== user =====&lt;br /&gt;
Gibt den Usernamen des lokalen Benutzers an unter dessen Kennung die virtuellen Benutzer &amp;quot;laufen&amp;quot;. Wird für den chown auf dem neuangelegten Mailbox Verzeichnis benötigt&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user=vmail&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== group =====&lt;br /&gt;
Siehe &amp;lt;code&amp;gt;user&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
group=vmail&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Dovecot ====&lt;br /&gt;
Config für Dovecot&lt;br /&gt;
===== dovecot_pw_file =====&lt;br /&gt;
Pfad zum Dovecot Passwort File, welches die virtuellen User und deren Passworte enthält (gebt hier NIEMALS /etc/passwd an!!!)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
dovecot_pw_file=/tmp/dovecot/passwd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== dovecotpw =====&lt;br /&gt;
Pfad zum dovecotpw Binary. Dieses wird jedoch nicht in der Firmware (Mailstation) mitgeliefert. Man kann es sich jedoch aus den Quellen selbe kompillieren oder dieses Script mit dem Parameter &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;--install&amp;lt;/code&amp;gt; aufrufen. Dann wird dovecotpw aus dem ipkg dovecot installiert.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
dovecotpw=/usr/syno/mailstation/libexec/dovecot/dovecotpw&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== scheme =====&lt;br /&gt;
Legt das zu verwendende Schema bei der Erstellung der Passworte für die virtuellen User fest.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
scheme=SSHA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Postfix ====&lt;br /&gt;
Konfiguration der Postfix-Seite&lt;br /&gt;
===== postfix =====&lt;br /&gt;
Pfad zum Postfix Binary. Wird zum Neuladen der Konfig nach Erstellen der Nutzer benötigt&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postfix=/usr/syno/mailstation/sbin/postfix&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== postfix_postmap =====&lt;br /&gt;
Pfad zum postmap Kommando. Dieses wird benötigt um aus den virtuellen Userfiles des Postfix die benötigten db Files zu erstellen&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postfix_postmap=/usr/syno/mailstation/sbin/postmap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== postfix_vmailbox =====&lt;br /&gt;
Legt den Pfad für das Postfix vmailbox File fest&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postfix_vmailbox=/tmp/dovecot/vmailbox&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== postfix_virtual =====&lt;br /&gt;
Pfad zum Postfix File mit den Alias Namen der virtuellen Benutzer&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postfix_virtual=/tmp/dovecot/virtual&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== postfix_main =====&lt;br /&gt;
Der Pfad zum main.cf File des Postfix Servers. Darin wird nichts geschrieben! Das Script nutzt das File um zu prüfen, ob die im Script angegebenen Files auch in der Postfix Config korrekt gesetzt sind&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postfix_main=/usr/syno/mailstation/etc/main.cf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== Script benutzen ===&lt;br /&gt;
Das Script ist ein &amp;quot;einfaches&amp;quot; Shellscript für die Kommandokonsole. Es sollte von root ausgeführt werden. Sonst bestehen keine Schreibrechte auf die benötigten Konfigfiles.&lt;br /&gt;
==== Parameter ====&lt;br /&gt;
Es gibt einige Parameter, die ich hier kurz erläutern möchte&lt;br /&gt;
===== -i|--install =====&lt;br /&gt;
Wenn dovecotpw nicht vorhanden ist, kann man mit diesem Parameter das Script anweisen dovecotpw von ipkg zu laden. Dabei wird natürlich ein funktionierendes ipkg und eine Internetverbindung benötigt&lt;br /&gt;
===== -h|--help =====&lt;br /&gt;
Zeigt die &amp;quot;Hilfe&amp;quot; des Scripts an&lt;br /&gt;
===== user =====&lt;br /&gt;
Legt den Usernamen des neu zu installierenden E-Mail Nutzers fest. Es handelt sich hierbei nur um den &amp;lt;code&amp;gt;Local Part&amp;lt;/code&amp;gt; der Adresse, also alles vor dem &amp;lt;code&amp;gt;@&amp;lt;/code&amp;gt;!&lt;br /&gt;
===== domain =====&lt;br /&gt;
Legt den Domainnamen des Nutzers fest. Es handelt sich hierbei nur um den &amp;lt;code&amp;gt;Domain Part&amp;lt;/code&amp;gt; der Adresse also alles hinter dem &amp;lt;code&amp;gt;@&amp;lt;/code&amp;gt;!&lt;br /&gt;
===== password =====&lt;br /&gt;
Dürfte selbsterklärend sein, wofür dieser Parameter ist ;-)&lt;br /&gt;
==== Aufrufen ====&lt;br /&gt;
Der Aufruf des Scriptes ist ziemlich einfach&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
createMaildir foo bar.tld secret&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
erstellt im &amp;lt;code&amp;gt;mail&amp;lt;/code&amp;gt; Verzeichnis aus der Konfiguration - falls nicht vorhanden - das Verzeichnis bar.tld für die Domain bar.tld an. Darin wird das Verzeichnis foo für den User foo erstellt. Dortdrin wird dann das .Maildir Verzeichnis angelegt, wo die E-Mails drin landen. Die Mailbox also. secret wird als Passwort für den User &amp;lt;code&amp;gt;foo@bar.tld&amp;lt;/code&amp;gt; in &amp;lt;code&amp;gt;dovecot_pw_file&amp;lt;/code&amp;gt; verwendet. &amp;lt;br /&amp;gt;&lt;br /&gt;
Bei obigem Aufruf wird also im Mailroot die folgende Struktur angelegt&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/volume1/homes/vmail&lt;br /&gt;
 + bar.tld&lt;br /&gt;
 ++ foo&lt;br /&gt;
 +++ .Maildir&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== Quellcode ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
&lt;br /&gt;
###########################################################################&lt;br /&gt;
#                                                                         #&lt;br /&gt;
#                           createMaildir Script                          #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
#                   &amp;lt;author&amp;gt;      tobster@brain-force.ch                  #&lt;br /&gt;
#                   &amp;lt;version&amp;gt;     Version 0.1b                            #&lt;br /&gt;
#                   &amp;lt;date&amp;gt;        4th April 2010                          #&lt;br /&gt;
#                   &amp;lt;license&amp;gt;     GNU GPL V 3                             #&lt;br /&gt;
#                   &amp;lt;url&amp;gt;         http://svn.brain-force.ch/linuxstuff    #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
# This script only works IF local mail derlivery is performed via deliver #&lt;br /&gt;
# Check your system whether you have deliver on it. Otherwise you have to #&lt;br /&gt;
# compile it from Dovecot source which can be found here:                 #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
#               http://www.dovecot.org/download.html                      #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
# Furthermore this script requieres dovecotpw to be installed. If missing #&lt;br /&gt;
# the code can be obtained from the source above. Or you can call the     #&lt;br /&gt;
# script with -i or --install parameter to get dovecotpw from ipkg        #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
# This code is under GPL license. Feel free to modify as you may wish     #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
# See config section for more details                                     #&lt;br /&gt;
#                                                                         #&lt;br /&gt;
###########################################################################&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#### BEGIN OF &amp;quot;CONFIG&amp;quot; SECTION ####&lt;br /&gt;
## change the following variables to fit your enviroment&lt;br /&gt;
## if you don&amp;#039;t have dovecotpw on your system just set the dovecotpw variable to a valid value on your box&lt;br /&gt;
## and call the script with -i or --install parameter. The script will install dovecotpw to the location specified in $dovecotpw&lt;br /&gt;
##&lt;br /&gt;
## root directory for mailboxes.&lt;br /&gt;
mail=/tmp/dovecot&lt;br /&gt;
##&lt;br /&gt;
# path to the dovecot password file. This implies that you have deliver installed or compiled from source&lt;br /&gt;
dovecot_pw_file=/tmp/dovecot/passwd&lt;br /&gt;
##&lt;br /&gt;
# Variables for interaction with postfix server&lt;br /&gt;
postfix=/usr/syno/mailstation/sbin/postfix&lt;br /&gt;
postfix_postmap=/usr/syno/mailstation/sbin/postmap&lt;br /&gt;
postfix_vmailbox=/tmp/dovecot/vmailbox&lt;br /&gt;
postfix_virtual=/tmp/dovecot/virtual&lt;br /&gt;
postfix_main=/usr/syno/mailstation/etc/main.cf&lt;br /&gt;
##&lt;br /&gt;
## user and group for chown on mailbox directory&lt;br /&gt;
user=vmail&lt;br /&gt;
group=vmail&lt;br /&gt;
##&lt;br /&gt;
## path to dovecotpw binary (see comment on top!) and the desired password scheme to use&lt;br /&gt;
## you can check the schemes your system supports by dovecotpw -l&lt;br /&gt;
dovecotpw=/usr/syno/mailstation/libexec/dovecot/dovecotpw&lt;br /&gt;
scheme=SSHA&lt;br /&gt;
##&lt;br /&gt;
## IMPORTANT: The installed dovecotpw file is made for Dovecot V 1.2&lt;br /&gt;
## So if you use Dovecot &amp;lt; 1.2 then you should NOT USE one of the&lt;br /&gt;
## new password schemes introduced in 1.2. like ex SSHA256.&lt;br /&gt;
## SSHA and MD5 work fine!&lt;br /&gt;
#### END OF &amp;quot;CONFIG&amp;quot; SECTION ####&lt;br /&gt;
&lt;br /&gt;
if test &amp;quot;$*&amp;quot; = &amp;#039;-i&amp;#039; || test &amp;quot;$*&amp;quot; = &amp;#039;--install&amp;#039;; then&lt;br /&gt;
 echo &amp;quot;create tmp dir and cd into&amp;quot;&lt;br /&gt;
 mkdir /tmp/dovecot&lt;br /&gt;
 cd /tmp/dovecot&lt;br /&gt;
 echo &amp;quot;download dovecot from ipkg&amp;quot;&lt;br /&gt;
 ipkg download dovecot &amp;gt; /dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
 f=$(find ./ -type f | grep ipk)&lt;br /&gt;
 echo &amp;quot;download done. unpacking dovecot files&amp;quot;&lt;br /&gt;
 mv ./$f ./dovecot.tar.gz&lt;br /&gt;
 tar -xzf ./dovecot.tar.gz&lt;br /&gt;
 tar -xzf ./data.tar.gz&lt;br /&gt;
 echo &amp;quot;copy file to destination and clean up tmp files&amp;quot;&lt;br /&gt;
 cp -f ./opt/sbin/dovecotpw $dovecotpw&lt;br /&gt;
 rm -R /tmp/dovecot&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot;installation complete. You should see to output of available schemes from dovecotpw now:&amp;quot;&lt;br /&gt;
 $dovecotpw -l&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot; ###########################################################################&amp;quot;&lt;br /&gt;
 echo &amp;quot; ##                                                                       ##&amp;quot;&lt;br /&gt;
 echo &amp;quot; ## IMPORTANT: The installed dovecotpw file is made for Dovecot V 1.2     ##&amp;quot;&lt;br /&gt;
 echo &amp;quot; ## So if you use Dovecot &amp;lt; 1.2 then you should NOT USE one of the        ##&amp;quot;&lt;br /&gt;
 echo &amp;quot; ## new password schemes introduced in 1.2. like ex SSHA256.              ##&amp;quot;&lt;br /&gt;
 echo &amp;quot; ## SSHA and MD5 work fine!                                               ##&amp;quot;&lt;br /&gt;
 echo &amp;quot; ##                                                                       ##&amp;quot;&lt;br /&gt;
 echo &amp;quot; ###########################################################################&amp;quot;&lt;br /&gt;
 echo&lt;br /&gt;
 exit&lt;br /&gt;
elif test ! -e $mail || test ! -d $mail; then&lt;br /&gt;
 echo &amp;quot;ERROR: $mail could not be found&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test ! -e $dovecot_pw_file; then&lt;br /&gt;
 echo &amp;quot;ERROR: $dovecot_pw_file could not be found. Check config!&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test ! -e $dovecotpw || test ! -x $dovecotpw; then&lt;br /&gt;
 echo &amp;quot;ERROR: $dovecotpw not found or not executable.&amp;quot;&lt;br /&gt;
 echo &amp;quot;       Ensure that dovecotpw is set correctly&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test ! -e $postfix_postmap || test ! -x $postfix_postmap; then&lt;br /&gt;
 echo &amp;quot;ERROR: Check that $postfix_postmap exists and is executable.&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test ! -e $postfix_virtual || test ! -e $postfix_vmailbox; then&lt;br /&gt;
 echo &amp;quot;ERROR: Ensure that $postfix_virtual AND $postfix_vmailbox exist&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test ! -e $postfix || test ! -x $postfix; then&lt;br /&gt;
 echo &amp;quot;ERROR: $postfix must be present and executable&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test -z $(cat /etc/passwd | grep &amp;quot;$user:&amp;quot;); then&lt;br /&gt;
 echo &amp;quot;ERROR: $user not found in /etc/passwd&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test -z $(cat /etc/group | grep &amp;quot;$group:&amp;quot;); then&lt;br /&gt;
 echo &amp;quot;ERROR: $group not found in /etc/groups&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test -e $dovecotpw &amp;amp;&amp;amp; test -z &amp;quot;$($dovecotpw -l | grep $scheme)&amp;quot;; then&lt;br /&gt;
 echo &amp;quot;ERROR: your system does not support $scheme encryption&amp;quot;&lt;br /&gt;
 echo &amp;quot;       the following schemes are supported on your platform:&amp;quot;&lt;br /&gt;
 echo $($dovecotpw -l)&lt;br /&gt;
 exit&lt;br /&gt;
elif test -z $(cat $postfix_main | grep ^virtual_mailbox_maps | grep $postfix_vmailbox); then&lt;br /&gt;
 echo &amp;quot;ERROR: $postfix_vmailbox not found in \&amp;quot;virtual_mailbox_maps\&amp;quot; within $postfix_main&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test -z $(cat $postfix_main | grep ^virtual_alias_maps | grep $postfix_virtual); then&lt;br /&gt;
 echo &amp;quot;ERROR: $postfix_virtual not found in \&amp;quot;virtual_alias_maps_\&amp;quot; within $postfix_main&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
elif test -z $(cat $postfix_main | grep ^virtual_mailbox_base | grep $mail); then&lt;br /&gt;
 echo &amp;quot;$mail not found in \&amp;quot;virtual_mailbox_root\&amp;quot; within $postfix_main&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
fi&lt;br /&gt;
uname=&amp;#039;&amp;#039;&lt;br /&gt;
domain=&amp;#039;&amp;#039;&lt;br /&gt;
pw=&amp;#039;&amp;#039;&lt;br /&gt;
if test $# -eq 3; then&lt;br /&gt;
 uname=$(echo $1 | grep ^[a-zA-Z0-9._\-]*$)&lt;br /&gt;
 domain=$(echo $2 | grep ^[a-zA-Z0-9._\-]*$)&lt;br /&gt;
 pw=$3&lt;br /&gt;
 if test &amp;quot;$uname&amp;quot; = &amp;#039;&amp;#039; || test &amp;quot;$domain&amp;quot; = &amp;#039;&amp;#039;; then&lt;br /&gt;
  echo &amp;quot;Only chars in [a-zA-Z0-9._\-] are allowed for username or domain&amp;quot;&lt;br /&gt;
  exit&lt;br /&gt;
 elif test -e &amp;quot;$mail/$domain/$uname&amp;quot;; then&lt;br /&gt;
  echo &amp;quot;$mail/$domain/$uname exists already. Nothing to be done. Exit&amp;quot;&lt;br /&gt;
  exit&lt;br /&gt;
 else&lt;br /&gt;
  echo &amp;quot;create $mail/$domain/$uname/.Maildir and chown to $user:$group&amp;quot;&lt;br /&gt;
  mkdir -p &amp;quot;$mail/$domain/$uname/.Maildir&amp;quot;&lt;br /&gt;
  chown -R $user:$group &amp;quot;$mail/$domain&amp;quot;&lt;br /&gt;
  echo $uname@$domain:$($dovecotpw -p &amp;quot;$pw&amp;quot; -s $scheme) &amp;gt;&amp;gt; $dovecot_pw_file&lt;br /&gt;
  echo $uname@$domain $domain/$uname/.Maildir &amp;gt;&amp;gt; $postfix_vmailbox&lt;br /&gt;
  echo $uname@$domain $uname@$domain &amp;gt;&amp;gt; $postfix_virtual&lt;br /&gt;
  $postfix_postmap $postfix_vmailbox&lt;br /&gt;
  $postfix_postmap $postfix_virtual&lt;br /&gt;
  echo &amp;quot;Account successfully created. See details:&amp;quot;&lt;br /&gt;
  echo &amp;quot;Username: $uname@$domain&amp;quot;&lt;br /&gt;
  echo &amp;quot;Files created&amp;quot;&lt;br /&gt;
  ls -al &amp;quot;$mail/$domain&amp;quot;&lt;br /&gt;
  ls -al &amp;quot;$mail/$domain/$uname&amp;quot;&lt;br /&gt;
  echo &amp;quot;Line from $dovecot_pw_file&amp;quot;&lt;br /&gt;
  cat $dovecot_pw_file | grep $uname@$domain&lt;br /&gt;
  echo &amp;quot;Line from $postfix_vmailbox&amp;quot;&lt;br /&gt;
  cat $postfix_vmailbox | grep &amp;quot;$domain/$uname/.Maildir&amp;quot;&lt;br /&gt;
  echo &amp;quot;Line from $postfix_virtual&amp;quot;&lt;br /&gt;
  cat $postfix_virtual | grep $uname@$domain&lt;br /&gt;
  echo&lt;br /&gt;
  echo &amp;quot;Check $postfix_main&amp;quot;&lt;br /&gt;
  if test -z $(cat $postfix_main | grep ^virtual_mailbox_domains | grep $domain); then&lt;br /&gt;
   f=$(cat $postfix_main | grep ^virtual_mailbox_domains)&lt;br /&gt;
   echo $f $domain&lt;br /&gt;
  fi&lt;br /&gt;
  echo &amp;quot;Reload postfix config files&amp;quot; $($postfix reload)&lt;br /&gt;
 fi&lt;br /&gt;
elif test &amp;quot;$*&amp;quot; = &amp;#039;-h&amp;#039; || test &amp;quot;$*&amp;quot; = &amp;#039;--help&amp;#039;; then&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot; ###########################################################################&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # Usage:                                                                  #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # createMaildir  [-i|--install] [-h|--help] &amp;lt;user&amp;gt; &amp;lt;domain&amp;gt; &amp;lt;password&amp;gt;    #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # -i | --install Installs the necessary dovecotpw from ipkg.              #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                Needs ipkg to be installed!                              #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # -h | --help    Show this message                                        #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # &amp;lt;user&amp;gt;         Username of the account to be created.                   #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                IMPORTANT: Username only, no domain part                 #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # &amp;lt;domain&amp;gt;       Domainname for the user account.                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                Folders are created like this /path/&amp;lt;domain&amp;gt;/&amp;lt;user&amp;gt;      #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # &amp;lt;password&amp;gt;     Password for the account                                 #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                &amp;lt;user&amp;gt;, &amp;lt;domain&amp;gt; and &amp;lt;password&amp;gt; are ALL MANDATORY        #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                if a useraccount is to be created                        #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                Example usage: createMaildir myuser mydomain mysecret    #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; ###########################################################################&amp;quot;&lt;br /&gt;
 exit&lt;br /&gt;
else&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot; ###########################################################################&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                           createMaildir Script                          #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                   &amp;lt;author&amp;gt;      tobster@brain-force.ch                  #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                   &amp;lt;version&amp;gt;     Version 0.1b                            #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                   &amp;lt;date&amp;gt;        4th April 2010                          #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                   &amp;lt;license&amp;gt;     GNU GPL V 3                             #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                   &amp;lt;url&amp;gt;         http://svn.brain-force.ch/linuxstuff    #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # This script helps admins to create new users for their mailserver.      #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # This script only works IF local mail derlivery is performed via deliver #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # Check your system whether you have deliver on it. Otherwise you have to #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # compile it from Dovecot source which can be found here:                 #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #               http://www.dovecot.org/download.html                      #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # Furthermore this script requieres dovecotpw to be installed. If missing #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # the code can be obtained from the source above. Or you can call the     #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # script with -i or --install parameter to get dovecotpw from ipkg        #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; # This code is under GPL license. Feel free to modify as you may wish     #&amp;quot;&lt;br /&gt;
 echo &amp;quot; #                                                                         #&amp;quot;&lt;br /&gt;
 echo &amp;quot; ###########################################################################&amp;quot;&lt;br /&gt;
 echo&lt;br /&gt;
fi&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>imported&gt;Jahlives</name></author>
	</entry>
</feed>