Mail-Forwarding des hMailServer ändern…

Und noch immer sitze ich am Webserver. Nachdem wir gestern entschieden haben, dass ich die Domains des Bezirks hosten werde, muss ich natürlich dafür sorgen, dass die Leute später nicht nur ihr Passwort ändern können, sondern, dass sie zumindest auch eine Mail-Umleitung einrichten können, falls sie nicht extra ein zusätzliches Postfach abrufen möchten.

Dabei ist wieder ein VBScript herausgekommen, das per cscript.exe aufgerufen werden muss. Es basiert großteilig auf dem Script, mit dem der Benutzer sein Passwort ändern kann.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  ' Wscript.Arguments(0) => domain name
 ' Wscript.Arguments(1) => username
 ' Wscript.Arguments(2) => password
 ' Wscript.Arguments(3) => forwarding mail address

  On Error Resume Next
  Err.Clear

  If Wscript.Arguments.Count = 3 Or Wscript.Arguments.Count = 4 Then
    Dim obApp
    Set obApp = CreateObject("hMailServer.Application")

    If Err.Number = 0 Then
      Call obApp.Authenticate(Wscript.Arguments(1) & "@" & Wscript.Arguments(0), Wscript.Arguments(2))

      If Err.Number = 0 Then
        Dim obDomain
        Set obDomain = obApp.Domains.ItemByName(Wscript.Arguments(0))

        If Err.Number = 0 Then
          Dim obAccount
          Set obAccount = obDomain.Accounts.ItemByAddress(Wscript.Arguments(1) & "@" & Wscript.Arguments(0))

          If Err.Number = 0 Then
            If obAccount.ValidatePassword(Wscript.Arguments(2)) Then
              If Wscript.Arguments.Count = 4 Then ' activate forwarding
               obAccount.ForwardAddress      = Wscript.Arguments(3)
                obAccount.ForwardEnabled      = true
                obAccount.ForwardKeepOriginal = false
              Else ' deactivate forwarding
               obAccount.ForwardAddress      = ""
                obAccount.ForwardEnabled      = false
                obAccount.ForwardKeepOriginal = true
              End If
              obAccount.Save

              WScript.StdOut.WriteLine "0" ' forwarding set
           Else
              WScript.StdOut.WriteLine "1" ' password is not correct
           End If
          Else
            WScript.StdOut.WriteLine "2" ' account does not exist
         End If
        Else
          WScript.StdOut.WriteLine "3" ' domain does not exist
       End If
      Else
        WScript.StdOut.WriteLine "4" ' password is not correct
      End If
    Else
      WScript.StdOut.WriteLine "5" ' hMailServer.Application not available
   End If
  Else
    WScript.StdOut.WriteLine "6" ' wrong number of arguments
 End If

Ich denke mal, dass damit die beiden wichtigsten Konfigurationsmöglichkeiten für eine E-Mail-Adresse abgedeckt werden sollten. 🙂

Habt ihr eine Idee, was man als Endanwender sonst noch konfigurieren können sollte? Wie würdet ihr solch eine Konfiguration am liebsten vornehmen? Würde euch Telnet ausreichen oder würdet ihr eine Webseite bevorzugen?
Umleitende Grüße, Kenny

4 Kommentare » Schreibe einen Kommentar

    • Danke für die Korrektur. Ich bin selbst tlw. erschüttert, wieviele Rechtschreibfehler man in so einen Text einbauen kann.

      Das ein Mail-Umleitung statt eine Mail-Umleitung kann ich aber sogar erklären 😀 ! In der ersten Fassung stand dort nämlich "ein Mail-Forwarding". Das hatte ich dann nachträglich eingedeutscht. 🙂

    • Hihi. Ja, ne. Doofe Angewohnheit. Mit "Telnet" meinte ich eigentlich einen kleinen Server, auf den man sich mit dem Programm "telnet" connectet und dann seine Befehle los wird. Das ganze kann man natürlich über "Telnet via SSL" absichern. Normale Mail-Nutzer werden sicherlich keinen SSH-Zugriff bekommen. 😀

      Meine bisherige Idee ist, die möglichen Konfigurationen über eine PHP-Seite abzubilden - natürlich mit temporärem Blocken, wenn man das Passwort mehrfach falsch eingegeben hat. Muss ja nicht sein, dass jemand die Seite findet und dann versucht, sich in die Accounts zu bruteforcen.

Schreibe einen Kommentar

Um Ihnen beim weiteren Kommentieren auf dieser Webseite die erneute Eingabe Ihrer Daten zu ersparen, wird beim Absenden Ihres Kommentars ein Cookie an Ihren Browser gesendet und von diesem gespeichert. Mit dem Absenden eines Kommentars auf dieser Webseite stimmen Sie der Speicherung und Übertragung dieses Cookies explizit zu.

Pflichtfelder sind mit * markiert.