PROJET AUTOBLOG


IT-Connect

Site original : IT-Connect

⇐ retour index

WordPress – Gérer la génération des images

mercredi 9 juillet 2014 à 08:58

I. Présentation

Lorsque vous envoyez une image sur votre site WordPress par l’intermédiaire du formulaire d’envoi intégré, WordPress ne se contente pas d’uploader uniquement l’image. En effet, il génère des images de tailles différentes selon ce que vous avez configuré dans WordPress, ce que votre thème et ce que vos plug-ins requiert.

Ainsi, pour une image envoyée vous pouvez vous retrouver avec 10 fichiers supplémentaires sur votre serveur en obtenant ce genre de chose :

wpimg1

Vous voyez qu’il y a de nombreux fichiers, un fichier correspondant à l’image originale et d’autres fichiers avec d’autres dimensions. Les dimensions étant précisées à la fin du fichier : -250×300, -160×160, -200×150, etc.

Pour rappel, les images sont stockées par défaut dans le répertoire suivant : /wp-content/uploads

Dans ce tutoriel, intéressons-nous à la gestion de la génération des images afin de créer de nouvelles tailles d’images mais aussi d’empêcher la création sous certaines tailles. Cela évitera de surcharger votre serveur de fichiers inutilisés.

L’intérêt de générer des images de tailles différentes à partir de l’image d’origine est de charger un fichier de taille adapter selon où il est placé sur le site. Par exemple, votre thème pourra appeler les images en dimension type “vignette” plutôt qu’une image de taille originale qui serait bien plus lourde à charger lors de la connexion cliente.

II. La configuration des médias

Pour gérer la taille des images générées par WordPress, depuis l’interface d’administration accédez à “Réglages” puis “Médias“. Sur cette page, vous pourrez configurer 3 tailles d’images que WordPress doit générer lorsque vous uploader un fichier.

wpimg2

Si vous utilisez ces 3 tailles proposées par WordPress, cela vous fait déjà potentiellement 4 fichiers pour chaque image.

III. Le thème et les plug-ins

Quant au thème et aux plug-ins ce n’est pas aussi simple à gérer. En fait, chaque thème et chaque plug-in peut demander à WordPress de lui générer une image de taille personnalisée.

A. Création d’image avec add_image_size

Pour créer une image à des dimensions personnalisées, il faudra utiliser la commande :

add_image_size();

D’après les informations fournies dans le Codex de WordPress, cette fonction peut être utilisée comme ceci :

add_image_size( "nom", largeur, hauteur, proportion );

L’attribut nommé “proportion” dans l’exemple ci-dessus est nommé “crop” dans le Codex WordPress, il est correspond à un paramètre booléen (true/false) permettant d’indiquer si les images générées doivent être proportionnées (false) ou recadrées pour être créées aux dimensions exactes (true).

Par exemple, si l’on veut créer une vignette nommée “slider” de largeur “300 px” et de hauteur “200 px” devant être recadrée, il faudra déclarer :

add_image_size( "slider", 300, 200, true );

B. Comment empêcher la génération de certaines images ?

Si certaines images redimensionnées vous sont inutiles et que vous souhaitez empêcher qu’elles soient générées, il faudra supprimer la déclaration add_image_size() correspondante dans un fichier PHP.

Deux questions se posent :

- Quelles tailles d’images sont générées ? Par qui ?

- Dans quel fichier PHP trouver les déclarations ?

Pour répondre à ces deux questions, une commande s’impose :

grep "add_image_size" * -ri

Cette commande cherchera la présence de l’expression “add_image_size” dans tous les fichiers situés dans le dossier courant et dans ses sous-dossiers, donc avec récursivité, et sans prendre en compte la casse.

Je vous conseil d’exécuter la commande en se positionnant au préalable dans le dossier correspondant à votre thème ou dans le répertoire de plug-in, cela évitera que la commande parcoure trop de fichiers d’un coup et que l’exécution prenne trop de temps à parcourir des répertoires inutiles.

Vous obtiendrez un résultat de ce type :

montheme1/lib/images.gen.php:     add_image_size( 'home', 300, 300, true );
montheme1/lib/images.gen.php:     add_image_size( 'relatedpost', 290, 190, true );
montheme1/lib/images.gen.php:     add_image_size( 'min', 50, 50, true );

Ensuite, vous n’avez plus qu’à éditer les fichiers concernés afin de commenter ou de supprimer l’appel de la fonction dans le but qu’elle ne soit plus généré.

Ça peut vous arriver !

mardi 8 juillet 2014 à 14:00

Dans la vie d’une entreprise, qu’elle soit grande ou petite, les employées vont et viennent et la gestion des identités, et de leurs droits, devient alors un vrai « métier », une véritable activité qui doit être faite de manière très rigoureuse.

Mais, quand le départ d’un collaborateur se fait dans la « douleur », c’est à dire lorsqu’il s’agit d’un véritable conflit se terminant par un licenciement « sec » alors cela peut devenir un véritable parcours du combattant si ce genre de situation n’est pas correctement appréhendée.

logo-dsi2Il y a près de deux ans, un des membres de notre comité de direction est entré en conflit avec la Direction Générale et, cela s’est terminé par une mise à pied, suivie d’un licenciement. Ce sont des choses qui peuvent arriver dans la vie d’une entreprise même si c’est la première fois que j’y étais confronté…

Lorsque le couperai est tombé, la Direction Générale m’a demandé de bloquer rapidement les accès au système d’information concernant ce collaborateur, ce qui paraît « logique » qui plus est dans ce cas où la tension était palpable. Donc j’ai suspendu, en deux coups de clics, le compte de l’utilisateur dans l’annuaire de l’entreprise, son accès VPN (lui permettant de se connecter au S.I depuis l’extérieur) ainsi que sa ligne de téléphone mobile. Dans mon cas, cela paraissait suffisant…au moins j’y croyais…

Le lendemain, je contacte son assistante (son ex-assistante…) et je lui demande, par acquis de conscience, si cette personne possédait des accès sur des services hébergés en dehors de l’entreprise et, surprise, l’assistante énumère une bonne douzaine de services, utilisés au quotidien pour lesquels le collaborateur éconduit disposait d’accès et, pire, il disposait des droits « administrateur » pour ces services et pour administrer ces accès (créer les comptes, les modifier, les supprimer…). C’est à dire que seule cette personne pouvait en administrer les accès et les droits.

Dans cette liste de services on y trouvait, pour moitié, des services « publics » permettant de déclarer un certain nombre d’informations obligatoires et légales concernant l’activité de l’entreprise et pour l’autre moitié des services liés au Groupe auquel nous appartenons, tels des services de
« reportings » sociaux ou financiers et, pour finir, des services divers dont je ne connaissais pas l’existence et qui avaient dû être contractés directement par ce collaborateur, sans en informer quiconque et encore moins la DSI.

Il nous a fallu une bonne dizaine de jours pour reprendre la main sur tous ces services et faire supprimer toutes traces de cet ancien cadre supérieur avec, cerise sur le gâteau quelques petites frayeurs qu’on on s’est aperçu que cet ancien collaborateur s’était connecté, après son licenciement, à certains de ces services mais pour faire quoi ?

Personne n’est à l’abri face à une telle situation et on ne doit jamais prendre à la légère ces problèmes de sécurité car on ne peut pas deviner quelle sera la réaction du collaborateur, certains pouvant littéralement « péter les plombs ».

Alors face à cette menace, un certain nombre de règles doivent être mises en place afin d’éviter :

- qu’un collaborateur de l’entreprise ne puisse contracter, seul, un service « internet » au nom de l’entreprise,
- qu’une solution ne propose qu’un seul compte de type « administrateur »,
- que les procédures de suppression de comptes utilisateurs soient correctement documentées, que ce soient des solutions internes ou hébergées à l’extérieur de l’entreprise.

Alors oui, c’est bien le job du DSI de mettre ces procédures en place et de veiller à leur bonne application. Le DSI doit donc édicter les règles qui doivent s’appliquer et effectuer, le cas échéant, des audits réguliers, services par services, afin que tout cela soit respecté.

Quant à la conservation des comptes de type « administrateur » et de leur mot de passe, assurez- vous qu’il y ait au moins deux personnes dans l’entreprise (voire deux par services dans les organisations de plus grande taille) qui peuvent avoir accès à ces données !

Pour finir, gardez toujours à l’esprit que la « menace » vient aussi de l’intérieur, sans pour autant en devenir paranoïaque mais juste avec un peu de bons sens !

Nouveautés Editions ENI : Hyper-V et Lync Server 2013 au programme

mardi 8 juillet 2014 à 10:00

De nouveaux ouvrages sont disponibles à l’achat sur le site des Editions ENI, faisons le point ! Au programme :

- Hyper-V (version 3) et System Center Virtual Machine Manager

eni-hypervv3Ce livre vous permettra de mettre en place une plateforme de virtualisation sous Hyper-V basée sur Windows Server 2012 R2 Hyper-V et System Center Virtual Machine Manager 2012 R2. On y parle implémentation et gestion d’Hyper-V, l’installation, l’administration et la maintenance aussi bien de l’hyperviseur que des machines virtuelles. Des points plus précis sont également abordés comme la gestion du stockage, de la haute disponibilité, ainsi que la sauvegarde et la récupération.

- Java 8

Si vous désirez développer sous Java, vous serez sûrement intéressé par cet ouvrage. En effet, on y apprend les bases du langage, la programmation objet, la création d’application graphiques et d’appels, ainsi que l’accès aux bases de données en Java et le déploiement d’applications sur un serveur web applicatif.

- Lync Server 2013

eni-lyncLync, le service de communication unifié de Microsoft, fait l’objet d’un ouvrage où l’on aborde Lync Server 2013 en détails. Au programme, l’architecture de l’application, les pré-requis à l’installation suivit d’une installation, puis, une partie configuration et administration très complète.

- Objectif Cloud

L’informatique dans les nuages ça vous parle ? Cet ouvrage s’adresse à tous ceux qui souhaitent décrypter tous les enjeux du Cloud avant de s’y engager. Différents points sont abordés : les architectures générales d’un service hébergé dans le Cloud, les enjeux de production liés à l’industrialisation, les grands enjeux technologiques basés sur la virtualisation, le cycle de vie, les niveaux de services basés sur ITIL, etc.

- System Center 2012 R2 Configuration Manager (SCCM)

Ce livre vous permet d’acquérir des compétences pour déployer, administrer et utiliser la solution SCCM 2012 R2.

- Word 2013

Ce livre est en fait un cahier d’exercices dédié à Word 2013, sur différents thèmes : Création et saisie de documents, impression et mise en page, Présentation des données, thèmes, styles et modèles, longs documents, tableaux, insertion d’éléments divers comme les SmartArt, et, le publipostage et les formulaires.

- Windows Server 2012 R2

Ce livre balaye de nombreuses fonctionnalités de Windows Server 2012 R2 comme Hyper-V, Active Directory avec la gestion des objets et l’automatisation de l’administration d’un AD, le DHCP, le DNS, la gestion d’un serveur de fichiers et de l’espace de stockage local, les GPO, la surveillance des serveurs, etc.

commander-eni

Ces livres sont dès à présent disponible sur le site des Editions ENI !

Test de bande passante en ligne de commande

mardi 8 juillet 2014 à 09:00

I. Présentation

Nous avons tous déjà fait des tests de bande passante en ligne via des sites comme degroupetest.com. Aujourd’hui je vous propose un petit outils qui va vous permettre d’effectuer ces mêmes tests en ligne de commande depuis un terminal Linux accompagné de quelques fonctionnalités sympa qui permettent d’être un peu plus précis comme par exemple en sélectionnant une position géographique source pour le test.

II. Speedtest- cli : Installation

Nous allons donc commencer par installer cet outils qui se nomme speedtest-cli. On peut passer par python-pip.
Debian/Ubuntu:

apt-get install python-pip

Fedora:

yum install python-pip

Maintenant on installe speedtest-cli :

pip install speedtest-cli

Ou avec easy_install :

easy_install speedtest-cli

On peut également passer par l’installation manuelle :

wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
 chmod +x speedtest-cli

II. Speedtest- cli : Utilisation

On peut alors utiliser l’outil via la commande suivante :

speedtest-cli

Résultat :

Speedtest01

Par défaut, l’outil va chercher un serveur de test proche de votre localisation (entre 80 et 150 km pour ma part), celui-ci changera à chaque test.  Si l’on souhaite avoir un résultat graphique, on peut spécifier l’option “–share” qui nous donnera une URL à la fin du test sur laquelle nous pourrons trouver un résultat comme celui-ci :

Speedtest02

On peut également avoir une liste de serveur que nous pouvons spécifier avec l’option “–list“:

Speedtest03

On a alors la possibilité de faire des tests sur des serveurs du monde entier, par exemple si nous souhaitons tester des serveurs situés à Taiwan, on joue sur le résultat avec “grep” :

speedtest-cli --list | grep "Taiwan"

Speedtest04

Puis on envoie notre test en spécifiant un ID de serveur situé là où on le souhaite :

speedtest-cli --server 4948

Speedtest05

Si vous souhaitez avoir plus d’informations sur les options de cet outils, vous pouvez utiliser son aide via la commande suivante :

speedtest-cli --help

Un outils très intéressant pour effectuer des tests rapides ou même du monitoring !

 

 

Ajouter plusieurs ordinateurs au domaine via PowerShell

lundi 7 juillet 2014 à 09:15

I. Présentation

Dans ce tutoriel, nous verrons comment ajouter plusieurs machines à un domaine Active Directory en utilisant PowerShell. Nous commencerons par ajouter une seule machine puis nous verrons la procédure pour plusieurs machines, ce qui peut être pratique notamment lors de l’intégration de plusieurs machines.

Au préalable, vous devez disposer d’un domaine fonctionnel, avec un DNS valide et un contrôleur de domaine, où les postes clients sont capables de communiquer avec le contrôleur de domaine.

II. Ajout d’une seule machine

Le commandlet “Add-Computer” devra être utilisé pour ajouter une machine à un domaine, on utilisera plusieurs arguments :

-DomainName : Nom du domaine à joindre, comme par exemple : entreprise.local

-Credential : Compte utilisateur à utiliser pour la connexion à l’annuaire. De la même manière qu’il est demandé lors d’une intégration en mode graphique.

On ajoutera également “-Restart -Force” afin d’être sûr que la machine redémarre suite à l’intégration dans le domaine. D’ailleurs, cela est nécessaire pour finaliser l’intégration comme l’indique la console PowerShell suite à l’exécution de la commande : “WARNING: The changes will take effect after your restart the computer <nom>

Cette commande doit être exécutée depuis la machine que l’on souhaite intégrer au domaine :

Add-Computer -DomainName it-connect.fr -Credential Administrateur@it-connect.fr

Demande du mot de passe lors de l'utilisation de Add-Computer

Demande du mot de passe lors de l’utilisation de Add-Computer

III. Intégration de plusieurs machines

Passons désormais à l’intégration de plusieurs machines, le plus intéressant ! En plus, ce n’est pas plus compliqué puisque l’on utilise le même commandlet, à savoir “Add-Computer“. Cette fois-ci, nous n’exécuterons pas la commande depuis la machine à intégrer au domaine mais plutôt depuis une machine “non concernée” par cette intégration.

De plus, nous allons ajouter l’utilisation de l’argument “LocalCredential” afin d’indiquer un compte local utilisable sur la machine pour effectuer la jonction au domaine. Sinon, cela signifierait que l’on peut initier une jonction au domaine sans s’authentifier sur la machine distante, imaginez un peu… Quant à la liste de machines, elle doit contenir les noms de chaque machine séparés par une virgule.

Voici une commande d’exemple :

Add-Computer -ComputerName SRV01,SRV02 -DomainName it-connect.fr –Credential Administrateur@it-connect.fr -restart –force -LocalCredential Administrateur

Deux mots de passe vous seront demandés : Celui de l’administrateur du domaine (compte indiqué dans ce cas) et celui de l’administrateur local (compte utilisé dans ce cas pour l’authentification locale).

Suite au redémarrage des machines, vous devez pouvoir vous connecter avec un compte du domaine, et, vous devez retrouver ces machines dans votre annuaire au sein de l’Unité d’Organisation nommée “Computers“.