Catégories
Reseau

Nagios et Fast Ping (check_fping)

Si vous souhaitez utiliser fping en lieu et place de ping avec votre configuration de Nagios, il faut suivre les étapes suivantes:

Installer fping:

# wget http://fping.sourceforge.net/download/fping.tar.gz
# tar zxvf fping.tar.gz
# cd fping-x.y.z
# ./configure
# make
# make install

Autoriser l’utilisateur nagios à executer fping:

# chmod u+s /usr/local/sbin/fping

Installer ou re-installer les plugins Nagios (par exemple sous FreeBSD):

# cd /usr/ports/net-mgmt/nagios-plugins/
# make install
ou
# make deinstall ; make reinstall

Puis changer le fichier de configurations de Nagios (/usr/local/etc/nagios/commands.cfg):


define command {
command_name check_ping
command_line $USER1$/check_fping $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -n 5
}

define command{
command_name check-host-alive
command_line $USER1$/check_fping $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -n 1
}

Il ne reste plus qu’a relancer Nagios:

#/usr/local/etc/rc.d/nagios.sh reload

>

Et « f »hop…

Catégories
Systeme

Configurer une interface réseau en ligne de commande sous Fedora

Pas trop d’activités cette semaine sur le blog, je suis en déplacement professionnel… Mais comme je viens de passer 1/2 heure à chercher comment on configure une interface réseau quand on n’a pas accès à l’interface graphique de Fedora, je prends 5 minutes pour partager l’informations:

Il y a deux scripts à modifier, le premier est /etc/sysconfig/network-scripts/ifcfg-eth0 (si vous voulez modifier l’interface eth0):

DEVICE=eth0
BROADCAST=192.168.30.255
HWADDR=00:19:B2:2C:6C:41
IPADDR=192.168.30.1
NETMASK=255.255.255.0
NETWORK=192.168.30.0
ONBOOT=yes

le deuxième fichier est /etc/sysconfig/network:

NETWORKING=yes
HOSTNAME=monserveur
GATEWAY=192.168.30.254

Et voili, il ne reste plus qu’a faire prendre en compte la nouvelle configuration par le système:

# ifdown eth0
# ifup eth0

Voili a+

Catégories
Blog

Statcounter, mon nouvel outil de statistique ?

Je suis toujours à l’écoute d’outils de statistiques adaptées à mon besoin (suivre les stats du blog que vous êtes en train de lire). J’utilise actuellement Google Analytics et Feedburner, mais je trouve qu’il leurs manque certaines statistiques à l’un comme à l’autre. Je me suis donc penché sur Statcounter, nous allons voir ces atouts et faiblesses par rapport à la concurrence.

Comme les outils du même genre, Statcounter demande l’insertion d’un code JS dans les pages que vous voulez surveiller (très simple sur wordpress, il suffit de modifier le fichier footer.php de votre thème). A partir du moment ou le code est inséré, les statistiques sont mises à jours en temps reél ! Voici la liste des statistiques disponibles au moment de l’écriture de ce post:
– Résumé en terme du nombre de visiteurs (jour/semaine/mois/trimestre/année).
– Classement des pages les plus visitées.
– Classement des pages d’entrées sur votre site.
– Classement des pages de sorties de votre site.
– D’où viennent vos visiteurs ?
– Analyse des mots clès.
– Analyse des mots clès des moteurs de recherche conduisant à votre site.
– Classement des sites fournisseurs de visiteurs (autre que les moteurs de recherche).
– Classement des moteurs de recherche.
– Chemin pris par les visiteurs sur votre site.
– Durée des visites sur votre site.
– Statistique des visiteurs (OS, browser, pays, adresse IP, …).

Les points négatifs, car il y en a:
– L’interface est en Anglais, pas de traduction en Français.
– La version gratuite est limitée aux derniers 100 visiteurs… Il faut compter 7 Euros par mois pour passer à 1000 et 19 Euros pour passer à 10000.

Conclusion, le service est intéressant, le site rapide et bien fait. Par contre la limitation de la taille des logs aux 100 derniers visiteurs le limite en version gratuite à une phase de test. Je trouve alors les services qu’il propose un peucher par rapport aux solutions gratuites (qui n’ont pas ou peu de limitation en terme de taille de logs).

Bref, je continue à chercher…

Et vous quel outil de statistique vous semble le plus adapté aux blogs ?

Catégories
Open-source Reseau

Connexion d’Asterisk au serveur SIP de Free

Suite à l’article d’hier sur la configuration d’un serveur Asterisk SIP sous Fedora, voici un tutoriel permettant de le connecter au serveur SIP de l’opérateur Free (Freephonie), ou à toutes autres opérateur SIP.

Ce que nous voulons obtenir:
– les appels sortant (vers fixes, portables) depuis un client SIP (X-Lite dans notre exemple).
– les appels entrant sont automatiquement basculés vers le client SIP, puis vers le téléphone branché sur la Freebox (si le client SIP ne décroche pas) et enfin vers la messagerie (si le téléphone ne décroche pas).

Êtes-vous prêt ? Alors c’est partie…

Configuration de votre compte SIP Free

La première chose à faire est d’aller sur l’interface d’administration de votre compte Free afin d’activer votre compte SIP (dans le menu Gestion de mes services de téléphonie).

Cette opération a pour but de rediriger les appels en SIP.

Il faut redémarrer la Freebox pour que la configuration soit prise en compte.

Configuration du serveur Asterisk

Nous allons apporter quelques modifications à notre fichier de configuration SIP (/etc/asterisk/sip.conf).

[general]
context=default
srvlookup=no
externip=81.54.223.16
localnet=192.168.1.0/255.255.255.0
defaultexpirey=1800
dtmfmode=auto
qualify=yes
register = utilisateur:motdepasse@freephonie.net
[freephonie_appelsortant]
type=peer
allow=all
host=freephonie.net
fromuser=utilisateur
username=utilisateur
secret=motdepasse
dtmfmode=inband
qualify=yes
fromdomain=freephonie.net
[freephonie_appelentrant]
type=peer
context=depuisfreephonie
host=freephonie.net
qualify=yes
allow=all

[nicolargo]
type=friend
username=nicolargo
secret=motdepasse
context=maison
quality=yes
nat=no
canreinvite=no
auth=md5
host=dynamic
dtfmode=rfc2833
allow=ulaw
context=internal

Il faut remplacer ‘utilisateur’ et ‘motdepasse’ par ceux fournis par Free dans l’interface d’administration Free.
‘exterip’ doit être remplacée par votre adresse IP publique (aussi récupérable sur l’interface d’administration Free).
‘localnet’ doit être remplacé par l’adresse réseau et le masque de votre réseau local.

Ensuite, on édite le fichier de plan de numérotation (/etc/asterisk/extensions.conf):

[maison]
; Numéros « maison »
exten => 10,1,Dial(SIP/nicolargo) ; quand on compose le 10, le softphone « nicolargo » sonnera
; numéros externes
exten => _9.,1,Dial(SIP/freephonie-out/${EXTEN:1}) ; quand on compose un numero qui commence par 9, on utilise le lien « freephonie » et on passe le numero au peer en ôtant le premier digit.
[depuisfreephonie]
; Contexte pour les appels recus depuis Free
exten => s,1,Ringing
exten => s,2,Dial(SIP/nicolargo)
exten => s,3,Congestion

Il ne reste plus qu’à faire prendre en compte la nouvelle configuration par votre serveur Asterisk:

# asterisk -r
*CLI> restart gracefully

Et voila, vous pouvez tester 😉

Mise à jour du billet

Dans le Linux magazine n°90, un article très complet sur comment configurer son serveur Asterisk avec le service Freephonie de l’opérateur Free.

Catégories
Open-source Reseau

Installation d’Asterisk sur Fedora

Asterisk est un serveur de téléphonie open-source permettant de disposer sur un simple PC de fonctions jusque là réservées aux PABX professionnel. Nous allons dans ce post installer un serveur Asterisk sur PC fonctionnant sous Fedora (Core 6). Nous nous limiterons à la configuration d’un serveur VoIP SIP sans passerelle vers le monde téléphonique.

Attention: si vous voulez utiliser une carte téléphonique de tpy eDigium dans votre serveur, il faudra l’installer AVANT d’installer Asterisk.

Installation d’Asterisk

Nous allons compiler la dernière version d’Asterisk (1.4.2) au moment de l’écriture de ce post à partir des sources (téléchargeable ici).Une fois le fichier téléchargé, il faut commencer par le décompresser:

# tar zxvf asterisk-1.4.2.tar.gz

On lance la compilation avec les commandes suivantes:

# cd asterisk-1.4.2
# ./configure
# make
# make install
# make samples
-> Seulement nécessaire pour un installation initiale. Écrase les fichiers de configuration actuels.
# make progdocs

PS: si vous souhaitez mettre à jour unes version existante d’Asterisk, il faut utiliser les commandes suivantes:

# cd asterisk-1.4.2
# ./configure
# make update
# make clean# make upgrade

Une fois l’installation terminée, vous pouvez tester Asterisk:

# /usr/sbin/asterisk -VAsterisk 1.4.2

L’installation est réussie, on peut passer à la phase de configuration.

Configuration d’Asterisk

Avant de nous attaquer aux fichiers de configuration. Voici la liste des répertoires utilisées par Asterisk:

  • /etc/asterisk contient les fichiers de configuration.
  • /usr/lib/asterisk/modules contient les modules utilisés par Asterisk (codec, applications tierces…).
  • /var/lib/asterisk/agi-bin contient vos scripts.
  • /var/lib/asterisk/firmware contient les drivers pour les cartes compatible Asterisk (par exemple Digium).
  • /var/lib/asterisk/images contient des images pour les applications les supportant.
  • /var/lib/asterisk/keys contient les clès publiques et privées (RSA)
  • /var/lib/asterisk/mohmp3 contient les musiques d’attente au format MP3 (CBR uniquement et pas de tag ID3).
  • /var/lib/asterisk/sounds contient les annonces vocales
  • /var/log/asterisk contient les logs du processus Asterisk

Comme nous allons nous limiter à une configuration purement SIP du serveur Asterisk (sans interface vers le monde téléphonique), la configuration est relativement simple.Il faut commencer par éditer le fichier /etc/asterisk/sip.conf:

[general]
context=default
srvlookup=no
[nicolargo]
type=friend
username=nicolargo
secret=password
quality=yes
nat=no
canreinvite=no
auth=md5
host=dynamic
dtfmode=rfc2833
allow=ulaw
context=internal

Nous venons de créer un utilisateur nicolargo sur le serveur.

Lancement d’Asterisk

Pour lancer la console d’administration Asterisk, il suffit de taper la ligne suivante:

# /usr/sbin/asterisk -c
*CLI>

Nous pouvons alors vérifier que l’utilisateur SIP a bien été créé:

*CLI> sip show users
Username Secret Account
code Def.
Context ACL NAT
nicolargo password default No RFC3581

Puis voir les détails de la configuration de l’utisateur nicolargo:

*CLI> sip show user
nicolargo* Name : nicolargoSecret : <Set>MD5Secret : <Not set>Context : defaultLanguage :AMA flags : UnknownTransfer mode: openMaxCallBR : 384 kbpsCallingPres : Presentation Allowed, Not ScreenedCall limit : 0Callgroup :Pickupgroup :Callerid : « nicolargo » <1208>ACL : NoCodec Order : (gsm:20,ulaw:20,alaw:20)Auto-Framing: No

Pour arrêter le serveur, il faut saisir la commande suivante:

*CLI> stop gracefully

Test du serveur à partir d’un client SIP

Pour mes tests j’ai utilisé X-Lite (disponible sous Linux, Mac et Windows), qui a le bon goût d’être gratuit et parfaitement compatible avec la norme SIP.La configuration doit être la suivante:

L’enregistrement sur le serveur Asterisk (192.168.29.246 dans mon cas) se passe alors sans problème:

Si vous avez un problème pour vous connecté à votre serveur Asterisk, pensez à regarder du coté des règles de Firewall (iptables). Il faut ajouter la règle suivante:

# iptables -A RH-Firewall-1-INPUT -p udp -m udp –dport 5061 -j ACCEPT

A partir de maintenant (et en définissant d’autres utilisateurs), vous devez être capable d’effectuer des appels SIP à l’intérieur de votre réseau.Voila donc une première étape de faite. Dans un prochain post nous verrons comment interfacer notre nouveau serveur vers un serveur père (par exemple chez votre fournisseur d’accès Internet)…
Pour ceux que cela intéresse, cet article raconte le retour d’expérience de l’installation d’une serveur Asterisk en entreprise.

Catégories
Open-source Reseau Systeme

Authentification avec OpenID

Nous allons dans ce post expliquer comment mettre en place une authentification OpenID à partir du nom de domaine de votre site perso/blog.

OpenID est un système d’authentification décentralisé permettant une authentification unique à partir d’un nom de domaine DNS. Il vous permet donc de vous authentifier sur plusieurs sites avec le même profil (login, password, nom, adresse…). Plus d’info ici.

Ce que nous voulons obtenir: Une authentification dont l’OpenID sera: http://blog.nicolargo.com (à remplacer par votre nom de domaine dans le reste de ce tutoriel).

Creation d’un OpenID sur un serveur de confiance

La première chose à faire est de créer un ID chez un fournisseur d’identité. J’ai choisi de passer par le site https://www.myopenid.com/, mais d’autres fournisseurs existent. Il suffit de choisir un login (nicolargo dans mon cas), le serveur va créer un OpenID de la forme: http://nicolargo.myopenid.com.

Utilisation d’un nom de domaine personnel comme OpenID

Si vous disposez comme moi d’un nom de domaine (http://blog.nicolargo.com), il est très simple de l’utiliser en lieu et place de l’OpenID que vous venez de créer (http://nicolargo.myopenid.com). Pour cela, il faut ajouter les 2 lignes suivante dans la section <header> de votre page Web principale. Si comme dans mon cas votre site est un blog WordPress, il faut les ajouter dans le fichier header.php de votre thème.


<link rel=“openid.server” href=“https://www.myopenid.com/server” />
<link rel=“openid.delegate” href=“http://nicolargo.myopenid.com” />

Ces deux lignes vont automatiquement rediriger l’authentification depuis http://blog.nicolargo.com vers le serveur de confiance https://www.myopenid.com/server en utilisant l’OpenID http://nicolargo.myopenid.com.

Comment vérifier que cela marche ?

C’est très simple, il faut se rendre sur un des nombreux sites supportant l’OpenID (voir une liste ici) et s’enregistrer en utilisant votre nouvel OpenID (http://blog.nicolargo.com dans mon cas). Par exemple sur Ziki, lors de l’enregistrement, on est rediriger vers cette page:

Voila vos premiers pas accomplis dans le SSO !

Catégories
Systeme

Logiciels indispensables sous Mac OS X

Nouvel utilisateur de Mac OS X, voici un liste des logiciels que j’utilise réguliairement. C’est un bon point de départ (non exhaustif) si vous débuter sous l’OS de la pomme…

Internet:
Navigateur Web: Firefox (Plugins: FireFTP, Gspace, ScribeFire…)
Client de Mesagerie: Mac Mail (inclus dans Mac OS X).
Messagerie instantanée: Adium.
VoIP: Skype.

Bureautique:
Suite bureautique: NeoOffice (fork de OpenOffice).

Images:
Voir, classer, retoucher vos images: iPhoto (inclus dans Mac OS X).
Diffuser sur le net: Picasa Web Albums Uploader.

Audio:
Ecouter un MP3: iTunes (inclus dans Mac OS X).
Ripper un CD (CD->MP3): iTunes (inclus dans Mac OS X).
Convertir un fichier d’un format à un autre: Switch (payant).

Video:
Regarder une video: MPlayer OSX, VLC.
Ripper un DVD: MacTheRipper.

Developpement:
Interface de développement: Eclipse.
Developpement de soft Mac: XCode.

Réseau:
Bureau à distance: Chicken of VNC.
Client SSH/SFTP: Fugu.
Capture réseau: AquaEthereal.

Si vous avez d’autres bon plans je suis preneur.

Catégories
Reseau

Cacti, le complement idéal de Nagios !

Nous allons dans ce post parler de l’installation de Cacti, qui me semble offrir des fonctions complémentaires à Nagios déjà évoqué dans ce blog.

C’est quoi donc ?

Cacti est une interface Web écrite en PHP permettant de gérer des graphes RRD. Ces graphes RRD peuvent avoir comme source le résultat de n’importe quelle requêtes SNMP ou d’un simple script. Cela permet donc une large possibilitée d’utilisation. La gestion se fait par des menus relativement simple à utiliser (il faut tout de même un temps de prise en main mais la documentation est très bien faite).

Configuration nécessaire

Un operating system (Unix de préference)
Un serveur Web fraichement installé (Apache par exemple).
Une base de données MySQL.
Les sources de Cacti ou un package pour votre operating system.

Installation de cacti (exemple donnée pour une Fedora Core 6)

Update: cliquez ici pour voir un nouvel article sur une procédure d’upgrade en version 0.8.7 

Il faut commencer par installer les utilitaires SNMP:

# yum install net-snmp net-snmp-utils

Puis Cacti en lui même (on utilise le package du repos extra):

# yum install cacti

Avant toute chose, nous allons ajouter la configuration nécessaire pour que le serveur Web (Apache) prenne en compte cacti:

# cd /etc/httpd/conf.d/
# vi cacti.conf
Alias /cacti/ /usr/share/cacti/
<Directory /cacti/>
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
# apachectl restart

Après vous être placé dans le répertoire d’installation, il faut créer la base de donnée MySQL (on part sur l’hypothése ou la base de donnée est sur le même serveur):

# mysqladmin –user=root create cacti
# mysql cacti < cacti.sql
# mysql –user=root mysql
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY ‘somepassword’;
mysql> flush privileges;

… et la configurer en éditant le fichier include/config.php:

# vi include/db.php
<?
/* make sure these values refect your actual database/host/user/password */
$database_type = « mysql »;
$database_default = « cacti »;
$database_hostname = « localhost »;
$database_username = « cactiuser »;
$database_password = « password »;
$database_port = « 3306 »;
?>

Nous pouvons alors lancer un navigateur Web sur l’URL: http://votreadresseip/cacti/
Au premier lancement, une page de configuration va apparaître. Vous devez choisir RRD (dernière version).

Il est parfois nécessaire de changer les droits du répertoire de travail de Cacti:

# cd /usr/share/cacti/
# chown -R cacti rra/ log/

La dernière étape va automatiser le lancement de cacti toutes les 5 minutes:

# crontab -e -u cacti
*/5 * * * * /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

Et voila, vous avez maintenant un bel outils pour générer toutes les courbes RRD possibles 😉

Catégories
Blog

D’où viens tu visiteur ?

En tant que blogger qui se respecte, je regarde régulièrement les statistiques d’accès à mon site. Pour cela, j’utilise Google Analytics, Feedburner et depuis peu 103bees. Sur ces statistiques, je me demande d’où viennent les visiteurs et ne peut on pas en déduire la popularité d’un blog en fonction de ces statistiques ?

Je m’explique. Je classifie mes sources en deux:

  • les moteurs de recherche et « dig like ».
  • les accès directs (par exemple depuis un lecteur RSS).

Je pense que plus la proportion des visiteurs venant d’un accès direct est grande, plus le site est populaire. En effet, les visiteurs venant d’un moteur de recherche tombent souvent par hasard sur votre site. Tandis qu’un visiteur direct est beaucoup plus ciblé et à une plus forte chance de trouver une information ayant de l’intérêt pour lui.

Pour ma part, les statistiques sont les suivantes (pour le dernier mois):

Visiteurs venant des moteurs de recherche: 47.2 % (dont 95% de Google…)
Visiteurs venant des « dig like »: 37.1 %
Visiteurs venant d’accès directs: 15.7 %

Je serais intéressé pour avoir les statistiques sur vos blogs.

PS: je viens de voir que Philippe vient d’écrire un article sur le même sujet sur son blog. Nous n’avons pas tout à fait les mêmes statistiques.

Catégories
Web

Site sur la photo numérique…

… je ne fais pas beoucoup de pub pour d’autres sites, mais là je viens de tomber sur le portail des passionnés de la photo numérique (http://www.virusphoto.com/) et je dois avouer que je cherchais un site comme celui-ci depuis un moment. Simple, clair, avec de bons tutos, bref le paradis 🙂

Virus photo

A voir de toute urgence.