<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JasonSamuel.com</title>
	<atom:link href="http://www.jasonsamuel.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jasonsamuel.com</link>
	<description>Cool stuff I see in the IT world</description>
	<lastBuildDate>Tue, 17 Apr 2012 20:58:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Disabling passthrough authentication in ICA files when using Citrix Receiver Enterprise</title>
		<link>http://www.jasonsamuel.com/2012/04/17/disabling-passthrough-authentication-in-ica-files-when-using-citrix-receiver-enterprise/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=disabling-passthrough-authentication-in-ica-files-when-using-citrix-receiver-enterprise</link>
		<comments>http://www.jasonsamuel.com/2012/04/17/disabling-passthrough-authentication-in-ica-files-when-using-citrix-receiver-enterprise/#comments</comments>
		<pubDate>Tue, 17 Apr 2012 20:56:41 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[citrix receiver]]></category>
		<category><![CDATA[citrix xenapp]]></category>
		<category><![CDATA[ICA]]></category>
		<category><![CDATA[ica file]]></category>
		<category><![CDATA[passthrough authentication]]></category>
		<category><![CDATA[xenapp]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1664</guid>
		<description><![CDATA[If you are using ICA files to connect to a XenApp farm for whatever reason, and you are running Citrix Receiver Enterprise, it will attempt to passthrough credentials by default if you have setup Receiver to allow passthrough authentication using the ADM template. This is bad when you are trying to connect to a different [...]<p><a href="http://www.jasonsamuel.com/2012/04/17/disabling-passthrough-authentication-in-ica-files-when-using-citrix-receiver-enterprise/">Disabling passthrough authentication in ICA files when using Citrix Receiver Enterprise</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2011/11/21/how-to-fix-the-tabctl32-ocx-is-not-registered-error-when-using-the-citrix-quick-launch-tool/' rel='bookmark' title='How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool'>How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool</a></li>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>If you are using ICA files to connect to a XenApp farm for whatever reason, and you are running Citrix Receiver Enterprise, it will attempt to passthrough credentials by default if you have setup Receiver to allow passthrough authentication using the ADM template.  This is bad when you are trying to connect to a different domain because you will get the &#8220;The user name or password is incorrect&#8221; logon error message every time you launch the ICA file.  It is trying to pass the wrong credentials:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/ICA-passthrough-authentication-Receiver-1.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/ICA-passthrough-authentication-Receiver-1-300x260.jpg" alt="" title="ICA-passthrough-authentication-Receiver-1" width="300" height="260" class="aligncenter size-medium wp-image-1665" /></a></p>
<p>You really don&#8217;t want to change your ADM file settings because that will break functionality for other things.  The best way around this is to add these two lines to your ICA file:</p>
<p><pre><code>
UseLocalUserAndPassword=Off
AutoLogonAllowed=Off
</code></pre></p>
<p>Once you do that, launching the ICA file will work correctly and will show the domain the server is a member of:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/ICA-passthrough-authentication-Receiver-2.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/ICA-passthrough-authentication-Receiver-2-300x260.jpg" alt="" title="ICA-passthrough-authentication-Receiver-2" width="300" height="260" class="aligncenter size-medium wp-image-1666" /></a></p>
<p><a href="http://www.jasonsamuel.com/2012/04/17/disabling-passthrough-authentication-in-ica-files-when-using-citrix-receiver-enterprise/">Disabling passthrough authentication in ICA files when using Citrix Receiver Enterprise</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2011/11/21/how-to-fix-the-tabctl32-ocx-is-not-registered-error-when-using-the-citrix-quick-launch-tool/' rel='bookmark' title='How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool'>How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool</a></li>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/04/17/disabling-passthrough-authentication-in-ica-files-when-using-citrix-receiver-enterprise/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to setup your Citrix Netscaler (Access Gateway) and Web Interface for iPads and mobile devices that use Citrix Receiver</title>
		<link>http://www.jasonsamuel.com/2012/04/10/how-to-setup-your-citrix-netscaler-access-gateway-and-web-interface-for-ipads-and-mobile-devices-that-use-citrix-receiver/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-setup-your-citrix-netscaler-access-gateway-and-web-interface-for-ipads-and-mobile-devices-that-use-citrix-receiver</link>
		<comments>http://www.jasonsamuel.com/2012/04/10/how-to-setup-your-citrix-netscaler-access-gateway-and-web-interface-for-ipads-and-mobile-devices-that-use-citrix-receiver/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 20:46:37 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix NetScaler]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[Citrix XenDesktop]]></category>
		<category><![CDATA[agee]]></category>
		<category><![CDATA[cag]]></category>
		<category><![CDATA[citrix access gateway]]></category>
		<category><![CDATA[citrix netscaler]]></category>
		<category><![CDATA[citrix receiver]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[ipads]]></category>
		<category><![CDATA[web interface]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1619</guid>
		<description><![CDATA[So you want to give iPads, iPhones, Android phones and other mobile devices and tablets that have Citrix Receiver access to your enterprise infrastructure securely. This can be done pretty easily using a Netscaler and the Access Gateway (aka CAG/Citrix Access Gateway, AGEE/Access Gateway Enterprise Edition) which is an SSL VPN among other things. First [...]<p><a href="http://www.jasonsamuel.com/2012/04/10/how-to-setup-your-citrix-netscaler-access-gateway-and-web-interface-for-ipads-and-mobile-devices-that-use-citrix-receiver/">How to setup your Citrix Netscaler (Access Gateway) and Web Interface for iPads and mobile devices that use Citrix Receiver</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2010/07/09/how-to-monitor-realtime-traffic-stats-accurately-on-a-citrix-netscaler/' rel='bookmark' title='How to monitor realtime traffic stats accurately on a Citrix Netscaler'>How to monitor realtime traffic stats accurately on a Citrix Netscaler</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>So you want to give iPads, iPhones, Android phones and other mobile devices and tablets that have Citrix Receiver access to your enterprise infrastructure securely.  This can be done pretty easily using a Netscaler and the Access Gateway (aka CAG/Citrix Access Gateway, AGEE/Access Gateway Enterprise Edition) which is an SSL VPN among other things.  First you need to prep your Citrix Web Interfaces.  </p>
<p>In this example, I want users sitting inside the building with their iPads connected to the corporate WiFi direct access to XenApp and XenDesktop.  I want anyone external to have to come in through the Access Gateway to get access.  So I need to make sure I have 2 Services sites on my web interface:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/1.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/1-300x297.jpg" alt="" title="1" width="300" height="297" class="aligncenter size-medium wp-image-1621" /></a></p>
<p>The default site is PNAgent (which is a reference to the old legacy Program Neighborhood).  This services site is setup for Direct access and will service all my internal iPads and other devices that need it.  The second site is the one I created manually called &#8220;AccessGateway&#8221;. This one is setup as Gateway Direct mode.  This is the site that will be handling traffic from the CAG (Citrix Access Gateway):</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/2.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/2-300x298.jpg" alt="" title="2" width="300" height="298" class="aligncenter size-medium wp-image-1622" /></a></p>
<p>When you are setting up the site, just add the farms as you would any other site.  Nothing is different.  In my case, I am using port 8080 as the XML Service port:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/3.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/3-256x300.jpg" alt="" title="3" width="256" height="300" class="aligncenter size-medium wp-image-1623" /></a></p>
<p>Under Secure Access, hit Next:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/4.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/4-255x300.jpg" alt="" title="4" width="255" height="300" class="aligncenter size-medium wp-image-1624" /></a></p>
<p>Here you need to type in the FQDN that your iPads and other devices are all pointed to.  You need to type in the actual name, not the IP.  So in my example, I want my users to hit this URL in Citrix Receiver:</p>
<p><code>http:\\receiver.company.com</code></p>
<p>so in this box, I would type:</p>
<p><code>receiver.company.com</code></p>
<p>This is presented to your iPad and other devices through the Web Interface in the form of an ICA file later so it needs to be the same.  Also make sure to disable Session Reliability.  Session Reliability is not supported on iPad and other devices using Citrix Receiver.  So this means all ICA traffic will be on port 1494, not 2598.  So keep that in mind when opening up firewall ports:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/5.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/5-300x262.jpg" alt="" title="5" width="300" height="262" class="aligncenter size-medium wp-image-1625" /></a></p>
<p>The last page is to add the STAs (Secure Ticket Authorities).  You DO NOT need to add an STA from every farm you are connecting to.  Just 2-3 STAs for redundancies sake is enough.  It won&#8217;t be a whole lot of traffic.  All it will be used for is to pull the ticket hash value when a client hits the web interface and then later to validate that ticket.  In my case, I am using port 8080 for the XML Service port so that needs to reflect here in my STA URLs.  You may be using port 80 so you would not to enter the port.  In my example, it is:</p>
<p><code>http://servername:8080/scripts/ctxsta.dll</code></p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/6.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/6-300x263.jpg" alt="" title="6" width="300" height="263" class="aligncenter size-medium wp-image-1626" /></a></p>
<p>The ctxsta.dll is an ISAPI extension for IIS that will take the ticket request, process it, and send back the generated ticket.  When a user hits the Access Gateway and comes in through the web interface, the web interface will send this request to the STA.  Once the web interface gets the ticket (a random 32 character hash value) from the STA, it builds the ICA file to present back to the client and this value will be included.  Then validation occurs just before the actual ICA session is launched and the STA needs to validate the ticket.</p>
<p>So now that the web interface config is complete, it&#8217;s time to configure the Netscaler.  Go to the Access Gateway section and expand the Policies section.  Then click Session and click the Profiles tab at the top.  We are going to create a session profile first.  I will call the profile &#8220;CitrixReceiver_Profile&#8221;:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/9.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/9-300x269.jpg" alt="" title="9" width="300" height="269" class="aligncenter size-medium wp-image-1627" /></a></p>
<p>I don&#8217;t really needs to change anything in this profile except on the last tab, Published Applications.  Under Web Interface Address, I type in the URL to the web interface &#8220;Access Gateway&#8221; site I had create in the steps above earlier on the web interface.  But I need to make sure I point directly at the config.xml file which has all the configuration information in it for the Access Gateway to read.  So in my case, the URL is:</p>
<p><code>http://receiver.company.com/Citrix/AccessGateway/config.xml</code></p>
<p>Hit OK, and click the Policies tab.  Create a new session policy to filter out traffic and only allow Citrix Receiver traffic.  I will call my policy &#8220;CitrixReceiver_Policy&#8221;:  </p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/7.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/7-300x163.jpg" alt="" title="7" width="300" height="163" class="aligncenter size-medium wp-image-1628" /></a></p>
<p>The actual policy will look like this, notice how it looks at the TCP User-Agent header for &#8220;CitrixReceiver&#8221;.  For any other traffic, like a web browser for example, it will drop the packet.  Don&#8217;t forget to choose the &#8220;CitrixReceiver_Profile&#8221; you created so that it knows to pass Citrix Receiver traffic to your new &#8220;AccessGateway&#8221; services site:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/8.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/8-300x206.jpg" alt="" title="8" width="300" height="206" class="aligncenter size-medium wp-image-1629" /></a></p>
<p>Hit OK and you are done setting up policies.  Now go to Authentication under Policies and setup your Active Directory authentication.  For better security, I recommend RADIUS.  You will need to setup the policy and the back end server here:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/10.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/10-300x229.jpg" alt="" title="10" width="300" height="229" class="aligncenter size-medium wp-image-1630" /></a></p>
<p>Then go to your SSL certs and make you have a valid 3rd party SSL cert for your &#8220;http://receiver.company.com&#8221; website.  Traffic will be SSL encrypted and Citrix Receiver does not support self signed certs.  Make sure your intermediate and root certs are there and everything is linked properly.  Otherwsie your SSL chain will be broken which will lead to issues:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/11.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/11-300x252.jpg" alt="" title="11" width="300" height="252" class="aligncenter size-medium wp-image-1631" /></a></p>
<p>Now that we have all the pieces in place, it&#8217;s finally time to configure our Access Gateway virtual server.  So go to Access Gateway > Virtual Servers > and hit Add.  Give it a name, IP address, leave it on port 443, leave the protocol as SSL, and add your SSL cert over to the column in the right.  It should look something like this.  And yes, Down State Flush is unchecked meaning if the vserver goes down, TCP sockets will remain active and won&#8217;t immediately be disconnected.  You don&#8217;t have to uncheck it though:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/12.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/12-300x208.jpg" alt="" title="12" width="300" height="208" class="aligncenter size-medium wp-image-1632" /></a></p>
<p>Now click the Authentication tab, and add your Authentication Policy:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/13.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/13-300x243.jpg" alt="" title="13" width="300" height="243" class="aligncenter size-medium wp-image-1633" /></a></p>
<p>Now click on Policies and add your Citrix Receiver policy.  By default, the priority will be 0 which is actually last.  Doesn&#8217;t matter if you only have 1 policy but if you add more, you might forget to change it then.  So just set it as 10 for now:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/14.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/14-300x244.jpg" alt="" title="14" width="300" height="244" class="aligncenter size-medium wp-image-1634" /></a></p>
<p>Now lastly, you need to add your STAs under the Published Applications tab. The same exact STAs you specified in your web interface several steps above.  Again, I am using port 8080 for my XML Service so I have specified it here after each server name.  Once you are done, press OK and then immediately open the virtual server again, go to the Published Applications tab, and you will see the green arrow and the word &#8220;UP&#8221; next to each STA.  You will also see it has pulled the identifier down:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/15.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/15-300x243.jpg" alt="" title="15" width="300" height="243" class="aligncenter size-medium wp-image-1635" /></a></p>
<p>And now you&#8217;re done with the config!  Don&#8217;t forget to open up firewall ports.  In the DMZ, you will need 443 to come through and hit the Access Gateway URL (receiver.company.com in my case).  From the Netscaler SNIP (subnet IP), not the Access Gateway virtual server IP, you need the XML Service port (8080 in my case but 80 if you left it default) open to all the STA servers you specified.  You also need ICA (port 1494) open to all your XenApp application servers or XenDesktop VMs open from the SNIP as well.  Lastly, you need to open up port 80 from the Netscaler SNIP to your web interface for HTTP traffic.  Just remember, the SNIP is the one communicating to your internal servers, not the Access Gateway VIP so don&#8217;t get confused when adding your firewall rules.  The only exception would be authentication (LDAP, RADIUS, etc.).  This traffic comes from the NSIP (Netscaler management IP), not the SNIP or MIP.  So take this into consideration when opening your ports.</p>
<p>Now to test!  Open up Receiver in your iPad and type the URL, in my case &#8220;receiver.company.com&#8221;. Set your credentials and connect.  If you did everything right, it should enumerate all the apps on all the farms you had specified on your &#8220;AccessGateway&#8221; services site.  Click an app and it should launch just fine.</p>
<p>You can do an nstrace (packet capture) on the Netscaler itself to verify and also as a troubleshooting step if something isn&#8217;t working as expected. Pull the capture file over and use Wireshark to read and filter it.  Remember above when you were setting up your services site and had the type the FQDN name and I mentioned this is important because it is passed back to the iPad in the ICA file?  Well here it is, the red arrow is where it appears under &#8220;SSLProxyHost&#8221;:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/16.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/16-300x300.jpg" alt="" title="16" width="300" height="300" class="aligncenter size-medium wp-image-1642" /></a></p>
<p>And don&#8217;t forget to apply your CAG licenses.  You might have only licensed the appliance itself and said to yourself you would apply the CAG licenses later&#8230;yes I&#8217;m guilty of this. By default you can only have 5 simultaneous CAG users so don&#8217;t forget to apply the license before releasing to production. <img src='http://www.jasonsamuel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   You need to also make a decision of SmartAccess/CCU/Universal licenses vs basic licenses.  If using basic licenses, you can set it up for up to 10,000 concurrent users, here is a great KB from Citrix on how to do this:</p>
<p><a href="http://support.citrix.com/article/CTX125567">http://support.citrix.com/article/CTX125567</a></p>
<p>And what if nothing works after going through all these steps?  Well it can be any number of reasons.  Citrix has an excellent troubleshooting PDF available here called &#8220;Citrix Receiver for Mobile Devices Troubleshooting Guide&#8221; with plenty of screenshots.  It is extremely helpful:</p>
<p><a href="http://support.citrix.com/article/CTX125533">http://support.citrix.com/article/CTX125533</a></p>
<p>Try flipping through it and if you can&#8217;t figure it out, post here and I can see if I can help.</p>
<p>***UPDATE***<br />
One last bit of info.  If you want to only allow mobile devices with Citrix Receiver installed and have regular browser traffic (IE, Chrome, Firefox, etc.) redirected somewhere else, it&#8217;s pretty easy to do.  For your port 80 traffic, you need to create a load balanced virtual server on the same IP as your Access Gateway virtual server.  The effective state will be down since you will not add any services or service groups to it.  Under the Advanced tab, set a Redirect URL to the site you want to redirect your PC browser users to.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/17.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/17-300x163.jpg" alt="" title="17" width="300" height="163" class="aligncenter size-medium wp-image-1652" /></a></p>
<p>Now for port 443 traffic, the Access Gateway virtual server will be servicing that traffic.  Unfortunately Access Gateway vservers do not support Responder policies.  The quick way of getting around this is creating a Responder policy and binding it globally instead.  In my case, I created the following Responder policy to redirect any traffic that is not detected to be from Citrix Receiver:</p>
<p><code>HTTP.REQ.HEADER(&quot;User-Agent&quot;).SET_TEXT_MODE(IGNORECASE).REGEX_MATCH(re/CitrixReceiver/).NOT</code></p>
<p>and if it can&#8217;t figure out the User Agent, it will drop the packet per the Undefined Result action:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/18.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/18-300x145.jpg" alt="" title="18" width="300" height="145" class="aligncenter size-medium wp-image-1653" /></a></p>
<p>For the action, I set it to redirect to the URL I want browser users to end up on:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/19.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/19-300x193.jpg" alt="" title="19" width="300" height="193" class="aligncenter size-medium wp-image-1654" /></a></p>
<p>And then you can bind it globally:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/04/20.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/04/20-300x216.jpg" alt="" title="20" width="300" height="216" class="aligncenter size-medium wp-image-1655" /></a></p>
<p>Now all my Citrix Receiver SSL traffic will hit the Access Gateway vserver and regular browser based SSL traffic will be redirected to the URL I specified.  What&#8217;s cool about this is that as you test it, the hit count should increase on the policy.  Just be careful binding a policy like this globally since it will impact every vserver on your Netscaler.  It works fine in my scenario because this particular appliance is dedicated for Access Gateway connections only.</p>
<p><a href="http://www.jasonsamuel.com/2012/04/10/how-to-setup-your-citrix-netscaler-access-gateway-and-web-interface-for-ipads-and-mobile-devices-that-use-citrix-receiver/">How to setup your Citrix Netscaler (Access Gateway) and Web Interface for iPads and mobile devices that use Citrix Receiver</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2010/07/09/how-to-monitor-realtime-traffic-stats-accurately-on-a-citrix-netscaler/' rel='bookmark' title='How to monitor realtime traffic stats accurately on a Citrix Netscaler'>How to monitor realtime traffic stats accurately on a Citrix Netscaler</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/04/10/how-to-setup-your-citrix-netscaler-access-gateway-and-web-interface-for-ipads-and-mobile-devices-that-use-citrix-receiver/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Script to make your Citrix XenApp servers run better with SEP antivirus</title>
		<link>http://www.jasonsamuel.com/2012/03/16/script-to-make-your-citrix-xenapp-servers-run-better-with-sep-antivirus/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=script-to-make-your-citrix-xenapp-servers-run-better-with-sep-antivirus</link>
		<comments>http://www.jasonsamuel.com/2012/03/16/script-to-make-your-citrix-xenapp-servers-run-better-with-sep-antivirus/#comments</comments>
		<pubDate>Fri, 16 Mar 2012 20:47:17 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[citrix xenapp]]></category>
		<category><![CDATA[sep]]></category>
		<category><![CDATA[symantec antivirus]]></category>
		<category><![CDATA[symantec endpoint protection]]></category>
		<category><![CDATA[terminal servers]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1592</guid>
		<description><![CDATA[If you use SEP (Symantec Endpoint Protection) on your Citrix servers, you will notice that performance on your server takes a huge hit if you leave Symantec as is. Specifically increased RAM and CPU usage caused by multiple instances of SmcGui.exe and ccApp.exe processes for all the connected sessions. Symantec has a great KB article [...]<p><a href="http://www.jasonsamuel.com/2012/03/16/script-to-make-your-citrix-xenapp-servers-run-better-with-sep-antivirus/">Script to make your Citrix XenApp servers run better with SEP antivirus</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/' rel='bookmark' title='How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms'>How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/' rel='bookmark' title='How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5'>How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>If you use SEP (Symantec Endpoint Protection) on your Citrix servers, you will notice that performance on your server takes a huge hit if you leave Symantec as is.  Specifically increased RAM and CPU usage caused by multiple instances of SmcGui.exe and ccApp.exe processes for all the connected sessions.</p>
<p>Symantec has a great KB article here that addresses this:</p>
<p><a href="http://www.symantec.com/business/support/index?page=content&#038;id=TECH105060">http://www.symantec.com/business/support/index?page=content&#038;id=TECH105060</a></p>
<p>You can disable SmcGui to prevent multiple instances of it running by adding following DWORD registry value on your Citrix server:</p>
<p><code>HKLM\SOFTWARE\Symantec\Symantec Endpoint Protection\SMC\LaunchSmcGui</code></p>
<p>and setting the value to 0.  You can also disable ccAPP by deleting the ccApp entry at the following keys:</p>
<p>32 bit:<br />
<code>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run </code></p>
<p>64 bit:<br />
<code>HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run</code></p>
<p>I didn&#8217;t want to go to each Citrix server and verify and/or make these changes manually so I created this little bat script I can execute remotely on each Server 2008 R2 box (you&#8217;ll want to modify for 32 bit boxes):</p>
<p><pre><code>:: Disable SmcGui
reg add &quot;HKEY_LOCAL_MACHINE\Software\Symantec\Symantec Endpoint Protection\SMC&quot;
 /v LaunchSmcGui /t reg_dword /d 0x0 /f

:: Disable ccApp
reg delete &quot;HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows
\CurrentVersion\Run&quot; /v ccApp /f</code></pre></p>
<p>Now when building a new XenApp server (i.e. not from a template), I wanted to use this same script as a &#8220;post-install script&#8221; after installing XenApp but with a few other things included.  One thing I wanted is to set the Terminal Server roaming profile path (assuming you are not doing it with GPO already).  So I add this to the script:</p>
<p><pre><code>:: Set TSProf to our TS profile shares
setx tsprof \\fileservername\tsprofiles$ -m</code></pre></p>
<p>I also want to install my EdgeSight agent at this time.  I wrote a a few installs script for this already in my post here:</p>
<p><a href="http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/">http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/</a></p>
<p>so I will call on these bat scripts from the script I am writing now.  But I want it to pause and let me verify that the Symantec changes happened successfully.  So I add this first:</p>
<p><pre><code>@ECHO OFF
ECHO Script is paused before EdgeSight install begins, verify all the 
things above executed successfully.&nbsp;&nbsp;Press any key to begin EdgeSight
 agent install...
@ECHO ON
pause</code></pre></p>
<p>then finally I call on the EdgeSight agent install script (which will reboot your system after installing automatically).  I have it shared off my EdgeSight server under the &#8220;XENAPP_AGENT&#8221; share so my script looks like:</p>
<p><pre><code>
:: Kick off EdgeSight agent install
call &quot;\\edgesightservername\XENAPP_AGENT\2008 R2 XA6Plus agent install 
script.bat&quot;</code></pre></p>
<p>So my final script will look like this screenshot:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/03/xenapp-symantec-sep-script.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/03/xenapp-symantec-sep-script-300x100.jpg" alt="" title="xenapp-symantec-sep-script" width="300" height="100" class="aligncenter size-medium wp-image-1597" /></a></p>
<p>Hope this helps.  Let me know if there is anything that any of you would like to see added.</p>
<p><a href="http://www.jasonsamuel.com/2012/03/16/script-to-make-your-citrix-xenapp-servers-run-better-with-sep-antivirus/">Script to make your Citrix XenApp servers run better with SEP antivirus</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/' rel='bookmark' title='How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms'>How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/' rel='bookmark' title='How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5'>How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/03/16/script-to-make-your-citrix-xenapp-servers-run-better-with-sep-antivirus/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HP iLO Mobile App for iOS &amp; Android released</title>
		<link>http://www.jasonsamuel.com/2012/02/24/hp-ilo-mobile-app-for-ios-android-released/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hp-ilo-mobile-app-for-ios-android-released</link>
		<comments>http://www.jasonsamuel.com/2012/02/24/hp-ilo-mobile-app-for-ios-android-released/#comments</comments>
		<pubDate>Fri, 24 Feb 2012 21:12:44 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[HP iLO mobile toolbox]]></category>
		<category><![CDATA[iLO]]></category>
		<category><![CDATA[iLO Mobile App]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1557</guid>
		<description><![CDATA[HP released a free mobile app to manage iLO last week and I have to say, it is pretty slick. I&#8217;ve tried it on the iPad 2, iPhone 4S, and an Android Gingerbread phone so far (and all over WiFi). The screen and mouse are very responsive when consoling into a server and you also [...]<p><a href="http://www.jasonsamuel.com/2012/02/24/hp-ilo-mobile-app-for-ios-android-released/">HP iLO Mobile App for iOS &#038; Android released</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
]]></description>
			<content:encoded><![CDATA[<p>HP released a free mobile app to manage iLO last week and I have to say, it is pretty slick.  I&#8217;ve tried it on the iPad 2, iPhone 4S, and an Android Gingerbread phone so far (and all over WiFi).  The screen and mouse are very responsive when consoling into a server and you also get the full iLO console available to you.</p>
<p>You can find more info on HP&#8217;s website here:<br />
<a href="http://h18004.www1.hp.com/products/servers/management/ilo/mobile/index.html">http://h18004.www1.hp.com/products/servers/management/ilo/mobile/index.html</a></p>
<p>Apple App Store download link:<br />
<a href="http://itunes.apple.com/gb/app/hp-ilo-mobile-toolbox/id497560256?mt=8&#038;ign-mpt=uo%3D2">http://itunes.apple.com/gb/app/hp-ilo-mobile-toolbox/id497560256?mt=8&#038;ign-mpt=uo%3D2</a></p>
<p>Android Market download link:<br />
<a href="https://market.android.com/details?id=com.hp.essn.iss.ilo.iec.spa&#038;feature=search_result">https://market.android.com/details?id=com.hp.essn.iss.ilo.iec.spa&#038;feature=search_result</a></p>
<p>What I really love about it is that it saves your connection info and even pulls down the type of hardware the server is so for future use, all of it is in the app already for you.  I hope they give you an option to import a list of servers in bulk at some point.  Or maybe synch the iLO connection list across multiple devices.</p>
<p>Here are the features from HP&#8217;s website:</p>
<p><strong>Connect:</strong><br />
Supported Servers<br />
• ProLiant G7 Servers (iLO 3 Advanced)<br />
Supported Mobile OS&#8217;s<br />
• iOS 4.3 or greater<br />
• Android 2.2 or greater</p>
<p><strong>Manage:</strong><br />
• Operate the server power switch.<br />
• Use the Remote Console to interact with the operating system, including BIOS and ROM configuration changes.<br />
• Mount an ISO CD/DVD image. The disk image is available on the server as a USB CD/DVD drive. You can boot from the disk image and deploy an operating system.<br />
• Launch HP iLO scripts and monitor their progress.<br />
• Access the iLO web interface.<br />
• Store the list of servers you want to manage.</p>
<p>Here&#8217;s my &#8220;Sys Admin&#8221; iPad with the iLO console open connected to a G7 Blade.  How cool is this?</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/02/hp-ilo-mobile-app-ipad3.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/02/hp-ilo-mobile-app-ipad3.jpg" alt="" title="hp-ilo-mobile-app-ipad" width="600" height="389" class="aligncenter size-full wp-image-1581" /></a></p>
<p>Here&#8217;s a few other shots from the user guide and app store screen shots:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/02/1.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/02/1.jpg" alt="" title="1" width="257" height="383" class="aligncenter size-full wp-image-1558" /></a></p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/02/2.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/02/2.jpg" alt="" title="2" width="384" height="256" class="aligncenter size-full wp-image-1559" /></a></p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/02/7.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/02/7.jpg" alt="" title="7" width="480" height="351" class="aligncenter size-full wp-image-1571" /></a></p>
<p>Here&#8217;s a shot launching an iLO RIBCL script:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/02/3.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/02/3.jpg" alt="" title="3" width="256" height="384" class="aligncenter size-full wp-image-1560" /></a></p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/02/6.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/02/6.jpg" alt="" title="6" width="334" height="480" class="aligncenter size-full wp-image-1585" /></a></p>
<p><a href="http://www.jasonsamuel.com/2012/02/24/hp-ilo-mobile-app-for-ios-android-released/">HP iLO Mobile App for iOS &#038; Android released</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/02/24/hp-ilo-mobile-app-for-ios-android-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changing SQL account name, password, or database server name in XenApp 6.5</title>
		<link>http://www.jasonsamuel.com/2012/01/25/changing-sql-account-name-password-or-database-server-name-in-xenapp-6-5/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=changing-sql-account-name-password-or-database-server-name-in-xenapp-6-5</link>
		<comments>http://www.jasonsamuel.com/2012/01/25/changing-sql-account-name-password-or-database-server-name-in-xenapp-6-5/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 21:03:16 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[citrix xenapp]]></category>
		<category><![CDATA[dsmaint]]></category>
		<category><![CDATA[ima service]]></category>
		<category><![CDATA[sql server]]></category>
		<category><![CDATA[xenapp sql datastore]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1552</guid>
		<description><![CDATA[If you have a Citrix XenApp environment and change your SQL server, you will need to edit your mf20.dsn with the new server name. Located at: C:\Program Files (x86)\Citrix\Independent Management Architecture\mf20.dsn If you changed your SQL credentials, you will need to specify the new user name as well here. If you just change the password [...]<p><a href="http://www.jasonsamuel.com/2012/01/25/changing-sql-account-name-password-or-database-server-name-in-xenapp-6-5/">Changing SQL account name, password, or database server name in XenApp 6.5</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/09/getting-admin-access-on-a-sql-server-when-you-dont-know-the-sa-account-password/' rel='bookmark' title='Getting admin access on a SQL Server when you don&#8217;t know the SA account password'>Getting admin access on a SQL Server when you don&#8217;t know the SA account password</a></li>
<li><a href='http://www.jasonsamuel.com/2009/12/02/how-to-reset-the-root-user-account-for-a-mysql-database/' rel='bookmark' title='How to reset the root user account for a MySQL database'>How to reset the root user account for a MySQL database</a></li>
<li><a href='http://www.jasonsamuel.com/2009/08/11/changing-the-host-header-for-an-already-existing-sharepoint-site-application/' rel='bookmark' title='Changing the host header for an already existing Sharepoint site/application'>Changing the host header for an already existing Sharepoint site/application</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>If you have a Citrix XenApp environment and change your SQL server, you will need to edit your mf20.dsn with the new server name.  Located at:</p>
<p><code>C:\Program Files (x86)\Citrix\Independent Management Architecture\mf20.dsn</code></p>
<p>If you changed your SQL credentials, you will need to specify the new user name as well here.  If you just change the password only and nothing else, you don&#8217;t need to edit your mf20.dsn file.  But you will still need to set the new password or the IMA Service won&#8217;t start.  </p>
<p>Once you make whatever changes you need to the mf20.dsn or not if it&#8217;s just a password change, do the following:</p>
<p>1. Go to Services and stop the IMA service (Citrix Independent Management Architecture) if it is still running.</p>
<p>2. Open command line and Navigate to:</p>
<p><code>C:\Program Files (x86)\Citrix\Independent Management Architecture</code></p>
<p>3. Type:</p>
<p><code>dsmaint config /user:yourdomain\youraccount /pwd:yourpassword /dsn:&quot;C:\Program Files (x86)\Citrix\Independent Management Architecture\mf20.dsn&quot;</code></p>
<p>4. Restart the IMA Service</p>
<p>5. You can also recreate the local host cache database (LHC database) if you have issues starting the IMA service after this.  Type:</p>
<p><code>dsmaint recreatelhc</code></p>
<p>then restart the IMA Service.  It will populate the cache immediately with info from the datastore.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/dsmaint-config-citrix.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/dsmaint-config-citrix.jpg" alt="" title="dsmaint-config-citrix" width="667" height="163" class="aligncenter size-full wp-image-1553" /></a></p>
<p><a href="http://www.jasonsamuel.com/2012/01/25/changing-sql-account-name-password-or-database-server-name-in-xenapp-6-5/">Changing SQL account name, password, or database server name in XenApp 6.5</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/09/getting-admin-access-on-a-sql-server-when-you-dont-know-the-sa-account-password/' rel='bookmark' title='Getting admin access on a SQL Server when you don&#8217;t know the SA account password'>Getting admin access on a SQL Server when you don&#8217;t know the SA account password</a></li>
<li><a href='http://www.jasonsamuel.com/2009/12/02/how-to-reset-the-root-user-account-for-a-mysql-database/' rel='bookmark' title='How to reset the root user account for a MySQL database'>How to reset the root user account for a MySQL database</a></li>
<li><a href='http://www.jasonsamuel.com/2009/08/11/changing-the-host-header-for-an-already-existing-sharepoint-site-application/' rel='bookmark' title='Changing the host header for an already existing Sharepoint site/application'>Changing the host header for an already existing Sharepoint site/application</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/01/25/changing-sql-account-name-password-or-database-server-name-in-xenapp-6-5/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Citrix XenServer and StorageLink SSL cert error caused by expired SSL certificate</title>
		<link>http://www.jasonsamuel.com/2012/01/19/citrix-xenserver-and-storagelink-ssl-cert-error-caused-by-expired-ssl-certificate/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=citrix-xenserver-and-storagelink-ssl-cert-error-caused-by-expired-ssl-certificate</link>
		<comments>http://www.jasonsamuel.com/2012/01/19/citrix-xenserver-and-storagelink-ssl-cert-error-caused-by-expired-ssl-certificate/#comments</comments>
		<pubDate>Fri, 20 Jan 2012 03:30:54 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[Citrix XenDesktop]]></category>
		<category><![CDATA[Citrix XenServer]]></category>
		<category><![CDATA[certificate verify failed]]></category>
		<category><![CDATA[citrix storagelink]]></category>
		<category><![CDATA[citrix storagelink gateway]]></category>
		<category><![CDATA[citrix xencenter]]></category>
		<category><![CDATA[citrix xenserver]]></category>
		<category><![CDATA[SSL certificate]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1512</guid>
		<description><![CDATA[When you try to start a VM in XenServer that talks to a StorageLink Gateway server, you get: 1/19/2012 x:xx:xx PM Error: Starting VM &#039;xxxxxx&#039; - Storage assignment failed (SSL_ERROR_SSL error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed) in the XenCenter log. You can verify the SSL cert by opening up the following in a browser window and replacing [...]<p><a href="http://www.jasonsamuel.com/2012/01/19/citrix-xenserver-and-storagelink-ssl-cert-error-caused-by-expired-ssl-certificate/">Citrix XenServer and StorageLink SSL cert error caused by expired SSL certificate</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2010/08/05/how-to-create-and-link-an-ssl-certificate-chain-for-a-citrix-netscaler/' rel='bookmark' title='How to create and link an SSL certificate chain for a Citrix Netscaler'>How to create and link an SSL certificate chain for a Citrix Netscaler</a></li>
<li><a href='http://www.jasonsamuel.com/2011/03/07/how-to-properly-use-ssl-redirects-without-getting-certificate-error-messages/' rel='bookmark' title='How to properly use SSL redirects without getting certificate error messages'>How to properly use SSL redirects without getting certificate error messages</a></li>
<li><a href='http://www.jasonsamuel.com/2010/06/02/how-to-install-an-ssl-cert-chain-on-a-cisco-wireless-lan-controller-wlc/' rel='bookmark' title='How to install an SSL cert chain on a Cisco Wireless Lan Controller (WLC)'>How to install an SSL cert chain on a Cisco Wireless Lan Controller (WLC)</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>When you try to start a VM in XenServer that talks to a StorageLink Gateway server, you get:</p>
<p><pre><code>1/19/2012 x:xx:xx PM Error: Starting VM &#039;xxxxxx&#039; - Storage assignment failed
(SSL_ERROR_SSL error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate
verify failed)</code></pre></p>
<p>in the XenCenter log.  You can verify the SSL cert by opening up the following in a browser window and replacing the x&#8217;s below with your StorageLink server&#8217;s IP address:</p>
<p>https://xxx.xxx.xxx.xxx:21605</p>
<p>You will get a cert error message in your browser.  Notice the Citrix CVSM SSL certificate issued on 1/19/2009 has expired today 1/19/2012 at 20:25:53 PM (GMT) which is 2:25 PM Central Standard Time.  So basically any VM you try to turn on, reboot, or migrate after the cert expired will not work and return the SSL error above in the XenCenter log.  Yeah, big problem.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/citrix-storagelink-ssl-certificate-expired-verify-error.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/citrix-storagelink-ssl-certificate-expired-verify-error.jpg" alt="" title="citrix-storagelink-ssl-certificate-expired-verify-error" width="408" height="504" class="aligncenter size-full wp-image-1532" /></a></p>
<p>I was the first to call in about this issue soon after the cert expired apparently.  As I was on the phone troubleshooting this with the support engineer, others began calling in with the same problem.  We have escalated it to the highest level at Citrix support and have been assured a workaround and a new cert are both being worked on and something should be available tomorrow morning.  This is going to impact pretty much all StorageLink customers globally so trust me, they are working on it.  Over the past several hours, I have tried numerous workarounds myself but been unable to get a full fix yet.  I&#8217;ve tried self signed certs using OpenSSL, IIS &#038; SelfSSL, etc. but to no avail so far.  The StorageLink Gateway does not use a web server such as lighttpd, Apache, Tomcat, etc.  either so I can&#8217;t force it to use another set of certs on that end.  Apparently it uses API calls.  When you restart the services, you will notice it copies the following SSL certs which are the culprits (into memory I&#8217;m guessing).  I used Process Monitor to verify:</p>
<p><pre><code>D:\Program Files (x86)\Citrix\StorageLink\Server\cacert.pem

D:\Program Files (x86)\Citrix\StorageLink\Server\server.pem</code></pre></p>
<p>I actually did manage to get a little further than I thought on the handful of workarounds I tried, but nothing completely successful yet to regain functionality while we wait for a hotfix.  If you want to try playing with the certs yourself, just remember to restart the StorageLink services after you swap out the certs each time so it pulls them in.  XenCenter should see the SSL cert change and prompt you almost immediately with a warning message.  </p>
<p>I will keep this post updated with the latest developments.  Please post if you are having the same issue or come up with a temporary fix.  In the meantime, call Citrix and open a case so you are in the loop when the fix is released.</p>
<p><strong>UPDATE January, 24th, 2012</strong> &#8211; Citrix has published the fix:</p>
<p><a href="http://support.citrix.com/article/CTX131994">http://support.citrix.com/article/CTX131994</a></p>
<p>Apply the certs using the instructions in the KB.  Shouldn&#8217;t take long at all.</p>
<p><a href="http://www.jasonsamuel.com/2012/01/19/citrix-xenserver-and-storagelink-ssl-cert-error-caused-by-expired-ssl-certificate/">Citrix XenServer and StorageLink SSL cert error caused by expired SSL certificate</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2010/08/05/how-to-create-and-link-an-ssl-certificate-chain-for-a-citrix-netscaler/' rel='bookmark' title='How to create and link an SSL certificate chain for a Citrix Netscaler'>How to create and link an SSL certificate chain for a Citrix Netscaler</a></li>
<li><a href='http://www.jasonsamuel.com/2011/03/07/how-to-properly-use-ssl-redirects-without-getting-certificate-error-messages/' rel='bookmark' title='How to properly use SSL redirects without getting certificate error messages'>How to properly use SSL redirects without getting certificate error messages</a></li>
<li><a href='http://www.jasonsamuel.com/2010/06/02/how-to-install-an-ssl-cert-chain-on-a-cisco-wireless-lan-controller-wlc/' rel='bookmark' title='How to install an SSL cert chain on a Cisco Wireless Lan Controller (WLC)'>How to install an SSL cert chain on a Cisco Wireless Lan Controller (WLC)</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/01/19/citrix-xenserver-and-storagelink-ssl-cert-error-caused-by-expired-ssl-certificate/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5</title>
		<link>http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5</link>
		<comments>http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 18:29:48 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[Citrix XenDesktop]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[xenapp]]></category>
		<category><![CDATA[xendesktop]]></category>
		<category><![CDATA[xml service trust]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1493</guid>
		<description><![CDATA[When you login to your web interface and launch a new desktop, it might not launch and you might get this error in the application event log on the server: Source: Citrix Web Interface Event ID: 30105&#160;&#160; The Citrix servers do not trust the server. This message was reported from the XML Service at address [...]<p><a href="http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/">How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/11/21/how-to-fix-the-tabctl32-ocx-is-not-registered-error-when-using-the-citrix-quick-launch-tool/' rel='bookmark' title='How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool'>How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2011/10/26/how-to-force-an-uninstall-of-citrix-xenapp-or-presentation-server-via-command-line/' rel='bookmark' title='How to force an uninstall of Citrix XenApp or Presentation Server via command line'>How to force an uninstall of Citrix XenApp or Presentation Server via command line</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>When you login to your web interface and launch a new desktop, it might not launch and you might get this error in the application event log on the server:</p>
<p><pre><code>
Source: Citrix Web Interface
Event ID: 30105&nbsp;&nbsp;
The Citrix servers do not trust the server. This message was reported from
the XML Service at address http://localhost/scripts/wpnbr.dll
[com.citrix.xml.NFuseProtocol.RequestAddress].
&nbsp;&nbsp;[Unique Log ID: xxxxxxxx]
</code></pre></p>
<p>In previous versions of Presentation Server, the way to set the XML Trust was to go to your Access Management Console and edit the Properties of the each server.  There would be an &#8220;XML Service&#8221; property near the bottom in the left navigation you could click on.  Check the &#8220;Trust XML requests sent to the XML Service&#8221; box and hit OK.  For the whole farm, open up the farm Properties and go to Farm-wide > XenApp > General and check the &#8220;XML Service DNS address resolution&#8221; check box and hit OK.</p>
<p>In previous versions of XenDesktop, you could go to your DDC and open up the Delivery Services console, right click on the farm properties go to Farm-wide > Desktop Delivery Controller > General and check the &#8220;XML Service DNS address resolution&#8221; and hit OK.</p>
<p>In XenApp 6.0, 6.5, etc. you need to open Delivery Services Console or AppCenter and go to Policies and hit the Computer tab.  Edit the Unfiltered policy and find the XML Service near the bottom in the left hand navigation.  When you click it, you will see &#8220;Trust XML requests&#8221;. Hit Add and set it to &#8220;Enabled&#8221; so the Citrix XML Service will trust requests sent to it and hit OK.  </p>
<p>All this is from memory so if I missed something, let me know.  I don&#8217;t have any consoles in front of me for the different environments at the moment except Desktop Studio or I would post screenshots for you.  Let me know if you need them and I&#8217;ll take some screenshots this evening when I have a bit more time.</p>
<p>And now for the whole reason for this blog post.  In XenDesktop 5.0, 5.5, etc., the Desktop Studio console does not have this option if you look in the Unfiltered policy under HDX Policy.  That&#8217;s a totally different policy.  You have to set the XML Trust via PowerShell now. So to set an XML Trusts policy, open up PowerShell and if you haven&#8217;t already, add the Citrix snapin which will give you the ability to use the Citrix cmdlets:</p>
<p><code>asnp citrix.*</code></p>
<p>Now enable the XML Trust:</p>
<p><code>Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true</code></p>
<p>Done, if everything goes well, you should see no confirmation or error messages like this:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/citrix-trust-requests-xml-service-xendesktop.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/citrix-trust-requests-xml-service-xendesktop-300x27.jpg" alt="" title="citrix-trust-requests-xml-service-xendesktop" width="300" height="27" class="aligncenter size-medium wp-image-1495" /></a></p>
<p>Now if you logout of your web interface, log back in, then attempt to launch the desktop, it should come right up and there are no more errors in your application event log.</p>
<p><a href="http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/">How to fix the Error 30105 Citrix servers do not trust the server message in XenDesktop 5.5</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/11/21/how-to-fix-the-tabctl32-ocx-is-not-registered-error-when-using-the-citrix-quick-launch-tool/' rel='bookmark' title='How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool'>How to fix the TABCTL32.OCX is not registered error when using the Citrix Quick Launch tool</a></li>
<li><a href='http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/' rel='bookmark' title='How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver'>How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a></li>
<li><a href='http://www.jasonsamuel.com/2011/10/26/how-to-force-an-uninstall-of-citrix-xenapp-or-presentation-server-via-command-line/' rel='bookmark' title='How to force an uninstall of Citrix XenApp or Presentation Server via command line'>How to force an uninstall of Citrix XenApp or Presentation Server via command line</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/01/17/how-to-fix-the-error-30105-citrix-servers-do-not-trust-the-server-message-in-xendesktop-5-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to fix pass-through authentication &amp; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</title>
		<link>http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver</link>
		<comments>http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/#comments</comments>
		<pubDate>Thu, 05 Jan 2012 18:00:01 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[Citrix XenDesktop]]></category>
		<category><![CDATA[citrix receiver]]></category>
		<category><![CDATA[citrix xenapp]]></category>
		<category><![CDATA[citrix xendesktop]]></category>
		<category><![CDATA[icaclient.adm]]></category>
		<category><![CDATA[pass-through authentication]]></category>
		<category><![CDATA[passthrough authentication]]></category>
		<category><![CDATA[single sign on]]></category>
		<category><![CDATA[SSO]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1453</guid>
		<description><![CDATA[When you launch Internet Explorer and open your Citrix web interface page, you want it to pass through the user&#8217;s credentials and see all the available apps. When the user clicks on an app, it should launch immediately with no further prompts. Plain and simple. But this is not always the case unfortunately. Sometimes pass-through [...]<p><a href="http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/">How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
<li><a href='http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/' rel='bookmark' title='How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms'>How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms</a></li>
<li><a href='http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/' rel='bookmark' title='Getting Java web applications to work on Citrix XenApp'>Getting Java web applications to work on Citrix XenApp</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>When you launch Internet Explorer and open your Citrix web interface page, you want it to pass through the user&#8217;s credentials and see all the available apps.  When the user clicks on an app, it should launch immediately with no further prompts.  Plain and simple.</p>
<p>But this is not always the case unfortunately.  Sometimes pass-through authentication breaks.  Symptoms I have seen are:</p>
<p>1. You get prompted for credentials at the Web Interface logon (an authentication error occurred error message) like this:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/0.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/0-300x190.jpg" alt="" title="0" width="300" height="190" class="aligncenter size-medium wp-image-1466" /></a></p>
<p>2. Passthrough at the web interface works fine but when launching an app, you get a Windows 2008 R2 logon screen from the XenApp server like this:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/1.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/1-300x178.jpg" alt="" title="1" width="300" height="178" class="aligncenter size-medium wp-image-1467" /></a></p>
<p>3. You get a combination of both issues above.</p>
<p>Don&#8217;t worry, there are a number of things you need to check that can resolve these issues for you.  One or more of these factors may be the cause of errors in your environment.  Just run through the bullet points below and verify everything:</p>
<p><strong>1.</strong> You need to be using Citrix Receiver Enterprise if possible and not just the plain Citrix Receiver.  The latest Citrix Receiver is 3.1 but 3.0 behaves the same way.  It comes with Online Plugin 13.1.0.89 enabled out of the box.  You can go to the &#8220;Receiver for Windows 3.1 &#8211; Admins&#8221; download page here: </p>
<p><a href="https://www.citrix.com/English/ss/downloads/details.asp?downloadId=2319945&#038;productId=1689163" title="https://www.citrix.com/English/ss/downloads/details.asp?downloadId=2319945&#038;productId=1689163">https://www.citrix.com/English/ss/downloads/details.asp?downloadId=2319945&#038;productId=1689163</a></p>
<p>You will need to download the 55.1 MB zip file.  Inside you will see both &#8220;CitrixReceiver.exe&#8221; and &#8220;CitrixReceiverEnterprise.exe&#8221;.  The one you want to install is the Enterprise version.  This version will install with pass-through authentication support automatically for you as well as Single Sign On (SSO).  You can always install and enable SSO with the standard Receiver using the &#8220;/includeSSON&#8221; and &#8220;ENABLE_SSON=Yes&#8221; command line switches and this actually will give you pass-through authentication features (more on this in bullet point 7 below).  Receiver Enteprise will require administrator access to install on PCs unlike the standard/regular Citrix Receiver.  The difference between the two versions is described here:</p>
<p><a href="http://support.citrix.com/proddocs/topic/receiver-31-windows/ica-clients-deciding-v2.html" title="http://support.citrix.com/proddocs/topic/receiver-31-windows/ica-clients-deciding-v2.html">http://support.citrix.com/proddocs/topic/receiver-31-windows/ica-clients-deciding-v2.html</a></p>
<p>Note how Enterprise has &#8220;Single sign-on/pass-through authentication&#8221; but standard only has &#8220;Single sign-on&#8221;?</p>
<p>Now here&#8217;s a big problem.  When an end user tries to download the Receiver off the Citrix website, it will not show Enterprise:</p>
<p><a href="http://www.citrix.com/receiver" title="http://www.citrix.com/receiver">http://www.citrix.com/receiver</a></p>
<p>Go ahead and choose Windows in the drop down.  The next page will show the download for Receiver.  It does not specify if it is Standard or Enterprise.  If you download the executable, it is just CitrixReceiver.exe which is the Standard version you had downloaded above.</p>
<p>So if you are troubleshooting pass-through authentication, the first thing you want to make sure of is go to Add/Remove programs on the user&#8217;s PC and verify it says &#8220;Citrix Receiver (Enterprise)&#8221; like below and not just &#8220;Citrix Receiver&#8221;:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/2.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/2-300x217.jpg" alt="" title="2" width="300" height="217" class="aligncenter size-medium wp-image-1454" /></a></p>
<p>I&#8217;m guessing Citrix only offers the standard version to end users so they are not confused on which one to download.  The problem is if you are in an environment where Receiver Enterprise is not deployed centrally or if users take it upon themselves to install the latest Receiver from Citrix&#8217;s website (which does not require admin rights btw), they can cause a big mess and you are stuck troubleshooting it.</p>
<p>Another tip, you need to restart your PC for the pass-through authentication to work after you finish installing Receiver Enterprise 3.1.  It will sometimes not start the Single Sign On process until you restart your PC.  Or it will start it but it still not correctly passthrough credentials for whatever reason.  So your best bet is to restart your PC to make sure everything is working correctly.  Once you restart your PC, open Task Manager and verify &#8220;ssonsvr.exe&#8221; is running like below:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3-271x300.jpg" alt="" title="3" width="271" height="300" class="aligncenter size-medium wp-image-1455" /></a></p>
<p>Here is another screenshot from Process Explorer which shows the dependency a bit better:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/7.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/7-300x27.jpg" alt="" title="7" width="300" height="27" class="aligncenter size-medium wp-image-1462" /></a></p>
<p>You can also go to the registry and under &#8220;<code>HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ICA Client\SSON</code>&#8221; it should have a string value called &#8220;Enable&#8221; with a value data of &#8220;True&#8221; like this.  This means SSO was installed. This key will be there if you installed Enterprise or forced the SSO install using Standard.  Here is a Windows XP example:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3a.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3a-293x300.jpg" alt="" title="3a" width="293" height="300" class="aligncenter size-medium wp-image-1456" /></a></p>
<p>Another thing you can do, and I&#8217;m on an XP 32 bit box right now, is navigate to &#8220;<code>C:\Program Files\Citrix\ICA Client</code>&#8221; and open up appsrv.ini in Notepad.  You should see &#8220;<code>SSOnUserSetting=On</code>&#8221; at the very bottom which means that single signon is enabled.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3b.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3b-300x218.jpg" alt="" title="3b" width="300" height="218" class="aligncenter size-medium wp-image-1457" /></a></p>
<p>Another check to verify for Enterprise installation, go to &#8220;<code>HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\PNAgent</code>&#8221; in the registry and look for the DWORD value &#8220;<code>EnablePassThrough</code>&#8221;.  It should have a value of &#8220;1&#8243; meaning it is enabled.  Standard Receiver doesn&#8217;t include the PNA plugin so you won&#8217;t even have this key if you were using it.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3c.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/3c-292x300.jpg" alt="" title="3c" width="292" height="300" class="aligncenter size-medium wp-image-1458" /></a></p>
<p><strong>2. </strong>You need to verify the Citrix Receiver group policy allowing pass-through authentication has been applied to the PC you are working on.  If you are just working on a test machine, you can apply this policy to just that PC for testing purposes instead of through AD.  Just open up gpedit.msc on the PC, right click on &#8220;Administrative Templates&#8221; and then click &#8220;Add/Remove Templates&#8230;&#8221;.  Click Add and choose the following file:</p>
<p><code>C:\Program Files\Citrix\ICA Client\Configuration\icaclient.adm</code></p>
<p>Once you have added it, navigate down to Computer Configuration > Administrative Templates > Citrix Components > Citrix Receiver > Authentication and you will see an option called &#8220;Local user name and password&#8221;.  Double click on it and set it to Enabled.  You need to have &#8220;Enable pass-through authentication&#8221; and &#8220;Allow pass-through authentication for all ICA connections&#8221; enabled.  So it will look like this:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/4.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/4-300x211.jpg" alt="" title="4" width="300" height="211" class="aligncenter size-medium wp-image-1459" /></a></p>
<p>If you expand the User Configuration section, you will see the same settings under there as well.  I usually have it set there as well but it is not necessary.  In my testing, you can leave it enabled at the computer level and it will work.  The changes should be instant from my testing but if they don&#8217;t take, try doing a &#8220;<code>gpupdate /force</code>&#8221;, restarting your browser, and/or rebooting your machine.</p>
<p><strong>3. </strong>There is a  known issue with XenApp 6.5 where pass-through authentication will not work.  You need to apply Hotfix XA650W2K8R2X64001 to all your XenApp servers.  You can get it here:</p>
<p><a href="http://support.citrix.com/article/CTX130794" title="http://support.citrix.com/article/CTX130794">http://support.citrix.com/article/CTX130794</a></p>
<p>This will update your <code>ccticket.dlls</code> among other files that will fix the issue.</p>
<p><strong>4. </strong>Verify on your XenApp servers that the RDP connection is set to not prompt for passwords.  Under the Remote Desktop Session Host Configuration console, doubleclick on RDP-Tcp, then click the Log on Settings tab.  Verify &#8220;Use client-provided log on information&#8221; is selected and &#8220;Always prompt for password&#8221; is NOT checked:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/5.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/5-300x281.jpg" alt="" title="5" width="300" height="281" class="aligncenter size-medium wp-image-1460" /></a></p>
<p><strong>5. </strong>Verify in the Web Interface console that you have specified pass-through authentication for the XenApp site.  Just open the Web Interface Management console, right click on your site, and click Authentication Methods.  Pass-through should be checked here:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/6.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/6-300x216.jpg" alt="" title="6" width="300" height="216" class="aligncenter size-medium wp-image-1461" /></a></p>
<p>It should also be done on the XenApp Services site if you need it.</p>
<p><strong>6. </strong>Pass-through authentication will not work in Firefox.  I&#8217;ve added my web interface to the Trusted URIs config in FireFox but it won&#8217;t work.  NTLM Passthrough authentication works fine on the web interface, but it won&#8217;t carry to the XenApp server when launching an app.  You can add your WI to the list by typing this in the address bar in FireFox:</p>
<p><strong><code>about:config</code></strong></p>
<p>Then just type &#8220;NTLM&#8221; in the filter box.  Add the URL (without the <code>http:\\</code>) in the &#8220;<code>network.automatic-ntlm-auth.trusted-uris</code>&#8221; box.  If you do manage to somehow getting pass-through authentication to work in Firefox, please leave a comment below.  I&#8217;m not a huge IE fan. <img src='http://www.jasonsamuel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Quick note in IE, you do not need to add your WI URL to the Trusted Sites security zone for passthrough to work.  Local Intranet is all you need from my experience.  Sometimes you may get prompted at the web interface for credentials.  Just make sure the site appears in Local Intranet and not Internet.  I&#8217;ve seen issues where NTLM passthrough may not work in this scenario.</p>
<p><strong>7.</strong> One final note, I did some additional testing using the Standard Receiver and command line installation.  If you install Standard Receiver using command line with the following:</p>
<p><strong><code>CitrixReceiver.exe /includeSSON ENABLE_SSON=Yes</code></strong></p>
<p>You will see in Process Explorer or Task Manager that &#8220;ssonsvr.exe&#8221; is indeed running after the install.  In my testing I was able to get it to actually pass-through but on certain XenApp 6.5 servers only.  They had the pass-through hotfix I talk about below in bullet point 3 above applied.  This was the only exception.  And it only worked immediately after the Citrix Receiver install without rebooting the system.  After rebooting the PC, it behaved like all other regular unpatched XenApp 6.5 and below farms.  I would get the Server 2008 logon.  </p>
<p>I then added the .adm template and configured it as described in bullet point 2 above and pass-through authentication worked fine with both patched and unpatched XenApp 6.5 servers.  It even worked on XenApp 5 Feature Pack 3 farms with Web Interface 5.3 just fine.  </p>
<p>If you check Process Explorer as you launch an app, the whole chain is there from the single sign on service to the connection manager down to the ICA client/Online Plugin:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2012/01/8.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2012/01/8-300x21.jpg" alt="" title="8" width="300" height="21" class="aligncenter size-medium wp-image-1482" /></a></p>
<p>So bottom line, you can get standard Receiver to work with passthrough but only if using these command line switches during install.  I would just deploy Receiver Enterprise to begin with to avoid having issues down the road.  It just seems to make more sense to me.</p>
<p><a href="http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/">How to fix pass-through authentication &#038; the Windows 2008 logon screen on XenApp 6.5/Web Interface 5.4 using Citrix Receiver</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
<li><a href='http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/' rel='bookmark' title='How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms'>How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms</a></li>
<li><a href='http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/' rel='bookmark' title='Getting Java web applications to work on Citrix XenApp'>Getting Java web applications to work on Citrix XenApp</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2012/01/05/how-to-fix-pass-through-authentication-the-windows-2008-logon-screen-on-xenapp-6-5web-interface-5-4-using-citrix-receiver/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Can&#8217;t console to frozen XenServer host but VMs are still running</title>
		<link>http://www.jasonsamuel.com/2011/12/13/cant-console-to-frozen-xenserver-host-but-vms-are-still-running/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cant-console-to-frozen-xenserver-host-but-vms-are-still-running</link>
		<comments>http://www.jasonsamuel.com/2011/12/13/cant-console-to-frozen-xenserver-host-but-vms-are-still-running/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 22:19:09 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenServer]]></category>
		<category><![CDATA[citrix xenserver]]></category>
		<category><![CDATA[disable ha]]></category>
		<category><![CDATA[dom0]]></category>
		<category><![CDATA[logrotate]]></category>
		<category><![CDATA[logrotate.conf]]></category>
		<category><![CDATA[restart toolstack]]></category>
		<category><![CDATA[xapi]]></category>
		<category><![CDATA[xe commands]]></category>
		<category><![CDATA[xenserver]]></category>
		<category><![CDATA[xenserver logs]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1419</guid>
		<description><![CDATA[Let&#8217;s say a host in your pool won&#8217;t restart a VM and freezes half way (that wonderful yellow icon). If you hit the console tab, it might be blank. If you hit the console tab of the host, it might also be blank. If you SSH in it may connect, but you can&#8217;t pass any [...]<p><a href="http://www.jasonsamuel.com/2011/12/13/cant-console-to-frozen-xenserver-host-but-vms-are-still-running/">Can&#8217;t console to frozen XenServer host but VMs are still running</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2009/09/21/running-open-solaris-on-citrix-xenserver-5-5-shows-no-ip-address-associated-with-the-vm/' rel='bookmark' title='Running Open Solaris on Citrix XenServer 5.5 shows no IP address associated with the VM'>Running Open Solaris on Citrix XenServer 5.5 shows no IP address associated with the VM</a></li>
<li><a href='http://www.jasonsamuel.com/2011/07/14/how-to-use-an-external-usb-drive-as-a-storage-repository-in-xenserver-5-6/' rel='bookmark' title='How to use an external USB drive as a storage repository in XenServer 5.6'>How to use an external USB drive as a storage repository in XenServer 5.6</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s say a host in your pool won&#8217;t restart a VM and freezes half way (that wonderful yellow icon).  If you hit the console tab, it might be blank.  If you hit the console tab of the host, it might also be blank.  If you SSH in it may connect, but you can&#8217;t pass any xe commands.  It just sits.  If you attempt to migrate or stop a VM, it hangs.  The host is essentially frozen but VMs are still running on it just fine.</p>
<p>This is all a pretty good sign the XAPI service on the host is hung up.  XAPI is the XenServer management toolstack which pretty much controls everything on the XenServer host.  If the &#8220;XenAPI&#8221; toolstack is hosed, XenCenter can&#8217;t talk to the host and you probably won&#8217;t be able to pass any xe commands. The Xen API is what controls everything at the host layer.  Quick way to troubleshoot this:</p>
<p>1. SSH into the host with the issue.</p>
<p>2. Type:</p>
<p><strong><code>df -h</code></strong></p>
<p>which will show the disk space usage on the file system.  The &#8220;<code>-h</code>&#8221; switch will display it in gigabytes.  Much easier to read.  We need to check the root partition and see if it is full.  This is typically 4 GB and can be filled up by logs which may cause the XAPI service to stop.  If the XenServer root disk is full, you will probably see it drop out of XenCenter because XAPI is stopped.  You won&#8217;t be able to restart the XAPI service until you free up some space.  Here is an example of the root being 100% full:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/12/xapi1.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/12/xapi1-300x113.jpg" alt="" title="xapi1" width="300" height="113" class="aligncenter size-medium wp-image-1425" /></a></p>
<p>Extra tip, once you log in to one XenServer host, you can check other hosts remotely without having to SSH into each one in a different terminal.  Just type:</p>
<p><strong><code>ssh &lt;RemoteXenServerIPorName&gt; df -h</code></strong></p>
<p>3.  If the root is full like above, type:</p>
<p><strong><code>cd /var/log</code></strong></p>
<p>then</p>
<p><strong><code>ls</code></strong></p>
<p>to list the logs.  Type:</p>
<p><strong><code>du –ksh *.*</code></strong></p>
<p>to list the logs with the sizes.  If you find one that is too big, delete it:</p>
<p><strong><code>rm &lt;logname&gt;.log</code></strong></p>
<p>From here you can skip ahead below to step 6 and try restarting XAPI.</p>
<p>Also, you might want to consider moving your logs off to a different volume.  If you fill your dom0 root, you&#8217;re basically hosing the XenServer.  Citrix has a good article on how to move the <code>/var/log</code> directory to a different volume here:</p>
<p><a href="http://support.citrix.com/article/CTX130245">http://support.citrix.com/article/CTX130245</a></p>
<p>or retain fewer logs by editing logrotate.conf here:</p>
<p><a href="http://support.citrix.com/article/CTX131619">http://support.citrix.com/article/CTX131619</a></p>
<p>4. If your root is not full, the next thing you probably want to do is disable HA.  You can do this in the XenCenter console or you can just type:</p>
<p><strong><code>xe pool-ha-disable</code></strong></p>
<p>or if you want to disable HA on a host (you&#8217;ll have to run this on each host though):</p>
<p><strong><code>host-emergency-ha-disable force=true</code></strong></p>
<p>5. After disabling HA, restart the toolstack:</p>
<p><strong><code>xe-toolstack-restart</code></strong></p>
<p>This will disconnect all the hosts in the pool in XenCenter but don&#8217;t panic.  Give it 10-20 seconds, once the toolstack is restarted the hosts will all reconnect to XenCenter.  All pending actions like reboots, migrations, etc. will all stop when restarting the tool stack so you have a clean slate.</p>
<p>6. You should be able to console into your host with the issues now.  Type:</p>
<p><strong><code>service xapi status</code></strong></p>
<p>and see if it is running.  If you want to see how taxed XAPI is, type:</p>
<p><strong><code>top</code></strong></p>
<p>to see all the running processing.  If XAPI is taking up 40% CPU or more, that is a good indication something is hung up on it.</p>
<p>If XAPI is not running or is very taxed, type:</p>
<p><strong><code>service xapi restart</code></strong></p>
<p>if it hangs at &#8220;Stopping xapi&#8221; or &#8220;Starting xapi&#8221;, you may need to kill the process.</p>
<p>Type:</p>
<p><strong><code>kill &lt;pid&gt;</code></strong></p>
<p>using the process ID from when you ran &#8220;service xapi status&#8221; or &#8220;top&#8221;.  Then service xapi status to verify all xapi processes have stopped.  Then you can type:</p>
<p><strong><code>service xapi restart</code></strong></p>
<p>again if it didn&#8217;t automatically try and start already.  Eventually it will say:</p>
<p><strong><code>Starting xapi: ....start-of-day complete.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp;&nbsp;OK&nbsp;&nbsp;]</code></strong></p>
<p>and you should see the host pop back in your XenCenter console.  If you go back and run top, xapi should be taking up around 1% or less CPU.  </p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/12/xapi2.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/12/xapi2-300x186.jpg" alt="" title="xapi2" width="300" height="186" class="aligncenter size-medium wp-image-1421" /></a></p>
<p>You can type:</p>
<p><strong><code>xe task-list</code></strong></p>
<p>to see all the running tasks which shouldn&#8217;t be much at this point.  Don&#8217;t forget to re-enable HA after you&#8217;re done.  Hope this helps someone.</p>
<p><a href="http://www.jasonsamuel.com/2011/12/13/cant-console-to-frozen-xenserver-host-but-vms-are-still-running/">Can&#8217;t console to frozen XenServer host but VMs are still running</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2009/09/21/running-open-solaris-on-citrix-xenserver-5-5-shows-no-ip-address-associated-with-the-vm/' rel='bookmark' title='Running Open Solaris on Citrix XenServer 5.5 shows no IP address associated with the VM'>Running Open Solaris on Citrix XenServer 5.5 shows no IP address associated with the VM</a></li>
<li><a href='http://www.jasonsamuel.com/2011/07/14/how-to-use-an-external-usb-drive-as-a-storage-repository-in-xenserver-5-6/' rel='bookmark' title='How to use an external USB drive as a storage repository in XenServer 5.6'>How to use an external USB drive as a storage repository in XenServer 5.6</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2011/12/13/cant-console-to-frozen-xenserver-host-but-vms-are-still-running/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Getting Java web applications to work on Citrix XenApp</title>
		<link>http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=getting-java-web-applications-to-work-on-citrix-xenapp</link>
		<comments>http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 21:59:35 +0000</pubDate>
		<dc:creator>Jason Samuel</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[citrix xenapp]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[java web applets]]></category>
		<category><![CDATA[jre]]></category>
		<category><![CDATA[publish IE]]></category>
		<category><![CDATA[publish URL]]></category>
		<category><![CDATA[xenapp]]></category>

		<guid isPermaLink="false">http://www.jasonsamuel.com/?p=1383</guid>
		<description><![CDATA[You might get a request to to publish an Internet Explorer URL/link in XenApp for whatever reason. Web applications that use Java Runtime Environment (JRE)/Java applets do not play nicely with Citrix XenApp. The main problem is the Java cache. It wants to write its cache to: C:\Program Files\Java\Cache\username\Sun\Java\Deployment\cache by default during a XenApp session [...]<p><a href="http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/">Getting Java web applications to work on Citrix XenApp</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>

More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
<li><a href='http://www.jasonsamuel.com/2011/10/26/how-to-force-an-uninstall-of-citrix-xenapp-or-presentation-server-via-command-line/' rel='bookmark' title='How to force an uninstall of Citrix XenApp or Presentation Server via command line'>How to force an uninstall of Citrix XenApp or Presentation Server via command line</a></li>
<li><a href='http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/' rel='bookmark' title='How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms'>How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>You might get a request to to publish an Internet Explorer URL/link in XenApp for whatever reason.  Web applications that use Java Runtime Environment (JRE)/Java applets do not play nicely with Citrix XenApp.  The main problem is the Java cache.  It wants to write its cache to:</p>
<p><code>C:\Program Files\Java\Cache\username\Sun\Java\Deployment\cache</code></p>
<p>by default during a XenApp session but nothing ever gets populated past the &#8220;username&#8221; part.  The directory underneath will be blank and your web application will never load the Java applet.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/21.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/21.jpg" alt="" title="2" width="472" height="347" class="aligncenter size-full wp-image-1388" /></a></p>
<p>I&#8217;m not a Java expert and I&#8217;m not even going to claim the following is any kind of best practice.  But this is what I have done in my environments to make the web apps work using XenApp.  If you have a better way of doing it, please do comment in this post.</p>
<p>So a little background, I am using Windows Server 2008 R2 with IE9 with Java (JRE) 6 Update 26 installed because my web app requires that specific version of Java.</p>
<p>1. Go to &#8220;<code>C:\WINDOWS\Sun\Java\Deployment</code>&#8221; and create a file called &#8220;<code>deployment.config</code>&#8221; with the following:</p>
<p><code>deployment.system.config=file\:C\:/WINDOWS/Sun/Java/Deployment/deployment.properties </code></p>
<p>2. Now create a file called &#8220;<code>deployment.properties</code>&#8221; in the same folder with your custom properties.  What I do is generate a deployment file and then copy it over to this directory.  To do this, open up Internet Explorer and go to your web app.  Once Java is invoked, you will notice the Java icon in the notification bar in the bottom right.  </p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/11.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/11.jpg" alt="" title="1" width="154" height="27" class="aligncenter size-full wp-image-1387" /></a></p>
<p>Right click on it > Open Control Panel > Settings and you will see a path where temporary files are kept.  </p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/0.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/0.jpg" alt="" title="0" width="474" height="348" class="aligncenter size-full wp-image-1406" /></a></p>
<p>This is the default Java cache and will look like:</p>
<p><code>C:\Users\username\AppData\LocalLow\Sun\Java\Deployment\cache</code></p>
<p>Navigate to:</p>
<p><code>C:\Users\username\AppData\LocalLow\Sun\Java\Deployment\</code></p>
<p>and there will be a file called &#8220;<code>deployment.properties</code>&#8221; that was just generated for you.  Just copy it over to the &#8220;<code>C:\WINDOWS\Sun\Java\Deployment</code>&#8221; folder as is.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/31.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/31-300x169.jpg" alt="" title="3" width="300" height="169" class="aligncenter size-medium wp-image-1391" /></a></p>
<p>Now you need to edit this file and specify the Java cache to be somewhere else.  In my case, I want it to go to a folder on my D: drive called JavaCache.  So all I add is this line (make sure the slashes are just like this, I know it&#8217;s a little odd):</p>
<p><code>deployment.user.cachedir=D\:\\JavaCache</code></p>
<p>So now my &#8220;<code>deployment.properties</code>&#8221; file will look like this:</p>
<p><pre><code>#deployment.properties
#Mon Nov 28 13:17:40 CST 2011
deployment.javaws.cache.update=true
deployment.version=6.0
deployment.user.cachedir=D\:\\JavaCache
deployment.capture.mime.types=true
deployment.javapi.cache.update=true
deployment.browser.path=C\:\\Program Files (x86)\\Internet Explorer\\iexplore.exe
#Java Web Start jre&#039;s
#Mon Nov 28 13:17:40 CST 2011
deployment.javaws.jre.0.registered=true
deployment.javaws.jre.0.platform=1.6
deployment.javaws.jre.0.osname=Windows
deployment.javaws.jre.0.path=C\:\\Program Files (x86)\\Java\\jre6\\bin\\javaw.exe
deployment.javaws.jre.0.product=1.6.0_26
deployment.javaws.jre.0.osarch=x86
deployment.javaws.jre.0.location=http\://java.sun.com/products/autodl/j2se
deployment.javaws.jre.0.enabled=true
deployment.javaws.jre.0.args=</code></pre></p>
<p>Yours will probably look different than mine depending on which version of JRE you have installed.</p>
<p>3. Make sure to create the location you specified above.  It can be a blank folder and will be populated the first time someone invokes Java.  So in my case, I created:</p>
<p><code>D:\JavaCache</code></p>
<p>4. Now publish IE and the URL like you normally would in the XenApp console.  <strong>IMPORTANT NOTE:</strong>  If you are using 32 bit IE and installed 32 bit Java, <strong>DO NOT</strong> publish 64 bit IE by accident.  It will not be able to use the 32 bit Java.  You will need to install 64 bit Java if you intend to use 64 bit IE.</p>
<p>Here is an example of how 32 bit IE should be published on Server 2008 R2 in XenApp 6.5:</p>
<p>Command line:<br />
<code>&quot;C:\Program Files (x86)\Internet Explorer\iexplore.exe&quot; &quot;http://www.google.com&quot;</code></p>
<p>Working directory:<br />
<code>C:\Program Files (x86)\Internet Explorer</code></p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/4.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/4-300x233.jpg" alt="" title="4" width="300" height="233" class="aligncenter size-medium wp-image-1394" /></a></p>
<p>5. That&#8217;s it, now launch your published IE web app from your desktop via the WI and it should load just fine.  Once Java is invoked, verify your Java cache is pointed at the new location.  Just look in your notification area for the Java icon, right click on it > Open Control Panel > Settings and you should see &#8220;<code>D:\JavaCache</code>&#8221;.</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/5.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/5.jpg" alt="" title="5" width="473" height="347" class="aligncenter size-full wp-image-1398" /></a></p>
<p>One interesting thing to note, older versions of Java pull their deployment configuration from a different location.  So if putting everything in: </p>
<p><code>C:\WINDOWS\Sun\Java\Deployment</code></p>
<p>does not work for you, try copying them to:</p>
<p><code>C:\Program Files (x86)\Java\jre6\lib</code></p>
<p>and everything should work.  Just make sure to edit your &#8220;<code>deployment.config</code>&#8221; accordingly with the new path to &#8220;<code>deployment.properties</code>&#8221;.  An example, I have a web app that requires JRE 6 Update 11 and it pulls the deployment info from the lib folder and completely ignores the one in the Windows folder:</p>
<p><a href="http://www.jasonsamuel.com/wp-content/uploads/2011/11/6.jpg"><img src="http://www.jasonsamuel.com/wp-content/uploads/2011/11/6-300x275.jpg" alt="" title="6" width="300" height="275" class="aligncenter size-medium wp-image-1400" /></a></p>
<p>I also want to note that Oracle has pretty good documentation on configuring the deployment configuration file to your liking here:</p>
<p><a href="http://docs.oracle.com/javase/1.5.0/docs/guide/deployment/deployment-guide/properties.html">http://docs.oracle.com/javase/1.5.0/docs/guide/deployment/deployment-guide/properties.html</a></p>
<p>You can do quite a bit of customization to it.  Some of my web apps require certain things to be configured in Java such as suppressing certain warning messages and I have used this article to set those switches.  Again, I&#8217;m not a Java expert so there may be an easier way of doing this but this is how I have been able to get my Java web apps to work with XenApp.  Let me know of your experiences.</p>
<p><a href="http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/">Getting Java web applications to work on Citrix XenApp</a> is a post from: <a href="http://www.jasonsamuel.com">JasonSamuel.com</a></p>
<p>More of my posts you might like:<ol>
<li><a href='http://www.jasonsamuel.com/2011/08/29/how-to-deploy-citrix-receiver-or-online-web-plugin-for-xenapp-6-5-on-web-interface-5-4/' rel='bookmark' title='How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4'>How to Deploy Citrix Receiver or Online Web Plugin for XenApp 6.5 on Web Interface 5.4</a></li>
<li><a href='http://www.jasonsamuel.com/2011/10/26/how-to-force-an-uninstall-of-citrix-xenapp-or-presentation-server-via-command-line/' rel='bookmark' title='How to force an uninstall of Citrix XenApp or Presentation Server via command line'>How to force an uninstall of Citrix XenApp or Presentation Server via command line</a></li>
<li><a href='http://www.jasonsamuel.com/2011/09/13/how-to-deploy-edgesight-5-4-xenapp-agents-using-install-scripts-to-all-your-citrix-farms/' rel='bookmark' title='How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms'>How to deploy EdgeSight 5.4 XenApp agents using install scripts to all your Citrix Farms</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jasonsamuel.com/2011/11/28/getting-java-web-applications-to-work-on-citrix-xenapp/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Served from: www.jasonsamuel.com @ 2012-05-19 06:16:25 -->
