Nachdem das Citrix NetScaler Management and Analytic System nun schon eine ganze Weile zum Download zur Verfügung steht (mittlerweile in Version 11.1 51.21), wird es Zeit einmal die Basisinstallation und -konfiguration in einen Artikel zu packen. Zugegeben, wer nur einen NetScaler (oder auch ein HA Paar) betreibt, für den ist NMAS etwas überdimensioniert. Aber jeder, der darüber hinaus noch weitere NetScaler (VPX, MDX, VPX) oder SD-WAN Appliances einsetzt, kann sich mit NMAS eine ganze Menge Arbeit sparen.
Für das Monitoring, den meisten wird HDX Insight bereits etwas sagen, ist eine NMAS Appliance erste Wahl. Für bis zu 30 virtuelle Server ist das ganze auch noch kostenlos, erst danach wird eine Lizenz fällig.
Starten sollten wir mit dem Download der virtuellen Appliance von der Citrix Website, sowie dem Import auf seinem bevorzugten Hypervisor. Wie das ganze funktioniert, erkläre ich an dieser Stelle nicht ausführlich. Sobald die Appliance jedoch importiert und gestartet ist, können wir loslegen.
Wie beim NetScaler starten wir mit der Konfiguration an der Konsole und erfassen erstmal die benötigten IP Informationen.
Sind die IP Informationen erfasst und alles mit Save and Close gespeichert, müssen wir uns jetzt für einen Deployment Typ entscheiden. In großen, verteilten Umgebungen macht es durchaus Sinn verschiede Agents und Sammleknoten zu verwenden. In diesem Artikel installieren wir zuerst den NetScaler MAS Server mit der 1.
Start Up Wizard
Nach der Grundkonfiguration an der Konsole, können wir uns am Webinterface anmelden. Über http://<IP-Adresse> erreichen wir die Web GUI und melden uns, mit dem vom NetScaler bekannten Zugangsdaten, als Superuser (nsroot/nsroot) an.
Der Setup Wizard zeigt uns dann auch gleich in einer schönen grafischen Übersicht, was mit einer NMAS Appliance prinzipiell so möglich ist.
Im ersten Schritt müssen wir uns für ein Deployment entscheiden. Wir haben hier die Wahl zwischen einem Single Server, einem HA-Paar oder aber einem Saal-Out Server. Wir entscheiden uns hier erstmal für ein Single Server Deployment und klicken auf Next.
Natürlich macht ein NMAS nur dann Sinn, wenn auch NetScaler verwaltet werden sollen. Im zweiten und letzten Schritt des Wizards fügen wir noch die zu verwaltetenden NetScaler Instanzen hinzu. Hier ist es egal ob es sich um NetScaler VPX, MDX oder SDX handelt, wir können sogar SD-WAN Instanzen hinzufügen und verwalten. Mit einem Klick auf + New fügen wir die erste Instanz hinzu.
Die erste Instanz benötigt nun noch etwas an Informationen. Neben der IP-Adresse (oder IP-Range wenn mehrere Instanzen hinzugefügt werden sollen), benötigt die NMAS Appliance noch die Zugangsdaten für die Instanzen. Diese verbergen sich unter den Profilen. Das Standardprofil (ns_nsroot_profile) können wir mit einem Klick auf den Bleistift (1) konfigurieren. Mit einem Klick auf das + erstellen wir ein neues Profil.
Wie erwartet benötigt das Profil einen Benutzernamen (1) sowie ein Kennwort (2). Normalerweise sollte das in produktiven Umgebungen natürlich nicht der Standarduser nsroot sein. Um Messwerte über SNMP vom NetScaler abfragen zu können, benötigt das Profil den entsprechenden SNMP Community String (dieser muss bevor Daten abgerufen werden können natürlich auf den Netscaler Appliances konfiguriert sein).
Sobald wir das Profil und die Instanz gespeichert haben, beginnt die NMAS Appliance mit dem Discovery und zeigt uns bei Erfolg die neu angelegte Instanz gleich an. Ein Klick auf Finish schließt den Wizard.
Konfiguration
Beginnen wir zuerst mit der Zeitzone. Unter System -> System Administration -> System Settings finden wir den Link zum ändern der Zeitzone. Wer im Netzwerk alles bei UTC belassen hat, braucht hier nichts zu ändern. Es macht aber durchaus Sinn, überall die richtige Zeitzone zu konfigurieren.
Nach der Zeitzone müssen wir natürlich auch die richtige Uhrzeit bekommen. Das es sich bei NMAS ebenfalls um ein Netzwerkgerät handelt, ist ein Zeitserver zwingend erforderlich. Diesen konfigurieren wir unter System -> NTP Servers. Mit einem Klick Add (1) erfassen wir entweder einen der Domänen Controller oder einen externen NTP Server (z.B. 0.de.pool.ntp.org) als Zeitquelle. Ich würde mindestens einen Server als Preferred (2) konfigurieren. Um die Synchronisierung zu aktivieren, müssen wir den angelegten Server noch markieren und den Button NTP Synchronization (3) anklicken und die Synchronisierung dort aktivieren.
Achtung: Die NMAS Appliance benötigt danach wieder einen Restart.
System Settings
Sobald die Appliance gestartet ist und wir uns wieder an der Web GUI angemeldet haben, konfigurieren wir das System weiter.
Ebenfalls unter System -> System Administration -> System Settings finden wir den Link Modify System Settings. Hier konfigurieren wir zuerst, wie die NMAS Appliance mit den NetScaler Instanzen kommunizieren soll. Ich gehe davon aus, dass besonders die NetScaler in der DMZ nur über SSL (1) zu erreichen sind. Damit gleiches auch für die NMAS Appliance gilt, wählen wir noch Secure Access Only (2) aus.
Waren wir vorher nur mit HTTP mit der Web GUI verbunden, muss diese jetzt neu geladen werden.
Im vorangegangen Schritt haben wir uns für den Zugriff über SSL auf die NMAS Appliance entschieden. Um das aber auch richtig zu machen und die Zertifikatswarnung los zu werden, tauschen wir nun noch das selbst-signierte Zertifikat von Citrix durch ein eigenes aus. Natürlich sollten wir hier bereits ein Zertifkat mit entsprechenden Key vorliegen haben.
Unter System -> System Administration -> Set Up NetScaler MAS finden wir den Link Install SSL Certificate. Hier wählen wir lediglich das Zertifikat und den Schlüssel aus, geben das Passwort des Schlüssels ein und klicken OK.
Achtung: Danach muss die NMAS Appliance neu starten.
Externe Authentifizierung
Personalisierte Konten für die Anmeldung sind ebenso wichtig wie ein verschlüsselter Zugang. Um jetzt nicht alle Benutzer lokal anlegen zu müssen, verwenden wir, wie auch beim NetScaler, bereits vorhandene Konten aus unserem Active Directory. Hierfür legen wir unter System -> Authentication -> LDAP zuerst einen LDAP Server an.
Wer das bereits auf einem NetScaler angelegt hat, wird hier fast alles wiederfinden. Da ich gern die Kommunikation verschlüssele, verwende ich hier LDAPS mit Port 636 (unverschlüsselt wäre es dann der Security Type Plaintext mit dem Port 389).
Unter System -> User Administration -> Groups erstellen wir noch eine Gruppe, die unsere Benutzer enthält. Diese muss (case-sensitiv) genau so heißen wie die entsprechende Gruppe im Active Directory. Ich verwende hier eine bereits bestehende Gruppe der NetScaler Administratoren.
Ähnlich wie beim NetScaler benötigt die Gruppe noch entsprechende Rechte. Da die Mitglieder dieser Gruppe die NMAS Appliance administrieren sollen, wählen wir unter Permission (1) hier admin aus. Ganz am Ende des Formulars können wir noch entscheiden, ob diese Berechtigungen für alle (2) Instanzen gelten soll. Falls nicht, können wir im zweiten Schritt die entsprechenden Instanzen auswählen.
Bei einem NetScaler müssten wir die LDAP Policy jetzt noch global binden. Bei der NMAS Appliance muss lediglich die externe Authentifizierung aktiviert werden. Unter System -> Authentication klicken wir dafür auf den Link Authentication Configuration.
Als Server Type wählen wir hier extern und fügen den zuver erstellten LDAP Server hinzu. Falls der konfigurierte LDAP Server einmal nicht zur Verfügung stehen sollte, macht es Sinn, den Fallback auf die lokale Authentifizierung zu aktivieren. Nach einem Klick auf OK können wir uns ab jetzt mit einem LDAP Account anmelden.
Geo IP Daten
In global verteilten Umgebungen oder auch wenn die Clients aus verschiedenen Ländern kommen, kann es immer ganz hilfreich sein, wenn man eine Zuordnung von IP-Adresse zum Herkunftsland herstellen kann. Die NMAS Appliance benötigt hierfür eine entsprechende Zuordnungsdatenbank.
Unter System -> Advanced Settings -> Geo Database Files laden wir noch die Geo IP Information auf die NMAS Appliance. Diese können wir unter dem folgenden Link herunter laden, auspacken und den enthaltenen .dat File auf die Appliance hochladen.
http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
Damit die NMAS Appliance den Netwerkverkehr auch zuordnen kann, benötigen wir noch einige Informationen zur Infrastruktur. Zuerst erstellen wir unter Infrastructure -> Data Centers -> Private IP Blocks die Netze, wie wir intern benutzen. Ich habe hier für einen Standort das LAN und die DMZ erfasst. Beim Erfassen der Netze wird auch zwingend Latitude und Logitude des Standorts benötigt. Hier hilft ein Blick auf http://www.latlong.net/.
Sind alle Netze erstellt, können wir diese unseren Data Center zuweisen. Unter Infrastructure -> Data Centers erstellen wir ein neues Data Center und fügen die dort verwendeten (und zuvor angelegten) Netzwerke hinzu.
Analyse der Daten
Werfen wir doch kurz einen Blick auf den Punkt Analytics. Hier finden wir alle Informationen, die uns die konfigurierten Instancen liefern. Damit die NMAS Appliance aber auch Daten bekommt, werden verschieden Wege genutzt. Für die reinen Informationen über die Instanzen wird unter anderem SNMP verwendet. Den entsprechenden Community String haben wir bereits im Profil der Instanz erfasst. Für alles andere verwendet AppFlow am NetScaler. Ausgenommen ist hier allerdings Security Insight, hier wird die Application Firewall des NetScalers (setzt Enterprise bzw. Platinum Lizenzen voraus) abgefragt. Damit die nachfolgenden Schritte auch später Daten sammeln können, müsse die Featues (App FW, AppFlow, SNMP) auf den NetScaler auch aktiviert sein und die Firewall zwischen der NMAS Appliance und den NetScalern für die Ports geöffnet sein.
Um das Datensammeln zu aktivieren finden wir unter Infrastructure -> Instances unsere Instanzen (in diesem Artikel eine NetScaler VPX Instanz). Wir markieren die Instanz und wählen unter Actions Enable/Disable Insight aus.
Im oberen Teil unter Enable/Disable Insight können wir den X-Forwarded-For Header aktivieren um die echte Client IP-Adresse auch über Proxy Server zu erhalten. Handelt es sich um ein Gateway, aktivieren wir auch den Punkt NetScaler Gateway (Gateway Insight). Wer jetzt noch die Standorte der Clients in der Analyse sehen möchte kann dies ebenfalls aktivieren. Hier werden allerdings die Daten über die Google Geo coding API ausgewertet.
Im unteren Teil unter Application List könnnen wir nun AppFlow für Load Balancing, Content Switching, Cache Redirection sowie VPN Verbindungen konfiguren. Dazu wählen wir den entsprechenden Service unter View aus, markieren die virtuellen Server auf der NetScaler Instanz aus und klicken auf Enable AppFlow.
Für jeden einzelnen virtuellen Server können wir nun eine Expression auswählen (und entsprechend unseren Wünschen konfigurieren) sowie entscheiden, für welche Daten wir AppFlow aktivieren möchten.
Schauen wir danach auf unsere NetScaler Instanz, sehen wir, dass unsere NMAS Appliance unter System -> AppFlow -> Collectors automatisch eingetragen wurde.
Zusätzlich wurde für jede konfigurierte Application auf der NMAS Appliance auf dem NetScaler auch gleich die entsprechende AppFlow Policy angelegt.
Citrix XenDesktop Director
Da bei XenApp bzw. XenDesktop Umgebungen eher der Citrix Director verwendet wird, können wir natürlich die Daten der NMAS Appliance auch im Director anzeigen lassen (HDX Insight). Hierfür muss der Director allerdings noch konfiguriert werden. Auf dem Server mit dem installierten Director finden wir unter \inetpub\wwwroot\Director\tools das DirectorConfig.exe Tool das wir mit Schalter /confignetscaler aufrufen.
C:\inetpub\wwwroot\Director\tools\DirectorConfig.exe /confignetscaler
Das Tool benötigt nun noch einige Angaben von uns.
- Enter Machine name or IP: Die IP Adresse der NMAS Appliance
- Enter User name: Der Benutzer, der sich an der NMAS Appliance anmelden darf
- Enter Password: Das dazu gehörige Passwort
- Eine 1 für die sichere Verbindung zur NMAS Appliance
- Eine 1 für die NMAS Appliance (wer hier noch ein NetScaler Insight Center verwendet nimmt hier die 0)
Das war es dann auch schon, ab jetzt sollte der Director unter der Karteikarte Network die NMAS Daten anzeigen.
Benötigte Ports
Typ | Port | Quelle | Ziel | Details |
---|---|---|---|---|
TCP | 80 / 443 | NMAS | NetScaler Instanzen | NITRO |
TCP | 22 | NMAS | NetScaler Instanzen | SSH |
UDP | 4739 | NetScaler Instanzen | NMAS | AppFlow |
ICMP | – | NMAS | NetScaler Instanzen | Ping |
SNMP | 161 / 162 | NetScaler Instanzen | NMAS | |
Syslog | 514 | NetScaler Instanzen | NMAS | |
TCP | 25 | NMAS | SMTP Server | E-Mail Nachrichten |
TCP | 389 / 636 | NMAS | Domain Controller | LDAP / LDAPS |
UDP | 123 | NMAS | Zeitserver | NTP |
RADIUS | 1812 | NMAS | Radius Server | Authentifizierung |
TACACS | 49 | NMAS | TACACS Server | Authentifizierung |
TCP | 5557 | NetScaler Instanzen | NMAS | Log Stream |
TCP | 5454 | NMAS | NMAS | HA Kommunikation |
TCP | 27000 | NMAS | Citrix Lizenzserver | |
TCP | 7279 | NMAS | Citrix Lizenzserver |
Wer sich nach der ganzen Prozedur wundert, das er noch keine Daten sieht – Standardmäßig pollt die NMAS Appliance alle 30 Minuten. Um also Daten zu sehen muss erstens etwas auf dem NetScaler passieren und zweitens die ersten 30 – 60 Minuten abgewartet werden, bevor Daten zu sehen sind.
Falls trotzdem noch nicht alles rund läuft, findet unter http://docs.citrix.com/en-us/netscaler-insight/11-1.html einige gute How-To Artikel und Troubleshooting Guides.