StoreFront Archive

2

Vérifier la validité d’un certificat SSL

Récemment nous avons constaté qu’on ne monitorait pas la validité des certificats SSL de nos StoreFront et Netscaler/F5)  (on avait juste des alertes émanant des collègues de la sécu).

Un script PowerShell plus loin c’est chose faite 🙂 :

 


Les certificats ayant une date d’expiration inférieur à 30 jours apparaissent en warning 😉



Dans un prochain billet nous vous indiquerons comment remonter ces valeurs facilement dans Zabbix via un agent actif.

 

Pour utiliser le script il faut au préalable modifier ce dernier en ligne 2 afin de rentrer les urls à checker (si vous souhaitez modifiez le seuil d’alerte des 30 jours, modifiez la valeur « 30 » en ligne  33 du script.

 



CheckSslExp.ps1


Pour notre script nous nous sommes inspiré du post « How to read Certificates and CRLs using PowerShell » de nos collègues de NETWORKWORLD.

 

 

0

StoreFront : désactiver la détection du receiver

Sous StoreFront  (dans notre cas un 3.01…..LTSR oblige) désactivez la détection du receiver se fait via le fichier web.config (dans C:\inetpub\wwwroot\Citrix\VotreStoreWeb\ ), en modifiant la chaine pluginAssistant enabled= »true »  par pluginAssistant enabled= »false ».

Si vos utilisateurs utilisent Chrome (comme vous le savez Chrome ne supporte plus le NPAPI depuis septembre 2015, si vous souhaitez plus d’informations sur NPAPI c’est par ici) comme navigateur il faudra en plus modifier la chaine <protocolHandler enabled= »true » par <protocolHandler enabled= »false », puis enregistrez votre web.config.

Vous pouvez aussi passer par l’outil « Citrix StoreFront GUI » disponible dans la CTX138991 (Attention Citrix StoreFront GUI ne fonctionne pas à partir de la version 3.5 de StoreFront).

 

SF_Conf_GUIPour les plus fainéants 😉

 

2

StoreFront : Cannot start app

Si vous rencontrez l’erreur « Cannot start app……….. » lors du lancement d’application publiée via un StoreFront, nous vous conseillons d’aller voir du côté des serveurs hébergeant l’application en question (car pour le coup c’est comme en XenApp 6.5, même symptôme même conséquence, voir la fin du billet si vous n’êtes pas patient).

 

VdaError01Ça fait toujours plaisir ce type de message 😉

 

Au passage sur nos DDC l’event 1101 confirme que l’application n’a pu être lancée pour les utilisateurs.

Log Name:      Application
Source:        Citrix Broker Service
Event ID:      1101
User:          NETWORK SERVICE
Computer:
Description:
The Citrix Broker Service failed to broker a connection for user “domain\user” to resource ‘Dxdiag’. The Citrix Broker Service cannot find any available virtual machines.


VdaError03Bien sur le Dxdiag est pour l’exemple 😉



Sur les serveurs hébergeant l’application nous avons constaté l’event 1039.

Log Name:      Application
Source:        Citrix Desktop Service
Event ID:      1039
Computer:
Description:
The Citrix Desktop Service failed to initialize a performance counter. Load management associated with this counter will be disabled.

 

VdaError02C’est la que nous comprenons l’origine du problème

 

En regardant dans Studio nous avons constaté que les serveurs en question avaient un load de 10000 sans raison apparente.

VdaError04Quelques recherche plus loin, nous sommes contents de tomber sur un de nos billets « Charge serveur bloqué sur 10000 » 🙂

 

Allez sur vos serveurs XenApp et lancez un coup de « lodctr.exe /r », cela va permettre de recréer manuellement les valeurs de la bibliothèque du compteur de Performance.

VdaError05
Une fois la commande lodctr.exe /r  passée les applications  étaient à nouveau disponibles.

 

Au passage ces serveurs XenApp étaient issues d’une migration XenApp 6.5 vers une de nos fermes XenApp 7.6 LTSR, du coup on va rajouter un check perfmon après la migration de serveur 🙂 .

 

2

StoreFront : afficher le nom (displayname) des applications sans troncage

il peut arriver dans certaines productions que le nom des applications soit à rallonge, dans ce cas la StoreFront va automatiquement tronquer le nom de l’application si ce dernier dépasse les 17 caractères.

 

SF_Apps_Full_Displayname1On a pas le droit d’avoir le DisplayName en entier, on a payé pourtant 🙂

 

Pour afficher le nom des applications en entier il vous faudra modifier le fichier C:\inetpub\wwwroot\Citrix\VotreSotreWeb\receiver\js\ctxs.webui.min_35BC18E54FFE70CC.js (attention, selon la version de StoreFront la suite numérique peut varier).

 

Une fois le fichier ctxs.webui.min_35BC18E54FFE70CC.js ouvert, modifiez la ligne ci-dessous :

c = CTXS.UI.useSmallTiles() ? 120 : 140;

par

c = CTXS.UI.useSmallTiles() ? 120 : 240;

 

Enregistrez le fichier ctxs.webui.min_35BC18E54FFE70CC.js.

 

SF_Apps_Full_Displayname2
C’est plus lisible du coup 😉

 

Nous avons testé cette modification avec des StoreFront 3.01 et 3.5.

 

Attention si le nom de vos applications (DisplayName) ne comporte pas d’espace (hé oui on a eu le cas) il n’y aura pas de retour à ligne dans StoreFront.

0

PowerShell : désactiver les abonnements utilisateur

Comme ce n’est pas vraiment documenté (voir pas du tout), on vous met la ligne de commande pour désactiver en PowerShell les abonnements utilisateur (Disable User Subscription) d’un magasin (Store) dans StoreFront.

Set-DSLockedDownStore  -SiteId « 1 » -VirtualPath « /Citrix/VotreStore » -IsLockedDown $True

Bon on vous l’avoue, c’est pour aussi l’avoir sous la main pour une prochaine fois 😉 .

0

Customisation StoreFront 3.x (2/2)

Suite et fin de notre billet sur la Customisation de StoreFront 3.x, pour rappel le premier billet concernait la customisation de la page de login  : Customisation StoreFront 3.x (1/2) (cette customisation est comprise dans ce billet).

 

SF3_Custo2-01Une fois authentifier dans un StoreFront 3.x on arrive sur le theme X1, un peu blanchâtre à notre goût.

 

Ci-dessous des screenshots une fois la customisation appliquée (on a juste joué avec la touche F12 de notre browser favori, donc juste un peu de patience et c’est tout).

 

SF3_Custo2-04

SF3_Custo2-02

SF3_Custo2-05
On aurait dû mettre un bon vieux wave après le logon, du style « Bienvenue dans le côté obscur » 🙂

 

Vous trouverez ci-dessous la liste des éléments que nous avons modifiés via le fichier « style.css » (contenu dans le répertoire « Custom ») afin de vous permettre de mettre en place votre propre customisation  (surtout les logos 😉 )

  • Modification de la couleur de la page de chargement
    .loading-screen {
     background-color: #000000;
    }
    Modifier la couleur de l’entête
  • .theme-header-bgcolor {
    background-color:#000000;
    }
  • Modifier la couleur de la police de la toolbar
    .toolbar-button-unselected {
    color: #FFFFFF;
    }
  • Modifier la couleur de fond de la toolbar
    .toolbar {
    background-color: #000000;
    }
  • Modifier la couleur de surbrillance de la toolbar
    .theme-highlight-color {
    color: #F4FA58;
    }
  • Modifier la couleur de la bordure de surbrillance
    .theme-highlight-border-color {
    border-color: rgb(255, 45, 45);
    }
  • Modifier la taille de la bordure de surbrillance
    .large .store-view .toolbar-button.selected {
    border-bottom-width: 2px;
    }
  • Modifier l’image de fond
    .storeViewSection {
    background: url(« ../receiver/images/CustoImages/SF_custo_FullScreenBackground_46E559C0E6B5A27B.jpg ») no-repeat center center fixed;
    }
  • Modifier la couleur de la police des applications et bureau
    .largeTiles .storeapp .storeapp-name{
    color: #FFFFFF;
    }
  • Supprimer l’affichage de la section « Détails » des applications et bureaux
    .largeTiles .storeapp-action-link {
    display: none;
    }
  • Supprimer l’affichage « Toutes les applications » au dessus des applications
    .largeTiles .store-view .store-apps-title {
    display: none;
    }
  • Modifier la taille des icones des applications et bureaux
    .storeapp-icon, .storeapp-loading-overlay, .storeapp-ready-overlay {
    border: 0 transparent;
    height: 40px;
    width: 40px;
    }
  • Réduire la taille des colonnes applicatives et bureaux
    .storeapp-list .storeapp, .storeapp-list .folder {
    width: 195px;
    }
  • Supprimer les bordures au niveau des applications et bureaux
    .largeTiles .storeapp {
    border-right: none;
    }
  • Supprimer le compteur sur les dossiers applicatifs
    .largeTiles .folder .folder-count{
    display: none;
    }
  • Modifier la couleur de fond du menu utilisateur et suppression des bordures verticales
    .dropdown-menu .dropdown-menu-body {
    background: #000000;
    border: none;
    }
  • Modification du menu utilisateur
    • Modifier la taille et la couleur de la bordure haute
      .dropdown-menu .dropdown-menu-top {
      height: 2px;
      background-color: #fff;
      opacity: none;
      }
    • Modifier la couleur de police
      .theme-highlight-color {
      color: #FFFFFF;
      }
    • Suppression de la bordure basse
      .dropdown-menu .dropdown-menu-bottom {
      background: none;
      border: none;
      }
  • Modification de la fenêtre « A propos de »
    • Modification de la couleur de fond
      .popup {
      background-color: #7D7C7C;
      }
    • Modification de la couleur du texte : « 2015 Citrix Systems….. »
      .aboutBox, .about-view {
      color: #C4C1C5;
      }
    • Modification de la couleur du lien: « Citrix Receiver pour Web »
      .thirdPartyNoticeLink {
      color: #FFFFFF;
      }
    • Modification de la couleur du lien: « www.citrix.com »
      .citrixLink {
      color: #FFFFFF;
      }
  • Modifier le logo de la page de téléchargement du Receiver
    .large .detection-right-links {
    background: url(« ../receiver/images/CustoImages/SF_custo_CitrixReceiver_WebScreen_CBE548FB8FEE049E.png ») no-repeat;
    }
  • Modifier le logo de la page principale
    .logo-container {
    background-image: url(« ../receiver/images/CustoImages/SF_custo_CitrixReceiverLogo_Home_5C24BCEC5A182425.png »);
    }
  • Modifier l’image de la page des favoris
    .no-fav-results-message-image {
    background: url(« ../receiver/images/CustoImages/SF_custo_img_favorites_empty_7FBE69CFC0FDDB2D.png ») no-repeat center;
    }
  • Modifier la couleur de la police du popup de timeout
    .messageBoxText {
    color: FFFFFF;
    }

La mise en place de cette customisation est simple et rapide, décompresser le fichier « Custo2_SF3x.rar » et copier le fichier « style.css » dans « ..\VotreStoreWeb\Custom » (au préalable faite un backup de votre fichier « style.css »), copier le répertoire « CustoImages » dans « …\VotreStoreWeb\receiver\images » puis vider le cache de votre navigateur.

 

Download_2Custo2_SF3x.rar

 

Quelques liens traitant de customisation StoreFront 3.x :

0

Customisation StoreFront 3.x (1/2)

Customiser un StoreFront n’a rien de compliqué (merci CSS et la fenêtre de développement de votre browser favori, exemple la touche F12 pour Chrome).

Ce billet sera divisé en deux parties, la première partie traite de la customisation de la page de login de StoreFront (dans notre cas un SF 3.01.55 fr sur un serveur 2008 R2 sp1 fr) , la deuxième partie traitera de la page affichant les applications et bureaux.

 

SF3_Custo01La page de login du thème X1

Le but dans notre exemple est d’obtenir un thème avec des nuances de gris.


SF3_Custo03
La page de login une fois customisée

La mise en place de cette customisation est simple et rapide, décompresser le fichier « Custo1_SF3x.rar » et copier le fichier « style.css » dans « ..\VotreStoreWeb\Custom » (au préalable faite un backup de votre fichier « style.css »), copier le répertoire « CustoImages » dans « …\VotreStoreWeb\receiver\images » puis vider le cache de votre navigateur.

Vous trouverez ci-dessous la liste des éléments que nous avons modifiés via le fichier « style.css » (contenu dans le répertoire « Custom ») afin de vous permettre de mettre en place votre propre customisation 😉 .

  • Modifier le logo
    .logon-logo-container {
    background-image: url(« ../receiver/images/CustoImages/SF_custo_auth_14B96BFF2B0A6FF8.png »);
    background-repeat: no-repeat;
    background-position: center center
    }
  • Modifier l’image de fond
    .web-screen {
    background-color: #161619;
    background-image: url(« ../receiver/images/CustoImages/SF_custo_FullScreenBackground_46E559C0E6B5A27B.jpg »);
    background-size: 100% 100%;
    min-height: 400px;
    height: auto!important;
    height: 400px
    }
  • Modifier l’effet de transparence de la bannière centrale
    .web-screen .content-area {
    padding: 60px 0;
    background-color: #3f3643;
    background-color: rgba(63, 54, 67, 0.2);
    text-align: center
    }
  • Modifier la couleur des textbox Nom d’utilisateur et Mot de passe
    .credentialform .plain {
    margin-left: 0;
    color: #FFFFFF;
    font-size: 17px;
    font-weight: 300;
    line-height: 44px
    }
  • Modifer la couleur du bouton « Ouvrir une session »
    .button.default {
    background-color: #1E1E1E
    }
  • Modifier la couleur et taille des champs Username et Password
    .credentialform input[type=text],
    .credentialform input[type=password],
    .credentialform .pseudo-input {
    box-sizing: border-box;
    width: 385px;
    height: 40px;
    outline: 0;
    border: 0;
    background-color: #E4E3E3;
    font-size: 16px;
    color: #000
    }

Download_2Custo1_SF3x.rar

0

StoreFront 3.x erreur : Impossible de démarrer le bureau…….

Sur un cluster de StoreFront 3.0 (W2K12 US)  nous avons rencontré un problème de lancement d’applications et bureaux publiés  (ferme en XA 7.6 US) avec Internet Explorer (ver 9,10 et11), en effet cela fonctionnait sans problème avec Firefox et Chrome.

SF3Error1On va pas se réconcilier de si tôt avec IE

 


En regardant sur les Storefronts nous avons constaté les Event ID 0 et 28.


SF3Error2

 

Description: Failed to launch the resource ‘………………’ using the Citrix XML Service at address ‘http://VotreServeur/scripts/wpnbr.dll’. The XML service returned error: ‘not-trusted’.

 

SF3Error3

 

Description: The Citrix servers do not trust the server. This message was reported from the XML Service at address http://VotreServeur/scripts/wpnbr.dll [NFuseProtocol.TRequestAddress].


Ce qui nous a mis sur la piste est bien sur le « The Citrix servers do not trust the server », en effet en lancant un Get-BrokerSite sur un de nos Delivery Controller nous avons constaté que la valeur TrusRequestsSentToTheXmlServicePort était à False.


SF3Error4On vous l’accorde ça n’explique pas le fait que ça fonctionne avec d’autres navigateurs

 

Afin d’activer le TrustRequestSentToTheXmlServicePort il faut lancer la commande suivante sur un de vos Delivery Controller : Set-BrokerSite -TrustRequestSentToTheXmlServicePort $True

 

SF3Error5La commande Get-BrokerSite confirme bien que nous sommes en True en TrustRequestSentToTheXmlServicePort

 


SF3Error6
Et oui avant on pouvait setter l’approbation des requêtes XML en policy (exemple sur une ferme en XA 6.5)

 

0

StoreFront 3.0 : perte des icones

Sur un groupe de StoreFront 3.0 de qualif nous avons rencontré un problème d’icônes. En effet toutes les icônes des applications publiées et bureaux publiés ne s’affichaient plus.

 

SF3_Error3Sympa les carrés blancs…

 

En regardant les events des StoreFront impactés on a vite trouvé la cause dans l’event ID 2 :

 

Log Name:      Citrix Delivery Services
Source:        Citrix Receiver for Web
Event ID:      2
Task Category: (3003)
Level:         Error
Description:
There was an error during an icon request.
System.UnauthorizedAccessException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b66a5c561874e091
Access to the path ‘C:\inetpub\wwwroot\Citrix\VotreStoreWeb\App_Data\CtxsWebProxyIconCache\L0NpdHJpeC9WRFhBL5Jlc291cmNlcy99Mi9RamxEUVRBeE8UZ3pSVFF9T1RoRFJVVTNOMF


SF3_Error1En modifiant les permissions NTFS le problème subsistait

 

Afin de résoudre ce problème d’affichage nous avons supprimé le contenu du répertoire C:\inetpub\wwwroot\Citrix\VotreStoreWeb\App_Data\CtxsWebProxyIconCache.

 


SF3_Error4On peut retourner à la custo de nos StoreFront (custo qui fera prochainement l’objet d’un billet)

 

2

StoreFront : Impossible de traiter votre demande

Au sein d’une infra comprenant notamment des StoreFront 3.0 (W2K12 US et issus d’une migration StoreFront 2.5 vers 3.0) nos utilisateurs rencontraient l’erreur ci-dessous lors de l’accès à un magasin spécifique.

 

Billet2Dans un prochain billet nous traiterons la modification de ce type de pop-up 🙂

 

En regardant les logs des StoreFront, nous avons constaté un nombre conséquent d’évents Id 17.

Log Name:      Citrix Delivery Services
Source:        Citrix Receiver for Web
Event ID:      17
Task Category: (3002)
Level:         Error
Description:
Failed to run discovery
Citrix.Web.DeliveryServicesProxy.ConfigLoader.DiscoveryServiceException, ReceiverWebConfigLoader, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null
An error occured while contacting the Discovery Service
at Citrix.Web.DeliveryServicesProxy.ConfigLoader.Discovery.AppendConfigurationFromDiscoveryService(WebReceiverConfigSection section)
at Citrix.Web.DeliveryServicesProxy.ConfigLoader.Discovery.RunDiscovery(WebReceiverConfigSection configSection)
at Citrix.Web.Proxy.Filters.DiscoveryComplete.OnAuthorization(AuthorizationContext filterContext)
System.Net.WebException, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
The underlying connection was closed: An unexpected error occurred on a send.
Url: https://127.0.0.1/Citrix/VotreStore/discovery

 

billet2

 

Le problème ne se présentant que sur un store spécifique nous avons comparé les fichiers web.config (situés dans VotreStoreWEB) entre un magasin sans l’erreur et le magasin présentant l’erreur, il s’avère que le problème se situait au niveau du loopback qui était à on sur le magasin présentant le problème. Une fois le loopback passé à off le magasin était à nouveau disponible.

 

<communication attempts= »2″ timeout= »00:01:00″ loopback= »Off »

 

La CTX133904 (mise à jour le 18/09/2015) traite ce type de problème.

 

Ce billet nous ramène à nos sources 🙂 .