Instant Messaging

Diese Seite wird nicht weiter gepflegt, da sie nach Exchange 2000 nicht mehr Bestandteil von Exchange ist. Die Funktion ist im Live Communication Server bzw. aktuellen Office Communications Server aufgegangen. Hierzu gibt es den Bereich MSXFAQ.DE - Unified Communication

Die Funktion eines Instant Messaging Servers ist NUR bis Exchange 2000 enthalten. Exchange 2003 und 2007 enthalten diese Funktion nicht mehr. Sie ist in der Produktlinie des Live Communications Server aufgegangen.

Hinweise zum Client finden Sie unter Instant Messaging Clients

Exchange 2000 liefert einen Instant Messaging Service mit. Es handelt sich im wesentlichen um den MSN-Messenger, welcher nun den Exchange Server und das Active Directory nutzen.

Dieser Dienst ergänzt die Medien Telefon und NetMeeting (Online Konferenz) und E-Mail (Offline Konferenz) um die Komponente einer direkten Kommunikation der Teilnehmer über geringe Bandbreite und Ressourcenbedarf und dir Möglichkeit, die Verfügbarkeit einer Person zu ermitteln.

Es ist daher nicht direkt notwendig, den Ansprechpartner anzurufen um festzustellen, dass er nicht am Arbeitsplatz ist oder nicht gestört werden möchte. Ebenso können Sie eine Mail oder Nachricht senden, ohne den Empfänger direkt bei seiner aktuellen Arbeit zu stören oder den Posteingang mit Nichtigkeiten zu füllen. 

Den richtigen Boom haben ähnliche Anwendungen im Internet durch die Verbreitung von ICQ, AOL Messenger oder dem MSN Messenger erhalten. Bekannte, Freunde und Gesprächspartner nutzen unregelmäßig das Internet und ohne diese Programme war es unmöglich zu erkennen, ob der Gegenüber im gleichen Moment im Internet ist.

Interessant sind auch Anwendungen, die die Funktion von Instant Messaging integrieren. So hat z.B. Microsoft selbst unter http://www.Microsoft.com/TechNet/showcase/itops/italert.asp eine Lösung dokumentiert um Probleme mit Systemen aktiv an die betroffenen Mitarbeiter zu melden.

Installation

Die Installation des IM Servers erfolgt einfach auf dem Exchange Server oder einem eigenen Server im Forrest, in dem Exchange 2000 schon vorhanden ist. Zur Installation wird das gleiche Setup von der Exchange 2000 CD genutzt, wie auch für den Exchange Server. Nach der Installation befinden sich im Exchange 2000 Systemmanager zwei weitere Punkte zur Konfiguration. Ganz oben können Die globalen Einstellungen gemacht werden (z.B. welche IP-Adressen durch eine Firewall gesichert sind). Beim Server selbst ist ein neuer Eintrag bei den Protokollen dazugekommen. Hier müssen Sie nun einen virtuellen Server für Instand Messaging erzeugen.

Sie können den IM-Server auch ohne Exchange installieren, d.h. im Forrest muss es nicht unbedingt einen Exchange Server geben. Allerdings wird das Schema auf jeden Fall erweitert und auch im Active Directory die entsprechenden Einträge für Exchange angelegt. Insofern ist eine Planung notwendig, wenn später Exchange 2000 hinzu installiert werden soll.

DNS Einträge

Im zweiten Schritt müssen Sie diesen Server im DNS eintragen. Bitte lesen Sie die Online Hilfe und Anleitungen dazu. Sie sollten das Konzept verstanden haben und entsprechend das System konfigurieren. IM nutzt zum Auffinden des Anwender entweder die IM-Adrese in der Form "User@imserver.domain.tld". Dabei ist der IM-Server per DNS als A-Eintrag aufzulösen.

Alternativ kann ich auch über die Mailadresse suchen. Dann versucht der IM-Client über einen passend zu setzenden SRV-Record den IM-Server zu finden. Der Ausschnitt einer DNS-Datei sieht dann so aus:

IM         A      192.168.100.10
_RVP_TCP   SRV    [0][0][80]    im.netatwork.de

So kann der IM-Client sowohl über den IM-Server als auch den Service record

Benutzer aktivieren

Erst dann können Sie über "Active Directory Computer and Users" die Benutzer anwählen und Instant Messaging aktivieren. Warten Sie dann noch einige Minuten, bis die Änderungen auch im Active Directory repliziert sind und dann kann es los gehen.

ACHTUNG: Aktivieren und deaktivieren Sie Benutzer für IM immer nur über die "Exchange Aufgaben". Eine Änderung der IM-Parameter in den Eigenschaften des Benutzers selbst wird entgegen der Anzeige nicht durchgeführt !

Der Client

Sie haben hier eine breite Auswahl. Sie können den IM Client der Exchange 2000 CD nutzen und installieren oder bei Microsoft den aktuellen Client

Alternativ können Sie natürlich auch den Client von MSN nutzen. Allerdings bietet dieser ihnen erst mal nicht Exchange als Option an. Hier hilft es, den Exchange Client vorher installiert zu haben, damit die DLL's und Einstellungen vorhanden sind.

Die Einstellungen des Clients sind an verschiedenen Stellen gespeichert. Die Kontakte liegen aktuell noch nicht auf dem Server sondern lokal und können ab der Version 4.6 auch endlich exportiert werden. Die Daten liegen an:

  • HKCU\Software\Microsoft\Exchange\Messenger
    Infomationen über Exchange Messaging Kontakte
  • .NET ist aber unter HKCU\Software\Microsoft\MessengerService\...
    Informationen über ".NET-Messaging" (Früher MSN-Messenger)

Zur Kommunikation nutzt der IM natürlich die gleichen Einstellungen wie der Internet Explorer. Prüfen Sie daher auch hier genau ihre Proxyeinstellungen. IM nutzt HTTP zur Verwaltung und Anmeldung

Mittlerweile gibt es auch andere Messenger, die mit Passport und Exchange, aber auch AIM und ICQ parallel agieren können, z.B.: Trillian unter http://www.trillian.cc/

IM Server

Der IM-Server ist der eigentliche Dienst, der dem Instant Messaging Clients den Kontakt miteinander erlaubt. Der IM-Server ist ein Dienst unter Windows 2000, welcher die Statusinformationen in einer ESE-Datenbank (msimnode.edb) ablegt. Jeder Benutzer hat GENAU einen IM Homeserver. Dieser Server erhält später die Nachricht, die er an den Benutzer weiterleiten muss.

Die Konfiguration des IM-Servers erfolgt über den Exchange System Manager:

Unter den Eigenschaften den Servers werden die Pfade für die IM-Datenbank angelegt:

 

Unter den Eigenschaften des virtuellen Servers wird dann der DNS-Name und die entsprechende virtuelle Webseite konfiguriert. Die virtuellen Verzeichnisse legt die Exchange Systemaufsicht eigenständig an. Nur den RVP-Eintrag und den A-Eintrag für den IM-Server in der DNS-Zone muss der Administrator manuell eintragen.

Die Kommunikation mit dem Clients für an und abmelden erfolgt dabei über das Protokoll HTTP. Der IM-Server ist über ein virtuelles Verzeichnis des Webservers erreichbar.

IM Router

Ein IM-Router ist wie ein Dispatcher zu betrachten, welcher von den Clients gefragt wird und im Active Directory den Homeserver ermittelt. Gerade in Firmen mit vielen IM-Servern und einem Adressraum (DNS-Domäne) sind Router hilfreich. Auf die Router verweisen die A und SRV-Records und die Router verweisen den Client an den passenden Homeserver.

Anfrage von extern nimmt der Router an und leitet Sie an den passenden IM-Homeserver weiter welche diese dann an den Benutzer zustellt. Intern wir der Client an den eigentlichen Homeserver verwiesen (Redirect)

Router sind auch immer dann zu empfehlen, wenn Systeme aus dem Internet an interne Benutzer etwas senden wollen. Es bietet sich dann an, einen IM Router z.B. in die DMZ zu stellen, so dass dieser die Anfragen annimmt und über das AD den Homeserver des Anwenders findet und weiterleitet.

Kommunikation

  • RVP geht über HTTP, aber über den der beim Einrichten des Virtual IM Servers angegeben wurde.
  • RVP ist das Exchange 2000 IM Protokoll mit dem die Presence Information (status Updates) übertragen werden und auch die eigentlichen Chats.
  • Der eigentlich wichtige Punkt ist die Authentication. Die läuft nun mal nicht über RVP sondern, je nach Einstellung, über NTLM oder Digest Authentication. Das erfordert zusätzliche Ports und Konfigurationseinstellungen.

Exchange IM im Internet

Exchange Instant Messaging ist eine dezentrale Struktur, d.h. jede Firma kann ihren eigenen IM-Server aufbauen und im Internet veröffentlichen. Dazu dienen idealerweise IM-Router in einer demilitarisierten Zone. Firmen, die hier einen Mindestaufwand treiben, sollten vielleicht besser auf einen eigenen IM-Server verzichten und statt dessen mittels ".NET"-Messaging (MSN/Hotmail) oder einen alternativen Messenger benutzen.

Für alle anderen gilt, dass der IM-Server im Internet über einen SRV-Record bekannt gemacht werden muss und eine sichere und geeignete Konfiguration von Firewall, Active Directory, IM Server und IM Router notwendig ist.

Bitte sprechen Sie mich ab, wenn sie diese Aufgabe zu lösen haben. Ich kann diese Konstellation unmöglich allgemein auf dieser FAQ-Seite beantworten, da die Anforderungen sehr individuell sind.

Fehlersuche

Es bleibt nicht aus, dass IM vielleicht nicht so funktioniert, wie sie dies erwarten. Sie sollten wissen, dass die IM-Kommunikation über den IIS und HTTP funktioniert, d.h. es werden HTTP-Anfragen abgesetzt und Antworten angenommen. Dies ist einem Webbrowser vergleichbar, der eine Webseite anzeigen will. Die An- und Abmeldung können Sie daher mit dem NETMON (sollten Sie auf dem Server auf jeden Fall installieren) protokollieren und mit etwas Pfiffigkeit die Pakete interpretieren können. Oftmals ist es wirklich ein falsche DNS-Eintrag oder ein falsch konfigurierter IIS. Siehe dazu auch die Links am Ende des Dokuments.

IM und deaktivierte Benutzer

Oftmals wird Exchange 2000 derart betrieben, dass die Postfächer der Anwender schon auf Exchange 2000 liegen, aber das primäre Konto des Anwenders noch eine Windows NT4 Domäne ist oder gar ein anderes Netzwerkbetriebssystem (NDS, Unix) die primäre Anmeldung durchführt. In diesem Fall sind die Objekte in Form deaktivierter Benutzer im Active Directory nur Platzhalter  um die Exchange Konfiguration zu speichern.

Deaktivierte Benutzer sind nicht IM-enabled und können auch nicht IM nutzen. Zwar kann der Anwender IM enabled werden, aber weder das deaktivierte Benutzer noch der zugewiesene externe Account kann die IM-Funktionen nutzen. (Stand: Exchange 2000 SP2). für die Nutzung von IM ist daher die Aktivierung des Benutzers notwendig. Auch die Nutzung von SID-Histories im Rahmen einer Migration mit ADMT sind nicht funktionsfähig.

IM und IIS

Der Instant Messaging Server integriert sich komplett in den IIS, d.h. durch die Konfiguration wird auf dem IIS ein virtuelles Verzeichnis "INSTMSG" angelegt, welches erschreckender weise zuerst auf das Exchange Programmverzeichnis verweist und jeder "Leserechte" hat. Allerdings führt die Integration der Filter-DLL "msimsrv.dll" dazu, dass alle Anfragen von dieser DLL verarbeitet werden. Insofern ist das Basisverzeichnis und damit das Exchange Programmverzeichnis nicht lesbar, zumindest solange die DLL richtig arbeitet.

Hier einige Bilder zu den Einstellungen. Bitte auf die Bilder klicken zum Vergrößern.

Die Einbindung des IM Virtuellen Verzeichnisses im IIS

Die Integration des ISAPI-Filters.

Hier werden im Exchange Systemmanager die Einstellungen durchgeführt

Wenn Sie eine Firewall einsetzen, sollten Sie dem Instant Messaging Server dies mitteilen, damit die Clients optional über den Proxy zugreifen.

Tipps

  • Deaktivieren des Werbebanners im unteren Bereich 
    HKEY_LOCAL_MACHINE\Software\Microsoft\MessengerService\Policies\
    DisableCrossPromo:DWORD=1
    ExchangeConn:DWORD=2
  • Die Anmeldung intern erfolgt per HTTP auf dem IM-Server. Die Autorisierung erfolgt per NTLM. Daher ist ein Proxy dazwischen nicht möglich, es sei denn Sie stellen auf DIGEST um. Daher auf dem lokalen PC in den Internet Explorer Einstellungen die Proxyeinstellungen prüfen
  • Wer IM zuerst ohne DNS-Eintrag nutzt, muss zwingend die IM-Adresse nehmen. Die Mailadresse funktioniert dann nicht. (z.B. frank.carius@im.netatwork.de).
  • Im Probleme immer Authentifizierung: Test: Digest abschalten Klartext aktiv.

IM Hochverfügbar

Nun haben Sie intern Instant Messaging installiert und stellen sich die Frage, wie die Verfügbarkeit des Dienstes sichergestellt wird. Dazu gilt es zu beachten:

  • IM ist nicht clustertauglich
  • Jeder Benutzer hat genau einen IM-Homeserver
  • Sie können in einer Exchange Organisation mehrere IM-Server einrichten, aber ein Benutzer hat genau einen IM-Server
  • Anwender auf verschiedenen IM-Servern in der gleichen Organisation können miteinander Nachrichten austauschen.
  • IM Router können genutzt werden, um den Homeserver zu entlasten und Nachrichten lokal zu halten, helfen aber nicht, wenn der IM-Homeserver ausgefallen ist.

Fehlertoleranz ist daher weder über Cluster noch DNS-Round Robin möglich. Demnach bleibt nur die Option, den IM-Server eines Anwenders im Fehlerfall per Skript auf einen anderen Server zu ändern und die AD-Replikation zu forcieren. Wenn Sie diesbezüglich Beratung wünschen, sollten Sie siech an ein entsprechend qualifiziertes Systemhaus wenden.

Backup und Restore

Der Instant Messaging Server nutzt wie der WINS, DHCP und der Exchange Server und natürlich das Active Directory eine Datenbank zum Speichern der Statusinformationen. Diese ESE-Datenbank hat den Namen C:\Programme\Exchsrvr\imdata\msimnode.edb mitsamt den passenden Protokolldateien und muss im Gegensatz zu den anderen Datenbanken nicht gesichert werden. Ist nach einem Ausfall die Datenbank nicht mehr da, so wird Sie automatisch wieder angelegt. In der Datenbank speichert sich der Instand Messaging Server nur den Status der aktuellen Clients. Weder die Kommunikation selbst, die direkt zwischen den Clients und dem Server abläuft noch die Konfiguration, welche im Active Directory liegt, ist in der Datenbank. Um die Anzahl der Fehlermeldungen ihrer Backupsoftware zu reduzieren, sollten Sie einfach dieses Verzeichnis aus der Sicherung ausschließen.

IM und Outlook XP

Outlook und andere Programme erlauben die Integration von Instant Messaging in ihre Umgebung. Die kann über die Option in Outlook aber wieder abgeschaltet werden.

Faktisch bedeutet die Integration nur, dass beim Start von Outlook der Instant Messenger gestartet wird und Outlook beim öffnen jeder Mail prüft, ob der Absender gerade "online" ist und zeigt den Status in der Nachricht an.

Das bedeutet aber, dass damit bei jedem Lesen einer Mail die Absenderadresse als DNS-Lookup auf  "_rvp._tcp.absenderdomain.tld" gemacht wird. Es mag Umgebungen geben, wo dieses gewünscht ist, aber speziell mit einer Wählverbindung zum Internet ist dies weniger sinnvoll. Mein Rat: "Abschalten".

Instant Messaging und Hosted Umgebung

In einer Umgebung mit einem eigenen Forrest für Exchange 2000 werden im Active Directory nur "deaktivierte" Benutzer geführt. Die eigentlichen aktiven Benutzer sind in der jeweiligen Domäne des Anwender und können auf ihr Exchange 2000 Postfach über erweiterte Postfachberechtigungen zugreifen. Die Benutzer im Active Directory sind nur Platzhalter, um die Exchange 2000 Konfiguration zu speichern.

Leider scheint es so, dass ein IM-Client immer den primären Benutzer benötigt und sich nicht mit dem vertrauten NT-Konto anmelden kann. Daher ist IM in diesem Umfeld aktuell noch nicht problemlos einsetzbar. möglich ist, den Benutzer zu aktivieren und ein eigenes Kennwort dafür zu vergeben. Leider kann der Anwender ohne weitere Konfiguration damit dann auch direkt sich anmelden und auf Dateifreigaben etc. zugreifen. Denkbar sind auch Replikationen mit Metaverzeichnisdiensten, die eine ähnliche Funktion bereitstellen. Ich bitte um Feedback, welche Lösungen Sie hier gegangen sind.

IM Zukunft = Realtime Collaboration Server (RTC)

Die Zukunft des Exchange Instant Messengers steht in den Sternen. Aktuell gibt es neben dem IM auch den MSN-Messenger und mit den kommenden .NET-Servern wird es einen eigenen Instant Messaging Dienst geben (SIP). Insofern gehe ich selbst davon aus, dass der IM von Exchange nach dem Release von Windows.NET immer weniger gefördert wird und irgendwann wegfällt.

Mittlerweile ist klar, dass die Zukunft in Form des "Microsoft Office Real-Time Communications Server 2003" realisiert wird. Er wird den "Microsoft Office System Microsoft Real-Time Communications Server (RTC Server) 2003 Standard Edition" Bestandteil des kommenden Office System sein.

Weitere Links