PI Services

Le blog des collaborateurs de PI Services

SEP - Installation de SAV 10 sur linux

L’installation de SAV 10 demande des pré-requis d’installation.

Avant d'installer tous les paquets, vous devez installer Sun JRE version 1.4.2 ou supérieur avec la version illimitée de JCE. Par défaut, JRE est livré avec la version de cryptographie forte de JCE, mais LiveUpdate nécessite la version illimitée. Si vous voulez utiliser l'interface graphique, vous devez également installer un environnement X11.

Il y a des pré-requis supplémentaires pour certains noyaux Linux (Fedora et Debian). Red Hat étant nativement supporté, nous ne détaillerons pas ces pré-requis.

Ils sont disponibles sur le site de Symantec à l’addresse : http://service1.symantec.com/support/ent-security.nsf/docid/2010062217010148.

L'installation des packages sous Linux doit respecter un ordre précis :

1. SAV

2. savap (ou savap-x64 pour la version 64-bit)

3. savjlu

4. savui

En premier, le noyau de SAV : SAV

Il contient le noyeau : « savap »

Il utilise une fonctionalité de recherche d’OS et de composants dont il a besoin.

Attention, au moment du démarrage du système, SAV pour Linux détecte la distribution Linux exécutée et assemble une liste des modules du noyau.

« Using a "fuzzy match" algorithm, it will go through the list of candidates, one at a time, until it finds one that can be loaded by the Linux OS. »

L’utilisation d'un algoritme à adéquation partielle ("fuzzy match") permet de lister les composants un à un, jusqu'à ce qu'il trouve celui qui peut être chargé par le système d'exploitation Linux.

Si aucun des systèmes linux n’est détecté comme compatible et ne peut être chargé dans le noyau, SAV pour Linux va écrire un message d'erreur dans la console et enregistrer l'erreur dans le journal des messages du système (/var/log/messages ou /var/log/syslog).

Les deux autres paquets contiennent Java et les fichiers LiveUpdate GUI.

Une fois l'installation terminée, vérifiez que les démons suivants sont en cours d'exécution:

1. rtvscand

2. symcfgd

Si ces processus ne sont pas en cours d'exécution, vous pouvez les démarrer comme suit:

1. # / Etc / init.d / start rtvscand

2. # / Etc / init.d / start symcfgd

Pour rappel :

Doc Sav 10 linux : Lien FTP

Pour préconfigurer le package de SAV 10 for Linux, il faut utiliser « ConfigEd.exe ».

test

http://service1.symantec.com/SUPPORT/ent-security.nsf/docid/2007100513224548?Open&seg=ent

Cette application demande la présence d’un SAV sur le poste qui l’exécute.

Note : il est possible de passer des commandes d’exclusion de Scan, directement sur le serveur une fois celui ci installé :

http://service1.symantec.com/SUPPORT/ent-security.nsf/docid/2009072917021448?Open&seg=ent

Pour info :

un script et un fichier texte commençant par #!/bin/sh

Exemple de script pour faire une exclusion :

#!/bin/sh

symcfg add -k '\Symantec Endpoint Protection\AV\Storages\FileSystem\RealTimeScan' -v HaveExceptionDirs -d 1 -t REG_DWORD

symcfg add -k '\Symantec Endpoint Protection\AV\Storages\FileSystem\RealTimeScan\NoScanDir' -v /my/path/to/folder1 -d 1 -t REG_DWORD

/my/path/to/folder1 étant le chemin du dossier à exclure.

(Lu depuis http://www.tuteurs.ens.fr/unix/shell/script.html )

ensuite il faut le rendre exécutable chmod u+x lenomdufichier et pour le lancer soit : ./lenomdufichier ou sh lenomdufichier

SEP – Préinstaller le client SEP dans une image “Master” de type Ghost

Problème rencontré :

Dans le cadre d’une implémentation de SEP dans une entreprise, beaucoup de services informatiques ont la volonté d’intégrer le client SEP dans le “Master”. Pour intégrer le produit, l’idée première serait de créer un package d’installation avec la console SEPM et de lier le client SEP directement a la console. Ce package serait déployé sur le poste de référence et donc présent au sein du "master".

Cette idée d’optimisation serait idéale si le client SEP ne possédait pas un “SID” unique créé lors de l’intégration du client à l’architecture SEP. L’effet créé est que un seul poste remonte dans la console (même si le master contenant l'installation de SEP est déployé sur des centraines de postes), et change de nom, d’IP, … à chaque démarrage d’une machine issue de la même intégration.

Exemple, dans l’ajout d’un poste (PosteB) avec le même client SEP d’installé, la communication avec le serveur SEPM ne fait pas s’ajouter un client supplémentaire dans la console, mais change les “informations” d’un autre poste (PosteA)

clip_image002clip_image004

Solution apportée :

Pour optimiser le déploiement, il est possible de pré-installer le client SEP dans un “Master”. Le client doit être impérativement installé en mode “Non-géré”. A la fin d’un déploiement, il suffit de “lier” le client SEP a la console de gestion grâce a l’outil “Sylinkdrop.exe” et d’un fichier de liaison “Sylink.xml”.

Symantec recommande d’installer l’antivirus après la “masterisation” du poste. Cela évite d’avoir à refaire les “Masters” à chaque évolution (MRx) du produit.

Si des masters ont déjà été créé, voici un lien de Symantec qui explique les modifications à apporter au client SEP installé:

http://service1.symantec.com/support/ent-security.nsf/854fa02b4f5013678825731a007d06af/d84071c5137d6d318825738a00663b8d?OpenDocument

NOTE: La clé de registre HKLM \ SOFTWARE \ Symantec \ Symantec Endpoint Protection \ SMC \ SYLINK \ SyLink \ SySoftk peut également être supprimée si elle est présente.
Une fois l'image “Ghost” appliquée sur un nouveau système, le client va générer une valeur d'identification unique, se connecter avec son SEPM et s’enregistrer.  Lors de l'inscription sur le le serveur de gestion,  SEPM va enregistrer toutes les informations clientes nécessaires dans la base de données.

SEP – Problème de redémarrage en boucle sur certains postes dans la console SEP Manager

Problème rencontré

Certains postes peuvent rester indéfiniment avec la notification « besoin d’un redémarrage pour le Network Threat Protection » alors qu’ils ont déjà été redémarrés plusieurs fois depuis l’installation du client SEP et alors même que le composant Network Threat Protection (NTP) n’est pas installé.

Solution apportée

L’origine de cette panne est la DLL Teffer2.sys. Cette DLL n’arrive pas ou plus à se charger. Le problème est que cette DLL n’est utilisée que pour le composant NTP.

Cf. la Kb de Symantec :

Une réparation de l’installation ou une réinstallation du produit ne suffisent pas pour régler ce problème.

La solution est d’installer le composant NTP de SEP pour que le système enregistre la DLL, puis de re-désinstaller proprement le composant pour que Windows dé-valide le besoin de redémarrage et de chargement de cette DLL.

LUA - Optimisation des performances d'un serveur Live Update interne

Rappel sur LUA et PostGreSQL

Dans le cadre d’un projet d’intégration de SEP, j’ai installé un serveur LiveUpdate en interne. LiveUpdate est la technologie utilisée par les produits Symantec pour se mettre à jour par Internet (c'est l'équivalent d'un serveur WSUS chez Microsoft).

Dans la suite de ce billet, Live Update désigne le service de mise à jour et Live Update Administrateur (LUA) désigne le serveur interne de distribution des mises à jour.

Le client Live Update utilise une technologie PULL pour se connecter en HTTP et en FTP. Par défaut le client Live Update est configuré pour pointer vers les serveurs publics de Symantec. Il est possible de modifier ce comportement de manière à ce qu'il se connecte au serveur LUA interne en lieu et place des serveurs publics.

Le serveur LiveUpdate Administrateur utilise le moteur de base de données PostgreSQL . La version de PostgreSQL fournie avec LUA 2.x est la version 8.1(cf. site officiel PostGreSQL).

Remarque : Le support technique de Symantec recommande fortement à ses clients l'application de toutes les mises à jour du serveur LUA de manière à bénéficier de toutes les améliorations disponibles (notamment des améliorations apportées par la version 8.1 de PostGreSQL).

Le moteur PostGreSQL est configurable via le fichier « postgresql.conf » situé a la racine du dossier d’installation de LiveUpdate Administrator.

Tuning des performances PostGreSQL

Voici les principaux paramètres ayant une grande influence sur les performances de la base ainsi que les valeurs recommandées :

1. shared_buffers

Le paramètre shared_buffers détermine la quantité de mémoire utilisée pour la mise en cache des données. Certaines sources recommandent une valeur correspondant à 25% de la mémoire vive du serveur.

Par défaut la valeur du paramètre shared_buffers est de 32Mo avec LUA 2.2. Une valeur de 512 Mo permet d'améliorer les performances. Certains gros clients ont augmenté cette valeur jusqu'à 1024 Mo et on ensuite pû observer de grandes améliorations.

2. temp_buffers

Le paramètre temp_buffers n'est utilisé que pour le maintient des tables temporaires en mémoire.

Comme LUA 2.x ne dépend pas fortement de ces tableaux, certains clients ont réduit cette valeur de 2 Mo dans le cadre de leur mise au point.

3. work_mem

work_mem fixe la quantité maximale de mémoire à utiliser pour l’exécution d’une requête.

Le réglage de work_mem à 256 Mo a conduit à une amélioration des performances pour certains clients.

4. max_fsm_pages

Cette valeur doit être réglée sur le nombre maximum de pages de données (affichage Web) que vous voulez modifier ou supprimer. Une valeur de 20 000 a bien fonctionné pour certains clients.

5. wal_buffers

Une valeur de 256Kb devrait être suffisamment grande. pour une bonne utilisation de LUA.

6. checkpoint_segments

Les valeurs recommandées vont de 16 à 128 en fonction de l’espace disque disponible.

Par défaut, la valeur est de 3. Certains gros clients ont augmenté cette valeur à 30 et vu de grandes améliorations.

7. effective_cache_size

Effective_cache_size définit la taille du cache disque par rapport à la quantité de mémoire RAM disponible pour la mise en cache des données,

Il est recommandé de configurer la valeur effective_cache_size à 50% de la RAM du système (cette préconisation est valide si et seulement si le serveur est dédié au rôle LUA).

Par défaut, LUA 2.2 a effective_cache_size a une valeur de 128Mo. Certains gros clients ont augmenté cette valeur jusqu'à 2048 Mo et vu de grandes améliorations.

SEP – Méthodologie de montée de version

SEP, Symantec Endpoint Protection est le dernier antivirus de Symantec. Chaque évolution de SEP est nommée MR (Major Release). Symantec corrige et améliore la solution SEP à chaque release. Il est donc important de toujours maintenir à jour la solution avec le dernier correctif.

Aujourd’hui, nous sommes à la version SEP MR6

Chaque MR apporte trois évolutions :

  • Evolution du SEPM (cf post sur l’architecture SEP)
  • Evolution de la base SEP (SQL ou Sybase)
  • Evolution des clients

Ces évolutions ne sont ni une mise a jour du moteur antivirus, ni une mise à jours de la base virale du client SEP.Chaque montée de version fait donc l’objet d’un « upgrade » de l’architecture SEP.

Il existe plusieurs méthodologies pour faire cette montée de version. Voici celle que j’estime être la plus sure, et la plus rapide.

Les pré-requis sont :

  • Un serveur de « spare »
  • La nouvelle version (les sources, CD1)
  • Du temps :-) (cette migration peut se faire sur deux à trois jours)

1) Rappel d’une architecture SEP (cf : Lien Solution SEP )

Une architecture SEP est constituée des composants suivants :

  • SEPM (manager)
  • Clients SEP (postes et serveurs client)
  • GUP (client SEP, serveur ou poste de travail, relais pour la mise à disposition des mises à jour)
  • Base de données (une par défaut, SQL ou Sybase) SEP

clip_image002[5]

2) Montage d’un serveur de relais pour la migration

Un second serveur de relais sert à ne pas impacter les utilisateurs lors de la migration du serveur SEPM (montée de version du SEPM et de la base de données).

Donc, la première des actions est de monter un second serveur avec une seconde base (même version que le premier).

3) Synchroniser les deux serveurs

Le but de la synchronisation est de s’assurer que les deux bases aient le même niveau d’information.

  • Politique
  • Client
  • Package de déploiement

4) Faire basculer les postes clients sur le second serveur

Cette bascule s’effectue via la configuration de la liste de serveur SEPM.

clip_image004[4]clip_image006[4]

Il faut créer une liste (via la copie de la liste par défaut est un bon moyen).

clip_image008[4]

Créer une nouvelle priorité de serveur, et ajouter le second serveur à la liste.

clip_image010[4]

Attention, il faut bien vérifier que le nouveau serveur est en priorité1

5) Casser la synchronisation

Lors de la migration d’un serveur SEPM, la base est migrée. Si la synchronisation est active, elle risque de casser les tables de la seconde base.

6) Migrer le premier serveur

Lancer simplement le setup. Exe du CD 1 dans le dossier SEPM

7) Vérifier le bon fonctionnement du SEPM, de la base

Redémarrer le serveur et la base.

Vérifier que les informations de la base sont accessibles via la console de gestion SEP…

clip_image012[4]

8) Basculer un lot de postes clients SEP et vérifier le bon fonctionnement de ceux-ci

Tester que le client est bien connecté au serveur SEPM

Le bouclier informe de l’état de la solution SEP client et informe du lien avec le SEPM (pastille et couleur).

  • Vert OKclip_image014[4]
  • Jaune lié mais léger problème SEP ou définitions non a jour
  • Rouge antivirus désactivé ou non fonctionnelclip_image016[4]
  • -Non présent SEP en mode « Autonome – Hors Ligne » clip_image018[4]

9) Basculer le reste des clients

Les clients doivent être rebasculés dans l’intégralité avant de passer à l’étape d’après.

10) Couper le serveur relais

Le serveur relais n’a pas besoin d’être migré.

SEP - Definitions des principes d'une architecture SEPM basique

La solution SEP est la dernière solution antivirale avancée de Symantec. Elle regroupe plusieurs fonctionnalités.

  • Protection antivirale
  • Protection réseau
  • Contrôle des périphériques
  • Protection contre les intrusions
  • Protection contre les « malwares »

Le client (agent SEP), la console (SEPM) de gestion et une base de données (Sybase, SQL), le moteur de mise à jour (LiveUpdate LU) sont les composants principaux.

1) LiveUpdate - LU

LiveUpdate est la technologie utilisée par les produits Symantec pour se mettre à jour par Internet. Il utilise une technologie PULL pour se connecter en http, puis (et/ou) ftp. En combinaison avec un serveur LiveUpdate Administrateur il est possible de modifier son comportement pour qu’il utilise un site interne au réseau d’entreprise pour ses connexions.

image

  

 

 

 

 

 

 

 

 2) Serveur SEPM

La gestion centralisée de la solution Symantec Endpoint Protection (SEP) se fait par l’intermédiaire d’un serveur SEP Manager (SEPM). Ce serveur s’appuie sur une base de données pour stocker toutes les informations générées par les activités de la solution configurations, politiques, logs, packages d’installation, mises à jour logicielles ou de signatures, etc. Ce serveur est géré par une console qui peut être locale ou déportée.

image

3) Console SEPM locale ou déportée

Cette console, écrite en JAVA, se connecte à un serveur SEPM, soit localement, ou à distance. Son installation est automatique pendant l’installation du serveur SEPM, mais par une simple connexion au site SEPM il est possible de l’installer à distance sur un ou plusieurs poste(s) administrateur.

image

 

 

 

 

 

 

 

 

4) Group Update Provider (GUP) - optionnel

Le Group Update Provider, ou GUP (en français : Fournisseur de Mise à jour Groupée), est un PC ou un serveur sur un site, qui a été identifié par la console comme un « proxy » pour la mise à disposition des mises à jour de signatures. Il utilise un protocole http(s) modifié, et donc simule un serveur.

image