Access

CTX-Blog

powered by Ecki's Place

March 18th, 2018

XenDesktop – Publish desktop to IP address instead of a user group – the missing link

There are some situations where you want to publish a VDI desktop to a certain machine instead of a user group. The way to accomplish that is documented in the following article CTX128232 – How to Configure XenDesktop for a Teaching Lab or Classroom Environment

According to this article you only need to fire up PowerShell, load the Citrix.Broker.Admin.* commandlets, get the DesktopGroupUid of your delivery group and set some BrokerAccessPolicyRules and BrokerAssignmentPolicyRules. In a last step you have to assign an IP address to a domain machine.

Add-PSSnapin Citrix.Broker.Admin.*

Get-BrokerDesktopGroup

Get-BrokerAccessPolicyRule -DesktopGroupUid <uid> | Set-BrokerAccessPolicyRule -AllowedUsers AnyAuthenticated

Get-BrokerAssignmentPolicyRule -DesktopGroupUid <uid> | Set-BrokerAssignmentPolicyRule -Enabled $false

Set-BrokerPrivateDesktop DOMAIN\MACHINE_A -AssignedIPAddress 10.1.1.100

A nice article but unfortunately it is incomplete 🙁

The following blog post helped me a little bit further: XenDesktop – Assigning Private Desktops by Client IP or Hostname. It showed me some more options for the published desktops like a custom name for every single published desktop and how to view the configured settings afterwards:

Set-BrokerPrivateDesktop DOMAIN\MACHINE_A -AssignedIPAddress 10.1.1.100 -PublishedName “Desktop_A”

Get-BrokerPrivateDesktop | ft MachineName,AssignedIPAddress,AssignedClientName,PublishedName

But still the published desktops where not visible to the configured machines. They connected fine to StoreFront but showed no desktop to launch 🙁

So I started scratching my head and tried to understand how this “magic” could ever work…

The main question was how the Delivery Controller gets to see the real IP address of the client because the client never ever talks directly to the Delivery Controller. All communication is between StoreFront and Client only. This is where it made “click”.

In almost every environment I know StoreFront is load balanced behind some NetScaler or similar device. Therefore the StoreFront server only sees the IP address of the load balancer and not the real client IP. In case of a NetScaler it is the SNIP StoreFront sees as client IP address.

So the solution was as simple as that: Configure NetScaler to pass the real client IP address as “X-Forwarded-For” header to StoreFront which can be done easily on the Service or Service Group used for StoreFront load balancing. StoreFront then extracts the real client IP address from the HTTP header and passes it automatically to the Delivery Controller which finally knows which desktop to deliver.

Immediately after that configuration has been done the desktops appeared with their individual name in StoreFront 🙂

Regards

Ecki

March 6th, 2018

NetScaler – WinSCP only access (command policies) – the missing link

NetScaler Command Policies are not extremely well documented and if you don’t know how to work with regular expressions you are doomed. Citrix gives you some ideas on how Command Policies work in this Citrix eDoc Article but there is no hint on how to limit shell and scp/sftp access.

Well the solution is easy if you know how to do it but it took me some time to figure out…

First create a new Command Policy and give it a name like “WinSCP”. Choose “ALLOW” as action and add the following regular expression in the Command Spec* panel.

(^sftp.*)|(^scp.*)

Second create a new local user like “WinSCP”, set a password and give him login privileges. The other options are optional. Then bind the new “WinSCP” Command Policy to that user.

You’re done 🙂 This command policy allows only access through SCP, or SFTP tools like WinSCP and all other access (GUI, shell) is blocked.

Regards
Ecki

March 8th, 2013

IE 10 + Access Gateway Enterprise Logon Screen Problem IE 10 + Access Gateway Enterprise Logon Screen Issue

Wer bereits den neuen IE 10 einsetzt, ist vermutlich auch schon über dieses Phänomen mit einem Access Gateway Enterprise gestolpert. Der Bildschirm bleibt leer, wenn man die URL des AGEE eingibt. Erst wenn man manuell in den Kompatabilitätsmodus des Browsers wechselt, werden die Login Felder angezeigt. Ein ähnliches Problem hatte ich bereits vor einigen Jahren beschrieben, s. AAC und IE 8.0

Die Lösung ist ähnlich, allerdings unterscheiden sich die Dateien.

Beim Access Gateway Enterprise muss in der Datei “/netscaler/ns_gui/vpn/index.html” folgende Zeile (rot/fett) im Header hinzugefügt werden:

<HTML><HEAD><TITLE>Citrix Access Gateway</TITLE>
<link rel="SHORTCUT ICON" href="/vpn/images/AccessGateway.ico" type="image/vnd.microsoft.icon">
<META http-equiv="X-UA-Compatible" content="IE=EmulateIE9" />
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<META content=noindex,nofollow,noarchive name=robots>
<LINK href="/vpn/images/caxtonstyle.css" type=text/css rel=STYLESHEET>
<script type="text/javascript" src="/vpn/resources.js"></script>
<script type="text/javascript" language="javascript">
var Resources = new ResourceManager("resources/{lang}", "logon");
</script>

Wenn das Ergebnis stimmt (! Browser schliessen und neu öffnen !), darf nicht vergessen werden, dass das Access Gateway Enterprise diese Modifikation bei einem Reboot “vergisst”! Wie man solche Anpassungen persistent macht, beschreibt z. B. How to Retain the Custom Settings made to the NetScaler Appliance after it is Restarted

Gruss
Ecki

People who already use IE 10 will have probably seen this phenomenon while connecting to an Access Gateway Enterprise site. The browser window remains empty after connecting to the AGEE URL. The logon prompt is only visible after switching to compatibility mode. A similar problem has been described on this site a few years ago, s. AAC und IE 8.0

The solution is similar but the files are different.

With Access Gateway Enterprise the file “/netscaler/ns_gui/vpn/index.html” has to be changed according to the following listing (red/bold line added):

<HTML><HEAD><TITLE>Citrix Access Gateway</TITLE>
<link rel="SHORTCUT ICON" href="/vpn/images/AccessGateway.ico" type="image/vnd.microsoft.icon">
<META http-equiv="X-UA-Compatible" content="IE=EmulateIE9" />
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<META content=noindex,nofollow,noarchive name=robots>
<LINK href="/vpn/images/caxtonstyle.css" type=text/css rel=STYLESHEET>
<script type="text/javascript" src="/vpn/resources.js"></script>
<script type="text/javascript" language="javascript">
var Resources = new ResourceManager("resources/{lang}", "logon");
</script>

If the fix is working (! close the browser and reopen it !), don’t forget to make this change persistent since the Access Gateway Enterprise “forgets” all the modifications during a reboot! The following Citrix KB article describes, how to make changes survive a reboot: How to Retain the Custom Settings made to the NetScaler Appliance after it is Restarted

Regards
Ecki

April 4th, 2007

Citrix Access Gateway Enterprise verfügbar Citrix Access Gateway Enterprise available

Nach einer längeren Beta Tesphase ist seit letzter Woche die Firmware 8.0 für das Access Gateway Enterprise verfügbar, auch bekannt unter dem Codenamen “Timpanogos”. Access Gateway Enterprise ist der letzte Spross der Access Gateway Familie. Die Software läuft nur auf NetScaler Hardware, kann daher aber prinzipiell auch die erweitereten Funktionen der NetScaler Familie, wie z. B. Loadbalancing, Application Accelleration, etc., bieten. Ãœber das Funktionsspektrum entscheidet hier in erster Linie das Lizenzfile.

NetScaler konnten schon vor diesem Release SSL VPN’s bereitstellen, aber erst seit dieser Version ist es möglich, Citrix Farmen über den neuen ICA Proxy bereitzustellen, wie es die Standard und Advanced Edition bereits länger beherschen. Dadurch ist es Usern nun ebenfalls möglich, über einen NetScaler auf interne Presentation Server Farmen zuzugreifen, ohne einen VPN Client installieren zu müssen. NetScaler kann aus diesem Grund nun ebenfalls, wie seine kleineren Brüder, als Ersatz für Windows Server mit Citrix Secure Gateway in der DMZ verwendet werden.

Der grösste Unterschied zwischen den unterschiedlichen Access Gateway Versionen liegt, neben der Hardware und dem Betriebssystem, in der Skalierbarkeit. Unterstützt ein Access Gateway Standard bis zu 2000 gleichzeitige ICA Sitzungen, skaliert NetScaler von 2’500 (Modell 7000) bis 10’000 (Modell 10000) gleichzeitigen Sitzungen über eine einzige Appliance. Die Enterprise Version benötigt keinen zusätzlichen Windows Server wie die Advanced Edition, alle Funktionen finden sich auf der Appliance.

Die wichtigsten Features in diesem Zusammenhang (ohne Anspruch auf Vollständigkeit) sind:

  • Authentifizierung mit SmartCard – Anmeldungen ohne Username/Passwort sind an einem NetScaler mittels SmartCard oder anderen MSCAPI (Microsoft Crypto API) fähigen Anwendungen möglich.
  • Mehrere virtuelle Server auf einer Appliance – Es können mehrere unabhängige virtuelle SSL VPN Server auf einer Appliance betrieben werden, die sich durch unterschiedliche Zertifikate, Policies und IP-Adressen unterscheiden können.
  • Kompression des VPN Traffics – Da es sich hier prinzipiell um einen NetScaler handelt, können dessen eingebauten Kompressionstechniken den VPN Traffic vor der Verschlüsselung reduzieren und so die Performance für den User verbessern.
  • Eingebaute Hochverfügbarkeit – Zwei Appliances können problemlos in einer Active/Passive Konfiguration installiert werden. Alle Session Informationen können in Echtzeit zwischen den Appliances ausgetauscht werden, so dass im Fehlerfall einer Box keine Neuanmeldung der User notwendig ist.

Wie bei der Advanced Edition können die “Smart Access for Presentation Server” Features auch mit der Enterprise Version genutzt werden. So können Einschränkungen bezüglich Laufwerks-, oder Printermapping, Sichtbarkeit von Applikationen, etc. aufgrund des Ergebnisses eines Endgeräte Checks angewand werden.

Einige interessante Features der Advanced Edition sind allerdings leider bei der Enterprise Version bisher nicht verfügbar, andere werden es vermutlich nie auf die NetScaler Platform schaffen.

  • Clientless Access auf interne Webseiten (Proxy) – Hierfür wird bei der Enterprise Version aktuell der VPN Client benötig.
  • File Type Association – Ermöglicht es, z. B. Mail Attachments mit einem published Word/Excel… auf einem Presentation Server im Rechenzentrum zu öffnen, ohne das Dokument auf den Client Rechner transferieren zu müssen. Dies ist momentan für die Enterprise Version nicht verfügbar.
  • HTML Preview – Eine Funktion, Office Dokumente und PDF’s auf dem Advanced Access Control Server in “non cachable HTML” umzuwandeln, so dass vertrauliche Informationen nicht in den Browsercache gelangen können. Da es sich hier um einen Windows Funktionalität handelt, bezweifle ich, dass dies jemals in der Enterprise Edition verfügbar sein wird.

Abschliessend kann daher gesagt werden, dass die Enterprise Edition vor allem in grossen Installationen über 500 gleichzeitigen Usern eine interessante Alternative zur Advanced Edition darstellt. Im Moment sind jedoch noch bei weitem nicht alle Features der Standard und Advanced Edition implementiert, so dass diese Versionen eventuell besser in ihre Umgebung passen. Citrix arbeitet jedoch mit Hochdruck daran, diese Lücken so schnell wie möglich zu füllen.

Gruss
Ecki

Jay Tomlin wrote an excelent article on this topic. You can find it here:

Jay Tomlin – Timpanogos

Regards
Ecki

|