itrix uses ports 1494tcp and 1604udp. Therefore, protocols and gsps must be created for those ports. A rule, containing those gsps, must also be created to permit access from outside to the Citrix server on the protected network. Next, create two redirects for those services pointing to the IP address of the Citrix machine inside- not the web server.
Citrix file
The file mentioned previously, “link”.ica, must reside on the web server, and it is what is used to allow the web server and the citrix server to talk to each other. Below is an example of an ica file before it had been modified.
[WFClient]
Version=2
TcpBrowserAddress=63.82.157.6
[ApplicationServers]
Paris=
[Paris]
Address=Paris
InitialProgram=#Paris
DesiredHRES=640
DesiredVRES=480
DesiredColor=2
TransportDriver=TCP/IP
WinStationDriver=ICA 3.0
UseAlternateAddress=1
The tcpbrowser address is the firewall’s outside address. This does not have to be the physical address, it can be a virtual one, but it must be the same address as indicated in the redirect for ports 1494tcp and 1604udp. This particular file, however, is not totally correct. In the middle part of the file, there is a line that reads: “Address=Paris”. Paris is the name of the Citrix server inside. When this file is activated on the web server (when the user tries to browse to the Citrix machine) the tcpbrowser and the address lines are read. The first one is fine because it is the address that the world knows this server by, but when the external client tries to resolve Paris it cannot. In a packet trace from our lab it was found that our client queried a root server to try to resolve paris.ts.raptor.com. Why it associated paris with the ts.raptor.com domain (the source address) is not something we found an answer to, but obviously the try failed. However, when the file was changed so that both of the lines had the 63.82.157.6 address in it, the connection went through as it was supposed to. The correct file below:
[WFClient]
Version=2
TcpBrowserAddress=63.82.157.6
[ApplicationServers]
Paris=
[Paris]
Address=63.82.157.6
InitialProgram=#Paris
DesiredHRES=640
DesiredVRES=480
DesiredColor=2
TransportDriver=TCP/IP
WinStationDriver=ICA 3.0
UseAlternateAddress=1