User Tools

Site Tools


os:windows:smtp

SMTP

Installation (unattended)

Create file (ex: smtpinstall.txt) with this content:

[Components]
iis_smtp=on
iis_smtp_docs=On

Start the installation with the unattended file:

sysocmgr /i:%windir%\inf\sysoc.inf /u:smtpinstall.txt /c /q

Move mail folder to D:\

Change folder with adsutil.vbs:

cd c:\Inetpub\AdminScripts
adsutil.vbs set smtpsvc/1/DropDirectory "D:\Inetpub\mailroot\Drop"
adsutil.vbs set smtpsvc/1/BadMailDirectory "D:\Inetpub\mailroot\Badmail"
adsutil.vbs set smtpsvc/1/PickupDirectory "D:\Inetpub\mailroot\Pickup"
adsutil.vbs set smtpsvc/1/QueueDirectory "D:\Inetpub\mailroot\Queue"

Restart SMTP-Service:

net stop smtpsvc
net stop smtpsvc

Move Adminscripts:

move "c:\Inetpub\Adminscripts" "d:\Inetpub\Adminscripts"

Delete Inetpub on c:\:

rmdir /s /q c:\Inetpub

MetaBase export

iiscnfg /export /f MetaBaseExport.xml /sp /lm/smtpsvc/1

MetaBase import

iiscnfg /import /f MetaBaseExport.xml /sp /lm/smtpsvc/1 /dp /lm/smtpsvc/1

Change Relay Restrictions to localhost

Quelle: Website doesn't exist anymore

'########################################################################################
'# Skript stellt die Zugriffsrechte des SMTP Server so ein, dass EMails mit der neuen
'#.NET 2.0 Klasse System.Net.Mail ueber den virtuellen IIS SMTP Server verschickt werden
'# koennen
'########################################################################################

' SMTP Server Objekt besorgen
Dim IIsSmtpSvrObj
Set IIsSmtpSvrObj = GetObject("IIS://localhost/SMTPSVC/1")      

' IP Eintrag fuer die White List
NewIP = "127.0.0.1,255.255.255.0"

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' RelayIpList Zugriffsrechte des SMTP Servers konfigurieren
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim MyRelayIpList
Dim RelayIpList

' IP Security Eintraege laden
Set MyRelayIpList = IIsSmtpSvrObj.RelayIpList

' White List Eintrag vornehmen, wenn nicht bereits vorhanden
MyRelayIpList.GrantByDefault = False
RelayIpList = MyRelayIpList.IPGrant
RelayIPAdd = "YES"
Redim Preserve RelayIpList (Ubound(RelayIpList)+1)

' Nachschauen, ob Eintrag schon besteht, da doppelter Eintrag zum Fehler fuehrt
For i = 0 to UBound(RelayIpList)
 If RelayIpList(i) = Replace(NewIP,",",", ") Then
  RelayIPAdd = "NO" 
'  MsgBox("IP Restriction already set")
 End If
Next

If RelayIPAdd = "YES" Then
 RelayIpList (Ubound(RelayIpList)) = NewIP

 ' Neue IP Liste einhaengen und uebergeben 
 MyRelayIpList.IPGrant = RelayIpList
 IIsSmtpSvrObj.RelayIpList = MyRelayIpList
End If

 

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' IPSecurity Zugriffsrechte des SMTP Servers konfigurieren
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim MyIPSec
Dim IPList

' IP Security Eintraege laden
Set MyIPSec = IIsSmtpSvrObj.IPSecurity

' White List Eintrag vornehmen, wenn nicht bereits vorhanden
MyIPSec.GrantByDefault = False
IPList = MyIPSec.IPGrant
IPSecAdd = "YES"
Redim Preserve IPList (Ubound(IPList)+1)

' Nachschauen, ob Eintrag schon besteht, da doppelter Eintrag zum Fehler fuehrt
For i = 0 to UBound(IPList)
 If IPList(i) = Replace(NewIP,",",", ") Then
  IPSecAdd = "NO" 
'  MsgBox("IP Restriction already set")
 End If
Next

If IPSecAdd = "YES" Then
 IPList (Ubound(IPList)) = NewIP

 ' Neue IP Liste einhaengen und uebergeben 
 MyIPSec.IPGrant = IPList
 IIsSmtpSvrObj.IPSecurity = MyIPSec
End If

' Erst jetzt die Aenderungen in einem Rutsch am Server einstellen
If RelayIPAdd = "YES" or IPSecAdd = "YES" Then
 IIsSmtpSvrObj.setInfo()
End If
os/windows/smtp.txt · Last modified: 2016-11-19 16:10 by root