Exchange 2007 - Weiterleiten an Verteilerliste

Problem :

Weiterleiten der eingehenden Mails an eine Verteilerliste funktioniert nicht von extern , intern funktioniert die Weiterleitung.

Lösung :

Navigiere zu der Exchange Management Cosole zur betroffenen Verteilergruppe (Recipient Configuration -> Distribution Group)

Unter Mail Flow Settings -> Message Delivery Restrictions -> Properties die Einstellungen wie im Screenshot anpassen.

Exchange 2007 Windows 2003 Server 64 Bit : The protocol handler Search.Mapi2Handler.1 cannot be loaded

Problem :

Exchange 2007 schreibt ständig Fehler mit folgendem Inhalt ins Application (Anwendung) Log

EventID : 3083
Category : Gatherer
Description : The protocol handler Search.Mapi2Handler.1 cannot be loaded. Error description: Class not registered


Der Fehler liegt daran das kein 64-Bit Outlook MAPI Provider verfügbar ist

Lösung :

Erstellen einer Reg Datei mit folgendem Inhalt :

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{9E175BA9-F52A-11D8-B9A5-505054503030}]
@="Search Gatherer Log File Provider"

[HKEY_CLASSES_ROOT\CLSID\{9E175BA9-F52A-11D8-B9A5-505054503030}\InprocServer32]
@=hex(2):25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,00,74,00,25,\
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,00,73,00,\
73,00,72,00,63,00,68,00,2e,00,64,00,6c,00,6c,00,00,00
"ThreadingModel"="Both"

[HKEY_CLASSES_ROOT\CLSID\{9E175BA9-F52A-11D8-B9A5-505054503030}\ProgID]
@="Search.GathererLogFileProvider.1"

[HKEY_CLASSES_ROOT\CLSID\{9E175BA9-F52A-11D8-B9A5-505054503030}\VersionIndependentProgID]
@="Search.GathererLogFileProvider"


Dannach war der Fehler auf dem Exchange 2007 Server weg ;-)

Outlook 2010: Skripte und Code in einem benutzerdefinierten Formular werden nicht ausgeführt

Problem:
Man hat ein benutzerdefiniertes Outlook-Formular erstellt und darin Skripte bzw. Code hinterlegt.
Wenn man das Formular testweise ausführt, klappt alles ohne Probleme.
Wenn man das Formular veröffentlicht und dann versucht das Skript per Button o.ä. auszuführen, passiert nichts!
Das Problem tritt nur bei Clients mit OUTLOOK 2010 auf.

Lösung:
Seit Outlook 2010 wird per default das Ausführen von Code in öffentlichen Ordnern verhindert.
Dies kann umgangen werden, in dem man folgende Änderung in der Registry durchführt:
HKCU\Software\Microsoft\Office\14.0\Outlook\Security

DWORD Entry: PublicFolderScript

Value: 1

Nach einem Outlook-Neustart funktioniert das Formular problemlos.

In der unten genannten Quelle findet man auch einen Lösungsweg per Policy mit ADM-Datei.

Quelle: faq-o-matic.net: Homepage für Öffentliche Ordner in Outlook 2010 anzeigen

VBS zum automatischen umziehen der lokalen Druckerverbindungen

Problem :

Der Name des Printservers hat sich geändert , jetzt kann man zu Fuß an alle Clients gehen und die Drucker umstellen oder man nimmt dieses Skript ins Loginskript auf und das erledigt einem diese Aufgabe ....

Skript :

Option Explicit

Dim ObjWsh 		: Set ObjWsh = CreateObject("WScript.Shell")
Dim ObjNet   	: Set ObjNet = CreateObject("WScript.Network")
Dim ObjFso   	: Set ObjFso = CreateObject("Scripting.FileSystemObject")
Dim objEnv   	: Set objEnv = ObjWsh.Environment("Process")
Dim Logfile  	: Logfile = objEnv("USERPROFILE") & "\PrtUmzug.txt"
Dim objNetPr,NPR,DUMMY,ToDo,Zeile,Inhalt,Entry,Printer_New,OLDSERVER,NEWSERVER

OLDSERVER = "SERVERALT"   ' ----------------------------> Hier den Namen des alten Printservers eintragen
NEWSERVER = "SERVERNEU"   ' ----------------------------> Hier den Namen des neuen Printservers eintragen

' ------------------ routine
WScript.Echo ""
WScript.Echo "-----------------------------------------------------"
If Not ObjFso.FileExists(Logfile) then
WScript.Echo "|-> Ihre Druckerverbindungen werden überprüft & korrigiert"
Inhalt = GetPrinterNames()
WriteLog Logfile,Inhalt
ReadLog Logfile
Else
WScript.Echo "|-> Druckerverbindungen wurden bereits überprüft"
End If
WScript.Echo "-----------------------------------------------------"
WScript.Quit (1)
' ------------------ funktionen
Function GetPrinterNames() 				'--- liest die verbundenen Netzwerkdrucker aus
  Set objNetPr = ObjNet.EnumPrinterConnections
  For NPR = 0 to objNetPr.Count - 1 Step 2
    If Left(objNetPr.Item(NPR + 1),2) = "\\" then
      If DUMMY = "" then
        DUMMY = "NPR|" & objNetPr.Item(NPR) & "|" & objNetPr.Item(NPR + 1)
      Else
        DUMMY = DUMMY & vbCrLf & "NPR|" & objNetPr.Item(NPR) & "|" & objNetPr.Item(NPR + 1)
      End If
    End If
  Next 
  GetPrinterNames = DUMMY
  DUMMY = ""
  Set objNetPr = nothing
End Function
Function SetPrinterNames(Line) 			'--- verbindet einen Netzwerkdrucker
	On Error Resume Next
	Entry = split(Line,"|")
	If UBound(Entry) = 2 Then
		Printer_New = Replace(lcase(Entry(2)),OLDSERVER,NEWSERVER)
		ObjNet.RemovePrinterConnection Entry(2)
		ObjNet.AddWindowsPrinterConnection Printer_New
	End If
End Function
Function ReadLog(File) 					'--- überprüft ob Logfile existiert wenn ja liet Datei aus und spielt gesicherte Einträge zurück
	If ObjFso.FileExists(File) Then
		Set Dummy = ObjFso.OpenTextFile(File)
			Do Until Dummy.AtEndOfStream
				Zeile = trim(Dummy.Readline)
				SetPrinterNames(Zeile)
			Loop
	End If
End Function
Function WriteLog(File,Content) 		'--- löscht die Datei wenn vorhanden und erstellt eine aktualisierte
  If ObjFso.FileExists(File) Then
    ObjFso.DeleteFile(File)
  End If
  Dim ObjLogFile : Set ObjLogFile = ObjFso.OpenTextFile(File,8,true)
  ObjLogFile.WriteLine (Content)
  Set ObjLogFile = Nothing
End Function

Systemmonitor Windows & Linux

Wer unter Linux einen guten Systemmonitor sucht wird nicht an Conky vorbei kommen. Alle wichtigen Informationen auf einem Blick , für Windows Systeme gibt es einige Programme die ähnliche aufgabe übernehmen allerdings nie in diesem Umfang. Hierbei sind 4 besonders hervor zu heben BGInfo von ehemals Sysinternals , Desktopinfo , Moo0 Systemmonitor und Samurize. Wer nur Informationen über die Plattenbelegung haben will kann mit allen arbeiten etwas trickreicher wird es allerdings wenn man auch den Netzwerktraffic anzeigen möchte , abhängig davon ob eine Verbindung besteht oder nicht. Um ehrlich zu sein habe ich das unter Windows nicht in diesem Umfang getestet wie unter Linux dort aber habe ich eine Konfiguration erstellt , die abhängig die Informationen auf den Desktop zaubert.

Hier ist meine Konfiguration für Conky unter Ubuntu 10.04 & 10.10 :



benötigte Packete : lm_sensors , hddtemp , conky_colors und natürlich conky ;-)

Download Config : conky.tar.gz

In der Config ist auch die Datei conky_start.sh mit dabei um einen verzögerten Start zu realisieren, insgesamt ein gut Durchdachter und frei konfigurierbarer Systemmonitor für Linux meine Empfehlung




Hier eine mögliche Konfiguration für DesktopInfo

Download Config : desktopinfo.ini



Das versprochene Feature DesktopInfo als Screensaver auszuführen hat bei mir damit geendet das das Overlay und der Screensaver nicht mehr beendet wurden ich somit den Screensaver abwürgen musste.
Mein Fazit zu DesktopInfo , interresantes Programm allerdings vermisse ich einige Features. Wenn man mit der Standardkonfiguration zufrieden ist kann man es allerdings empfehlen.

Lt. Autor für folgende Betriebssysteme geeignet :
Windows Platforms
-----------------
Desktop Info has been tested on the following Windows platforms:

XP Pro (32 bit) version 2002 service pack 2
XP Pro (32 bit) version 2002 service pack 3
XP Pro (64 bit) version 2003 service pack 2
Vista (32 bit) business service pack 1
Server 2000 (32 bit) service pack 4
Server 2003 (64 bit) service pack 2
Server 2008 (32 bit) standard service pack 1
Server 2008 (64 bit) standard service pack 1
Windows 7 Professional 64 bit

Disk I/O may not work on Windows 2000.

(Auszug aud der Readme des Autors)





Hier Moo0 SystemMonitor 1.63 :



Eine Konfiguration über eine Konfigurationsdatei entfällt hier da alles über Rechtsklick und Felder ins Monitoring aufgenommen werden kann , allerdings beschränkt das auch die Möglichkeiten auf die vom Autor vergegebenen Felder. Mein Fazit lautet , wer auf die schnelle , ohne Konfigurationsdateien zu schreiben , einen Systemmonitor sucht ist hier gut bedient. Es wird in Echtzeit aktualisiert (Interval wählbar) und ist einfach zu konfigurieren.






Ich werde auch die anderen Systemmonitore testen und meine Erfahrungen hier verewigen ;-)

Zeitgeber-Dienst Konfiguration in einer AD - Musterbeispiel

Problem:
Man möchte ja innerhalb seiner AD ein vernünftiges Zeitmanagement haben, dass alle Server und Clients mit der selben Uhrzeit laufen.

Erklärung:
In einer AD sind die Zeitgeber hirachisch aufgebaut. Der "Zeit-Master" in einer AD ist immer der Domänen-Controller, der die Rolle "PDC-Emulator" inne hat. Also muß man dafür sorgen, dass dieser Server die richtige Zeit hat, dann haben auch alle anderen die richtige Zeit.

Hinweis: Die nachfolgende Lösung basiert auf der Konfiguration der Zeitserver von pool.ntp.org

WICHTIG: Vorsicht bei Zeitänderungen innerhalb einer ActiveDirectory. Wenn die Zeiten von Server und Client zu weit auseinanderliegen, dann kommt es zu keiner Kommunikation zwischen den beiden!!!

Lösung:
Man loggt sich als Administrator auf dem entsprechenden Domänen-Controller ein und führt folgenden Befehl aus:
w32tm /config /update /manualpeerlist:"0.pool.ntp.org,0x8 1.pool.ntp.org,0x8 2.pool.ntp.org,0x8 3.pool.ntp.org,0x8" /syncfromflags:MANUAL

Damit werden die Zeitquellen definiert. Genre können diese gegen andere Zeitserver getauscht werden.
Nun führt man nacheinander folgende Befehle aus um den Zeitgeber-Dienst neu zu starten und den Resync durchzuführen:
w32tm /config /update

net stop w32time

net start w32time

w32tm /resync /rediscover
Nun sollte im Eventlog des Servers folgendes Event geloggt werden:
Event: 32
Quelle: W32Time
Beschreibung: Der Zeitanbieter "NtpClient" empfängt momentan gültige Zeitdaten von xxxxxxxx (ntp.m|0x8|xxx.xxx.xxx.xxx->xxx.xxx.xxx.xxx).

Nun ist der Zeitgeberdienst konfiguriert und soltle auch die aktuelle Zeit geholt haben.
Nun kann man entwerde die Server und Clients neu starten, damit diese sich auch synchronisieren, oder man startet den Zeitgeber-Dienst auf den Serfvern/Clients neu.

Quellen:
support.ntp.org: Windows Time Service
1stbyte.com: Configure Windows Server 2003 and 2008 w32tm commands on domain controller
“Das einzig sichere System müsste ausgeschaltet, in einem versiegelten und von Stahlbeton ummantelten Raum und von bewaffneten Schutztruppen umstellt sein.”
Gene Spafford (Sicherheitsexperte)