===== Citrix Receiver ===== Helaas komt het regelmatig voor dat ik voor mijn werk bij klanten gedwongen wordt om verbinding te maken met een Citrix remote desktop. Nu bestaat daarvoor wel een Linux client maar dat stukkie software is bedacht door een stel zwaar verstandelijk gehandicapten en denkt jouw omgeving te kunnen regeren. Met de volgende aanpassingen kun je het kreng aanpassen zodat het zich (voor zover mogelijk) als een normale app gaat gedragen. ==== Workspace check ==== Er wordt een handig tooltje meegeleverd om te verifieeren of alle dependencies goed staan voor de Citrix Workspace App, dus: cd /opt/Citrix/ICAClient/util sudo ./workspacecheck.sh En vervolgens blijken er enkele libraries te missen. Want ja: we leveren een .deb, maar waarom zou je je dependencies goed voor mekaar hebben, toch? Wat een totalitaire randdebielen daar bij de Citrix... ==== Config aanpassen ==== Omdat die mongols bij Citrix denken dat zij je nieuwe desktop zijn moet je wat dingen aanpassen zodat het kreng begrijpt dat het een zwaar gehandicapte applicatieserver is. Dus: vim ~.ICAClient/All_Regions.ini en voer een of meer van de volgende aanpassingen door... ; ; These settings handle the proxies used for connections ; [Network\Proxy] ; Zorg dat nooit een proxy wordt gebruikt ProxyType=None AltProxyType=None ; ; These settings control the client audio virtual channels ; [Virtual Channels\Audio] ; Als je niet van geluid houdt ClientAudio=false ; Als je wel geluid wilt, of moet gebruiken voor bijvoorbeeld videobellen ClientAudio=true ; En nog belangrijker: ze moeten mij ook horen... EnableAudioInput=true ;Geluidskwaliteit (licht) verbeteren (2 is default, 0 is hoogste kwaliteit) AudioBandwidthLimit=0 [Virtual Channels\Image Capture] ; Als het goed is kan de USB webcam nu gebruikt worden ; (Ja, je verwacht dat deze optie iets met je scanner doet, maar het blijft Citrix...) TwainAllowed=true ; ; These settings control the keyboard settings ; [Virtual Channels\Keyboard] ; Als je ineens een Japans toetsenbord hebt, ; of als je Citrix beheerder denkt dat ‘ie je een international keyboard moet opdringen of zo… KeyboardLayout=US ; ; These settings control the mouse settings ; [Virtual Channels\Mouse] ; Handig als middle mouse gewoon plakt in Citrix MouseSendsControlV=true ; Als je een Linux desktop wilt bedienen binnen je citrix sessie is het onhandig MouseSendsControlV=false ; ; These settings handle access to client smartcard devices ; [Virtual Channels\Smartcard] ; Voorkomt crashen van rdesktop sessies (en maakt evt. smartcard onbruikbaar) SmartCardAllowed=false ; ; These settings control the graphics compression options ; [Virtual Channels\Thinwire Graphics] ; Voorkomt dat Citrix Full screen wordt DesiredHRES=1280 DesiredVRES=720 ==== Automatisch fixen van de 'Clipboard Chain' ==== Het gebeurt soms dat knippen en plakken tussen Citrix en Linux niet meer werkt. Door de volgende optie checkt Receiver zelf om de 5s of het clipboard nog in orde is en fixt indien nodig. Aanpassing in ~/.ICAClient/wfclient.ini [WFClient] CbChainInterval=5000 Bron: [http://docs.citrix.com/content/dam/docs/en-us/receiver/windows/ica-settings/en.ica-settings.ica-settings-wrapper.pdf ICA Settings Reference] ==== Firewall aanpassing ==== Als je een firewall draait op je linux systeem dan kan dit hikken geven in de Citrix verbinding. Citrix gaat er vanuit dat connecties open blijven, kennelijk treedt er ergens een timeout op in netfilter waardoor pakketjes geweigerd worden als je er niets aan doet. Rule voor iptables: iptables -A INPUT -s 145.78.163.0/24 -p tcp -m tcp --sport 2598 --dport 32768:60999 -j ACCEPT Of voor firewall-cmd op CentOS/RHEL/Rocky Linux/Alma Linux: firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT_direct 0 -p tcp -s 145.78.163.0/24 --sport 2598 --dport 32768:60999 -j ACCEPT Die reeks 32768:60999 heb ik uit sysctl net.ipv4.ip_local_port_range