#!/bin/sh . /usr/lib/libmodcgi.sh XMAIL_SSLSUPPORT= XMAIL_SSLVISIBLE= # Check for SSL support /usr/lib/MailRoot/bin/CtrlClnt 2>&1 | grep -qe ' -S ' && XMAIL_SSLSUPPORT=1 # Check for installed and running PHPXmail [ -e /mod/etc/init.d/rc.phpxmail ] && XMAIL_PHPXMAIL=1 check "$XMAIL_UNPRIV" yes:unpriv check "$XMAIL_SMTP" yes:smtp check "$XMAIL_SSMTP" yes:ssmtp check "$XMAIL_POP3" yes:pop3 check "$XMAIL_POP3S" yes:pop3s check "$XMAIL_CTRL" yes:ctrl check "$XMAIL_CTRLS" yes:ctrls check "$XMAIL_SMTPLOG" yes:smtplog check "$XMAIL_POP3LOG" yes:pop3log check "$XMAIL_SYSTEMLOG" yes:systemlog [ "$XMAIL_PHPXMAIL" == 1 ] && ( . /usr/lib/libmodredir.sh sec_begin '$(lang de:"PHPXmail" en:"PHPXmail")' cat << EOF

$(lang de:"Auf dieser Fritz!Box ist das PHPXMail Webfrontend installiert, klicken sie" en:"On this Fritz!Box is the PHPXMail webfrontend installed, so you can klick") $(lang de:"hier" en:"here")$(lang de:", um es zu starten." en:" to start it.")

EOF sec_end ) sec_begin '$(lang de:"Starttyp" en:"Start type")' cgi_print_radiogroup_service_starttype "enabled" "$XMAIL_ENABLED" "" "" 0 sec_end sec_begin '$(lang de:"Zentrale Serverkonfiguration" en:"Core server configuration")' cat << EOF


$(lang de:"Bitte gib hier den Speicherort für XMail an (enthält alle Email-Boxen, Spool Verzeichnisse, Konfigurationsdateien). Dieses Verzeichnis muss beschreibbar und bereits vorhanden sein. Falls das Verzeichnis leer ist, wird automatisch die richtige Dateistruktur erstellt. Dieses Verzeichnis wird alle Konfigurationsdateien von XMail enthalten, welche manuell (oder via einem Webfrontend) bearbeitet werden müssen." en:"Please provide the storage location for XMail (this location contains all email boxes, spool storage, configuration files). This directory must be writeable and exist. In case the directory is empty, the proper directory structure will be created. This directory will contain all configuration files for XMail which must be modified directly or via a web frontend.")

$(lang de:"Verzeichnis für XMail" en:"Directory for XMail"):


$(lang de:"Bitte ändern Sie diese Werte nur wenn Sie wissen was Sie tun." en:"Please change these values only if you know what you are doing.")

$(lang de:"Startparameter" en:"Start parameters"):

EOF sec_end sec_begin '$(lang de:"Angebotene Dienste" en:"Offered services")' cat << EOF

$(lang de:"Bitte beachte: Wenn XMail mit einer unpriviligierten Benutzer-ID gestartet wird, müssen alle hier angegebenen Ports grösser oder gleich 1024 sein, da ansonsten der Dienst nicht startet. Um Dienste aus dem Internet zugänglich zu machen, musst du eine Port-Weiterleitung mit der Fritz!Box Firewall einrichten (z.B. von Port 25 auf der Internet-Seite zum Port 10025 auf der lokalen Seite)." en:"Please note: If XMail is started with an unprivileged user ID, all ports must be above or equal to 1024 as otherwise the service will not be started. To make services available from the Internet, please use the port forwarding with the Fritz!Box firewall (e.g. from port 25 on the Internet side to port 10025 on the local side.")


$(lang de:"SMTP Port" en:"SMTP port"):

EOF [ "$XMAIL_SSLSUPPORT" == 1 ] && cat << EOF

$(lang de:"Soll ein weiterer Port für SSL/TLS geschütztes SMTP aktiviert werden (SSL/TLS ist auch am normalen Port verfügbar)?" en:"Shall another port for SSL/TLS protected SMTP be activated (SSL/TLS is also available using the regular port)?")

$(lang de:"SSMTP Port" en:"SSMTP port"):

EOF cat << EOF

$(lang de:"POP3 Port" en:"POP3 port"):

EOF [ "$XMAIL_SSLSUPPORT" == 1 ] && cat << EOF

$(lang de:"Soll ein weiterer Port für SSL/TLS geschütztes POP3 aktiviert werden (SSL/TLS ist auch am normalen Port verfügbar)?" en:"Shall another port for SSL/TLS protected POP3 be activated (SSL/TLS is also available using the regular port)?")

$(lang de:"POP3S Port" en:"POP3S port"):

EOF cat << EOF

$(lang de:"Bitte beachte: Der SSL-geschützte Admin Zugang ist aus allen Netzen zugänglich (port 6018). Der ungeschützte Admin Zugang (6017) ist nur via localhost erreichbar." en:"Please note: The SSL protected admin access is available from all networks (port 6018). The unprotected admin access is available via localhost only (port 6017).")

EOF [ "$XMAIL_SSLSUPPORT" == 1 ] && cat << EOF

$(lang de:"Soll SSL/TLS geschützter Admin Zugang aktiviert werden?" en:"Shall SSL/TLS protected admin access be activated?")

EOF [ -e $XMAIL_MAILLOCATION/ctrlaccounts.tab ] && [ -z "$(sed -ne 's/ *//g;/\".*\"\t\".*\"/p' $XMAIL_MAILLOCATION/ctrlaccounts.tab)" ] && cat << EOF

$(lang de:"Momentan sind keine XMail Administratoren angelegt. Wenn Sie jetzt den Standard-Administrator" en:"In the moment there are no XMail administrators configured. If you want to create the standard administrator") admin $(lang de:"anlegen wollen, müssen Sie das Passwort für die freetz Konfigurations-Webseite neu setzten. Klicken Sie" en:"now, than you must set the password for the freetz web configuration interface again. Click") $(lang de:"hier" en:"here") $(lang de:"um das Passwort jetzt neu zu setzen." en:"to set the password now.")

EOF sec_end sec_begin '$(lang de:"Server Logging" en:"Server logging")' cat << EOF

$(lang de:"Bitte beachte, dass XMail die Logdaten in logs/ speichert." en:"Please note that XMail saves the log data in logs/.")

EOF sec_end [ "$XMAIL_SSLSUPPORT" == 1 -o "$XMAIL_PHPXMAIL" != 1 ] && ( sec_begin '$(lang de:"Tipps zur Konfiguration" en:"Hints for configuration")' [ "$XMAIL_SSLSUPPORT" == 1 ] && cat << EOF

$(lang de:"Zur Aktivierung von SSL musst du das SSL Zertifikat und den entsprechenden privaten SSL Schlüssel in das oben angegebene Verzeichnis für XMail kopieren: Das Zertifikat muss als Datei server.cert und der private Schlüssen als Datei server.key gespeichert werden. Beachte bitte, dass XMail das Recht haben muss, diese Dateien zu lesen (wenn du oben ausgewählt hast, dass XMail mit einer unpriviligierten Benutzer-ID startet, müssen die Dateien lesbar für den Benutzer xmail oder die Gruppe xmail sein)." en:"To activate SSL you have to provide the SSL certificate and the corresponding private key which have to be copied into the above given XMail directory. The certificate must be saved in the file server.cert and the key in the file server.key. Please ensure that XMail has the permissions to read those files (if you selected to start XMail with an unprivileged ID, these files must be readable by the user xmail or group xmail).")


EOF [ "$XMAIL_PHPXMAIL" != 1 ] && cat << EOF

$(lang de:"Für XMail existiert ein PHP Webfrontend, welches alle Konfigurationsparameter, die Administration von Email-Domains und Benutzern beherrscht: PHPXmail. Um dieses Frontend auf der Fritz!Box zu verwenden, musst du folgende Schritte durchführen:
1. Installiere XMail (wenn du diese Seite liest, dann hast du diesen Punkt bereits geschafft).
2. Aktiviere im XMail Freetz-Webfrontend den unverschlüsselten Admin-Zugang.
3. In der crtlaccounts.tab XMail Konfigurationsdatei einen Account eintragen (siehe XMail readme.txt).
4. Installiere PHP und lighttpd (es muss mod_fastcgi für lighttpd gewählt werden, damit PHP funktioniert).
5. Konfiguriere lighttpd und aktiviere PHP mittels dem Freetz-Webfrontend.
6. Kopiere den Inhalt des PHPXmail Zip-Archivs in ein Verzeichnis innerhalb des lighttpd Dokumentenverzeichnisses.
7. Starte einen Webbrowser und lade die URL deines lighttpd Servers, Verzeichnis des PHPXmail Frontends.
8. Trage im erscheinenden Webfrontend im Namen localhost, als IP \"127.0.0.1\", und im Benutzernamen- und Passwordfeld die Benutzerdaten ein, welche du für die ctrlaccounts.tab Datei verwendet hast und bestätige diese Konfiguration.
9. Nun klicke auf login im PHPXmail Webfrontend und Benutze die gleichen Benutzerdaten wieder.
10. Zugang zu allen XMail Konfigurationsparametern ist nun möglich - es ist kein Neustart von XMail nach Änderungen notwendig." en:"TBD - see German part")

EOF sec_end )