Archives mensuelles : janvier 2009

Afficher du code dans un article WordPress

Pour afficher du code PHP ou HTML dans un article avec WordPress c’est parfois la croix.

Alors de gens ont eu l’idée de développer des plugins pour éviter de nous prendre la tête à apprendre une syntaxe vraiment merdique

Pour installer le plugin, décompresser l’archive depuis le site http://blog.hackerforhire.org/code-snippet/#supportedLang, copier le répertoire codesnippet dans votre répertoire plugin de votre WordPress et l’activer depuis la console d’administration.

Pour appeler ce plugin dans vos page, se mettre en éditeur HTML et ouvrir une balise [code].

[code langage="voir liste ci-dessous"][/code]

Liste de langages pouvant être appelés avec ce plugins :

* actionscript-french
* actionscript
* ada
* apache
* applescript
* asm
* asp
* bash
* caddcl
* cadlisp
* c_mac
* c
* cpp
* csharp
* css-gen
* css
* delphi
* diff
* div
* dos
* d
* eiffel
* freebasic
* gml
* html4strict
* ini
* inno
* java
* javascript
* lisp
* lua
* matlab
* mpasm
* nsis
* objc
* oobas
* oracle8
* pascal
* perl
* php-brief
* php
* python
* qbasic
* sdlbasic
* smarty
* sql
* vbnet
* vb
* vhdl
* visualfoxpro
* xml

Tuto : comment installer WPKG (serveur – client)

Une solution de télé déploiement assez sympa pour les possesseurs de serveur Linux avec des clients Windows

Pré requis : Un serveur Linux avec apt://LAMP + apt://Samba, un client Windows

Installation du client :

Télécharger la dernière version stable depuis l’adresse : http://wpkg.org/Download
WPKG Client 1.2.1.msi

Paramétrage

Rubrique WPKG source

Dans le champ WPKG file path (required), indiquer où se trouve le script wpkg.js.
ex : serveurpartagewpkg.js

Dans le champ WPKG parameters, mettre les options qui vous conviennent. Par défaut :
/synchronize /nonotify /quiet

Dans le champs WPKG path user, renseigner l’utilisateur ayant les droits de lecture sur le répertoire partagé, ex :
user

Dans le champs WPKG path password, renseigner le mot de passe de votre utilisateur, ex :
mot de passe

Rubrique WPKG execution context

Dans le champs user, mettre le compte avec lequel sera installer les applications, ex :
sytem
Dans le champs password, laisser vide pour le compte system

Installation du serveur :

Télécharger la dernière version stable depuis l’adresse : http://wpkg.org/Download
wget http://wpkg.org/files/stable/WPKG-1.0.2.zip

Déziper le contenu :
unzip WPKG-1.0.2.zip

Paramétrage du serveur SAMBA

Maintenant, sur le serveur où vous voulez installer WPKG, créez un répertoire nommé /wpkg.
mkdir /wpkg

Editer votre fichier de configuration pour Samba
vi /etc/samba.smb.conf

Samba avec security = share :

[wpkg]
comment = Windows Packager
path = /wpkg
read only = yes
browseable = no
valid users = guest, nobody # Note permettre à tout le monde de se connecter
guest ok = yes

Samba avec security = user :

[wpkg]
comment = Windows Packager
path = /wpkg
read only = yes
browseable = no

Redémarrer votre serveur Samba :
/etc/init.d/samba restart

Paramétrage du service WPKG

Depuis le répertoire où vous avez dézippé les sources, copier ces quatre fichiers dans le répertoire partagé /wpkg :

  • wpkg.js
  • hosts.xml
  • profiles.xml
  • packages.xml

cp wpkg.js hosts.xml profiles.xml packages.xml /wpkg/
cd /wpkg

Maintenant, éditer le premier fichier hosts.xml pour ajouter un ordinateur afin d’effectuer les premiers tests.
Entre les balises [code lang="xml"] et [/code] remplacer la variable yourcomputer dans host name= par le nom réseau de votre poste de travail :
[code lang="xml"]

[/code]

Ok, maintenant que nous avons attribué notre ordinateur à un profil, il faut créer le profil, puis lui ajouter un paquet, éditer maintenant le fichier profiles.xml
[code lang="xml"]

[/code]

Donc maintenant nous avons un hôte liée à un profil. Et le profil contient un paquet appelé « dia ».
Maintenant, nous devons créer notre package, donc nous allons éditer le fichier packages.xml. Le fichier packages.xml contient un tas d’exemples, alors éditer le pour obtenir ceci :
[code lang="xml"]

[/code]

Je vous conseille de ne laisser que la ligne correspondante à l’installation, ainsi vous n’obtiendrez pas d’erreur sur les tests de vérification pour checker la version ou la desinstallation.
[code lang="xml"]

[/code]
Le plus facile est derrière nous

Installation du client WPKG

Commande pour tester la synchronisation :
cscript serverwpkgwpkg.js /synchronize /debug

Télécharger le dernier client stable à cette adresse : http://www1.wpkg.org/files/client/stable/ et installer le.

Next Part to translate…

[code lang="java"]
I got this install definition from http://wpkg.org/Dia there is also a larger list of installers here: http://wpkg.org/Category:Silent_Installers

Download a copy of Dia from http://dia-installer.de/index_en.html

(dia-setup-0.96.1-8.exe)

Create a folder inside your WPKG share named graphics and copy the dia-setup-0.96.1-8.exe into it.

Edit the settings of the package so that the install cmd= and upgrade cmd path is the direct path to where you copied the files.

That finishes our Server Install.

Client Install

Download the stable WPKG Client from http://wpkg.org/Download

Should be something like WPKG Client 1.2.1 (Not development release)

On your machine run the WPKG Client 1.2.1.msi (we will use it to create a config file to be pushed out to all the other machines)

You need to create a domain user with low user rights or use any old generic one if you have one. Basically this user needs to be able to read from the WPKG share.

So the first parameter you need to set is the remote path to your WPKG share. (Where wpkg.js resides)

This will be something like yourserverWPKGwpkg.js

You could also use the IP address which would look like 172.168.10.1WPKGwpkg.js (I recommend using the IP address and making sure your server has a hard coded static IP address)

Ok, leave the WPKG parameters as they are (/synchronize /nonotify /quiet)

For the WPKG path user:
NOTE: you have to add WORKSTATION, WORKGROUP or DOMAIN before the username):
192.168.1.1username
DOMAINuser
For the WPKG path password: the password for this user account.

For the WPKG execution context, leave the User as SYSTEM and the password blank. This is the user that will be installing your packages.

Now hit the Test settings to verify your settings. If you run into trouble, double check all of your paths. If you run into the infamous “Multiple connections to a server or shared resource by the same user” error, then try referring to the server by a different name. For example use the ip address, or a full DNS name i.e. yourserver.yourdomain

You should not receive any [FAILED] results. When your settings are as you like them, press the export settings button to save them for later use. Now press Save. This will install the WPKG Service

Ok, let’s test to see if everything is working. We have our host defined, a profile assigned to a host, and packages as part of a profile. So, when we start the WPKG Service it should go and find our computer name, match it to the Test profile, and install the Dia package.

The quickest way to test is to go to start, run, type services.msc and then press ok. Scroll down to the very bottom and click on WPKG Service, and the start button. If everything is working as it should within a few moments you should see the Dia shortcut appear on your desktop.

Now you should install the WPKG client on all of your workstations using the settings.xml file.

One way is Push Install WPKG with Psexec

--Mellerbeck 23:12, 19 December 2008 (CET)
[/code]

Nagios et gateway SMS Ubuntu 8.10

Avoir une notification par SMS avec Nagios

pré requis :

gnokii – un téléphone (Nokia E50) – un cable USB (DKU2) – nagios

Installation

Connecter votre cable au pc puis votre téléphone, pour le Nokia E50, activer PCSuite depuis le téléphone.

Vérifier que votre téléphone est bien reconnu :

ls /dev/ttyACM*

Votre téléphone devrait se trouver sur /dev/ttyACM0, c’est depuis ce périphérique que le logiciel enverra les sms.

Installer l’utilitaire Gnokii :

apt-get install gnokii

Editer le fichier /etc/gnokiirc et rechercher les lignes suivantes pour les modifier :

port = /dev/ttyACM0

model = AT

connection = serial

pour tester l’envoi en direct :

echo "test envoi SMS Gnokii" | gnokii --config /etc/gnokiirc --sendsms +33123456789

Ensuite, donner les droits d’émission à Nagios pour qu’il puisse envoyer les sms et mettre l’utilisateur nagios dans le groupe dialout.

Editer le fichier /etc/group, ajouter l’utilisateur nagios au groupe dialout :

usermod -G "dialout" "nagios"

Editer le fichier /etc/nagios3/conf.d/contact_nagios2.cfg et rajouter la notification par sms au contact:

[code lang="perl"]
define contact{
contact_name nagios
alias Root
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,r
service_notification_commands notify-service-by-email, notify-by-sms
host_notification_commands notify-host-by-email, host-notify-by-sms
email nagios@localhost
pager +33123456789
}
[/code]

Editer le fichier le fichier /etc/nagios/commands.cfg :

[code lang="perl"]
define command{
command_name notify-by-sms
command_line echo "Service SMS : $NOTIFICATIONTYPE$ : $HOSTALIAS$ $SERVICEDESC$ is $SERVICESTATE$ ($OUTPUT$)" | gnokii --config /etc/gnokiirc --sendsms +33123456789
}
define command{
command_name host-notify-by-sms
command_line echo "Hote SMS : $NOTIFICATIONTYPE$ : $HOSTALIAS$ $SERVICEDESC$ is $SERVICESTATE$ ($OUTPUT$)" | gnokii --config /etc/gnokiirc --sendsms +33123456789
}
[/code]

Redémarrer Nagios :

/etc/init.d/nagios3 restart

Pour tester la notification, vous devoir avoir un changement d’état sur un service surveillé par Nagios (ex : SSH).

Stopper ce service et jeter un oeil dans le fichier /var/log/syslog

/etc/init.d/ssh stop

tail -f /var/log/syslog

Il faudra prendre un peu de temps mais vous aurez sous les yeux en regardant le syslog que nagios bosse pour connaitre l’état de votre service (ssh). Il va attendre un peu, histoire de prier un peu pour que le service redémarre avant de vous spamer votre GMS :o)

Sources :

http://doc.ubuntu-fr.org/gsm-nokia

http://www.moroblog.info/Configurer-Smstools.html

http://www.free-4ever.info/index.php/Nagios:notifications_sms

http://blog.nicolargo.com/2008/11/notifications-nagios-par-sms.html

http://www.free-4ever.info/index.php/Communications:SMStools

http://john.mcclumpha.org/linux/Build_your_own_SMS_gateway_with_Ubuntu_Linux_and_Gammu/

http://doc.ubuntu-fr.org/gammu

http://cihar.com/gammu/phonedb/nokia/352/

o:) http://www.zoneminder.com/forums/viewtopic.php?t=10976

http://dt.in.th/2008-01-02.linux-sending-sms.html

http://wiki.gnokii.org/index.php/Cables#DKU-2.2C_CA-53_and_CA-70

http://www.gnokii.org/docs.shtml#dku

Nagios en localhost

Pour installer Nagios, super outil de monitoring (un peu pour faire comme à l’hopital avec les malades mais avec des serveurs), je vous propose la procédure ci-dessous :

Pré requis : un serveur LAMP fonctionnel (Apache2, Mysql4, PHP5) apt://nagios3 ou :

sudo apt-get install nagios3

Super c’est installé, malheureusement pas configuré. Maintenant munissez vous d’un peu d’aspirine, de temps et lisez ce qui suit.

Commande magique pour ajouter votre premier utilisateur  qui aura le privilège de tout suivre depuis la console Web :

htpasswd -c /etc/nagios3/htpasswd.users <username>

Aller sur l’interface http://localhost/nagios3. C’est sombre et il manque du vert pour agaier tout ça. Je vous invite à cliquer sur les différents liens dans le menu de gauche, un lien qui vous sera utile s’appelle Documentation :o).

Retour au fichiers de configuration par le biais de votre éditeur favori et voici un aperçu des principaux :

/etc/nagios3/

  • cgi.cfg
  • commands.cfg
  • nagios.cfg
  • resource.cfg

/etc/nagios3/conf.d/

  • contacts_nagios2.cfg
  • extinfo_nagios2.cfg
  • generic-host_nagios2.cfg
  • generic-service_nagios2.cfg
  • host-gateway_nagios3.cfg
  • hostgroups_nagios2.cfg
  • localhost_nagios2.cfg
  • services_nagios2.cfg
  • timeperiods_nagios2.cfg

Pour avoir accès aux différents services de Nagios, il faut Editer le fichier /etc/nagios3/cgi.cfg

et remplacer l’utilisateur adminnagios par celui créé précédement avec la commande htpasswd.

authorized_for_system_information=nagiosadmin

authorized_for_system_commands=nagiosadmin

authorized_for_all_services=nagiosadmin

authorized_for_all_hosts=nagiosadmin

authorized_for_all_service_commands=nagiosadmin

authorized_for_all_host_commands=nagiosadmin

Un petit : /etc/init.d/nagios3 restart

Sources :

http://doc.ubuntu-fr.org/nagios

http://blog.nicolargo.com/2007/04/exemple-de-configuration-de-nagios.html