Bug 28301 - Unterstützung der Anmeldung an Citrix-Terminalservern
Unterstützung der Anmeldung an Citrix-Terminalservern
Status: CLOSED FIXED
Product: Z_Univention Corporate Client (UCC)
Classification: Unclassified
Component: Terminal services
unspecified
Other Linux
: P5 enhancement
: UCC 1.0
Assigned To: Moritz Muehlenhoff
Felix Botner
: interim-2
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-24 13:59 CEST by Moritz Muehlenhoff
Modified: 2013-03-26 09:14 CET (History)
0 users

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Release Goal
Max CVSS v3 score:


Attachments
wfica-Wrapper (123 bytes, application/octet-stream)
2012-12-11 14:03 CET, Moritz Muehlenhoff
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Moritz Muehlenhoff univentionstaff 2012-08-24 13:59:04 CEST
Es sollte ein Session-Skript geben, das eine Verbindung zu Citrix XenApp aufbaut.

Der Zugriff erfolgt in aktuellen Citrix-Umgebungen üblicherweise Browser-basiert.
Die ICA-Datei wird dabei nicht mehr als Konfiguration übergeben, sondern direkt generiert.

Dadurch entfallen einige oder ggf. alle der in TCS 3.1 nötigen Richtlinien.
Comment 1 Moritz Muehlenhoff univentionstaff 2012-08-27 11:05:39 CEST
Der Citrix-Login sollte weiterhin HDX unterstützen (das Feature ist in den Citrix-Client integriert, aber es müssen Abhängigkeiten auf GStreamer in den Paketen definiert werden).
Comment 2 Moritz Muehlenhoff univentionstaff 2012-08-27 15:30:23 CEST
Siehe auch Bug 21659.
Comment 3 Moritz Muehlenhoff univentionstaff 2012-08-27 15:37:50 CEST
Siehe auch Bug 18945 und 19886
Comment 4 Moritz Muehlenhoff univentionstaff 2012-08-27 15:55:34 CEST
Siehe Bug 23010
Comment 5 Moritz Muehlenhoff univentionstaff 2012-08-28 15:13:09 CEST
Hinweise zur Einrichtung des Citrix Receiver unter Ubuntu finden sich hier:

https://help.ubuntu.com/community/CitrixICAClientHowTo

Für HDX wird vorr. Flash und curl im UCC-Thin-Client-Image benötigt. Möglicherweise auch noch gstreamer, aber evtl. ist das in der 12er Version auch integriert (es gibt ein ffmpeg-Source-Paket als Download)
Comment 6 Moritz Muehlenhoff univentionstaff 2012-11-19 12:14:42 CET
Ich habe bislang keine Möglichkeit gefunden die Weiterleitung eines lokalen Verzeichnisses (für den USB-Mount) in die browserbasierte Citrix-Anmeldung zu integrieren. 

Ich habe dazu eine Anfrage im Citrix-Forum gestellt:
http://forums.citrix.com/thread.jspa?threadID=316789
Comment 7 Moritz Muehlenhoff univentionstaff 2012-12-11 14:02:37 CET
(In reply to comment #6)
> Ich habe bislang keine Möglichkeit gefunden die Weiterleitung eines lokalen
> Verzeichnisses (für den USB-Mount) in die browserbasierte Citrix-Anmeldung zu
> integrieren. 
> 
> Ich habe dazu eine Anfrage im Citrix-Forum gestellt:
> http://forums.citrix.com/thread.jspa?threadID=316789

Ich habe dazu den Vormittag über ausgiebig Debugging betrieben:

- Die Richtlinien werden vom Linux-Client anscheinend generell nicht ausgewertet, auch für HDX muss man beispielsweise zusätzliche Optionen in der ini-Datei setzen

- Die Sitzung wird durch Aufruf des ICA-Files initiiert. Es ist aber nicht möglich in der Verknüpfung für den MIME-Type (application/x-ica) den Aufruf von wfica anzupassen. Der MIME-Type ist mit einem Plugin verknüpft (npica.so), dass dann wiederum wfica aufruft und nicht konfigurierbar ist.

- Einzige Lösung, die ich sehe um den browserbasierten Ansatz mit voller Konfigurierbarkeit zu verbinden ist ein Wrapper. Ich habe das mal getestet, in dem ich den Client nach /opt/Citrix/ICAClient/wfica.real umbenannt habe und dann einen Wrapper /opt/Citrix/ICAClient/wfica angelegt habe, der dann die Option
-clientfile /opt/Citrix/ICAClient/config/ucc.ini übergibt. Die ucc.ini ist dabei eine Kopie der /opt/Citrix/ICAClient/config/wfclient.ini, in der zusätzlich noch die ClientDriveMapping-Optionen enthalten sind. Das funktionierte in meinem Test, das Laufwerk erschien damit in einer ICA-Browser-Sitzung.

Das ist ein Hack, aber die einzigen Alternative wären auf lokalen Client-Mount zu verzichten oder wieder auf den ICA-File-Download zurückzukehren, was beides nicht schön ist. Von daher sollten wir den Wrapper umsetzen. Das erlaubt es auch noch weitere INI-Optionen zu integrieren, die noch nötig sind (z.B. für Flash-Redirect)
Comment 8 Moritz Muehlenhoff univentionstaff 2012-12-11 14:03:35 CET
Created attachment 4904 [details]
wfica-Wrapper
Comment 9 Moritz Muehlenhoff univentionstaff 2012-12-13 16:52:32 CET
(In reply to comment #7)
> - Einzige Lösung, die ich sehe um den browserbasierten Ansatz mit voller
> Konfigurierbarkeit zu verbinden ist ein Wrapper. Ich habe das mal getestet, in
> dem ich den Client nach /opt/Citrix/ICAClient/wfica.real umbenannt habe und
> dann einen Wrapper /opt/Citrix/ICAClient/wfica angelegt habe, der dann die
> Option
> -clientfile /opt/Citrix/ICAClient/config/ucc.ini übergibt. Die ucc.ini ist
> dabei eine Kopie der /opt/Citrix/ICAClient/config/wfclient.ini, in der
> zusätzlich noch die ClientDriveMapping-Optionen enthalten sind. Das
> funktionierte in meinem Test, das Laufwerk erschien damit in einer
> ICA-Browser-Sitzung.

Der Wrapper wird jetzt durch das LightDM-Session-Setup-Skript /etc/lightdm/session-setup/020_univention-citrix-add-wrapper automatisch eingerichtet.
Damit funktionieren Flash-Beschleunigung und Storage-Passpthrough jetzt out of the box.
Comment 10 Moritz Muehlenhoff univentionstaff 2012-12-17 12:53:54 CET
Die Citrix-Anbindung ist soweit umgesetzt. Offen ist aktuell nur noch der HDX-Support, der über Bug 23010 umgesetzt wird.
Comment 11 Felix Botner univentionstaff 2012-12-21 13:32:41 CET
univention-copy-region-info erstellt das Home der Benutzer (mkdir -p "$HOME"/.ICAClient) setzt aber nicht die Berechtigungen für den Benutzer. Wenn ich mich mit einem Benutzer anmelde, der noch kein HOME hat, führt univention-copy-region-info also dazu, dass der Benutzer ein HOME hat das root gehört. 
Damit kann man dann keine KDE/LXDE/... Sessions mehr starten.
Comment 12 Moritz Muehlenhoff univentionstaff 2012-12-21 14:15:24 CET
(In reply to comment #11)
> univention-copy-region-info erstellt das Home der Benutzer (mkdir -p
> "$HOME"/.ICAClient) setzt aber nicht die Berechtigungen für den Benutzer. Wenn
> ich mich mit einem Benutzer anmelde, der noch kein HOME hat, führt
> univention-copy-region-info also dazu, dass der Benutzer ein HOME hat das root
> gehört. 
> Damit kann man dann keine KDE/LXDE/... Sessions mehr starten.

Das wird jetzt angepasst. 

Eigentlich hätte das Home aber durch pam_mkhomedir angelegtr werden sollen. Dazu habe ich Bug 29879 angelegt.
Comment 13 Felix Botner univentionstaff 2012-12-21 16:23:47 CET
OK, Anmeldung funktioniert.
Comment 14 Moritz Muehlenhoff univentionstaff 2013-03-26 09:14:17 CET
UCC 1.0 has been released: 
http://forum.univention.de/viewtopic.php?f=26&t=2417
http://forum.univention.de/viewtopic.php?f=54&t=2418

If this error occurs again, please use "Clone This Bug".