samedi 31 décembre 2011

Freebsd: mise à jour des logiciels avec portupgrade


Installation
A partir des ports:
freebsd# cd /usr/ports/ports-mgmt/portupgrade
freebsd# make install clean
La mise à jour des logiciels:
freebsd# portupgrade -a
Mise à jour d'un logiciel en particulier:
freebsd# portupgrade -R nom_du_logiciel
La doc complète: http://www.freebsd.org/doc/fr/books/handbook/ports-using.html.

mardi 27 décembre 2011

Installation d'un domaine xen domU sous linux debian


Création des deux fichiers du système (partition + swap)
mouflon#/usr/bin/xen-create-image --hostname mollusque --size=10Gb \ --dist=lenny --memory=256M --ide --role udev -- ip 192.168.100.2 \ --dir /home/xen


Création du fichier de configuration
mouflon#vi ./mollusque.cfg
kernel = '/boot/vmlinuz-2.6.26-2-xen-686' ramdisk = '/boot/initrd.img-2.6.26-2-xen-686' memory = '256' root = '/dev/hda2 ro' disk = [ 'file:/home/xen/domains/mollusque/swap.img,hda1,w', 'file:/home/xen/domains/mollusque/disk.img,hda2,w', ]
# nom d hote
name = 'mollusque'
# reseau
vif = [ 'ip=192.168.100.2 ,mac=00:16:6F:15:7A:21' ]
#
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'


Démarrage de la machine
mouflon#/usr/sbin/xm create mollusque.cfg



Vérification
mouflon#/usr/sbin/xm list



Ouverture d'une console
mouflon#/usr/sbin/xm console mollusque

Installation d'un domaine domU sous linux Centos


Configuration inspirée du wiki centos.org - nov 2010


Création du fichier image
dd if=/dev/zero of=/home/xen/domains/centos.img oflag=direct bs=1M seek=10239 count=1


Télécharger le fichier initrd et le kernel à partir d'un miroir centos


Création du fichier d'installation mouflon.cfg
kernel = "/boot/vmlinuz-xen-install"
ramdisk = "/boot/initrd-xen-install"
name = "mouflon"
memory = "256"
disk = [ 'file:/home/xen/domains/centos/centos.img,xvda,w', ]
vif = [ 'bridge=xenbr0', ]
vcpus=1
on_reboot = 'destroy'
on_crash = 'destroy'


On lance l'installation
#xm create mouflon.cfg -c


Puis, une fois le système installé, on modifie le fichier de configuration
name = "mouflon"
memory = "256"
disk = [ 'file:/home/xen/domains/centos/centos.img,xvda,w', ]
vif = [ 'bridge=xenbr0', ]
bootloader="/usr/lib/xen-3.2-1/bin/pygrub"
vcpus=1
on_reboot = 'restart'
on_crash = 'restart'

Enfin, le système est démarré.
#xm create mouflon

lundi 26 décembre 2011

Installation d'un domaine xen Dom0 sous Linux debian


1 - Installation d'une debian de base

2 - Installation de ssh (si besoin)
apt-get install openssh-server

3 - Installation de xen
apt-get install xen-linux-system-2.6.26-2-xen-686
apt-get install xen-tools

4 - Quelques éléments à configurer ensuite

Dans le fichier /etc/inittab
modifier la ligne
1:2345:respawn:/sbin/getty 38400 hvc0

Dans le fichier de conf de xen, vi /etc/xen/xend-config.sxp
décommenter la ligne (network-script network-bridge)
commenter la ligne #(network-script network-dummy)

Dans le fichier /etc/xen-tools/xen-tools.conf
Décommenter la ligne serial_device = hvc0

5 - redémarrer

jeudi 22 décembre 2011

Mémo XHTML

Le Doctype
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
Ou bien   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   Ou bien   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Balise codage <meta http-equiv="content-type" content="text/html; charset=utf8" />
Lier une feuille de style css <link rel="stylesheet" type="text/css" href="style.css" />
Icône dans la barre d'adresse <link rel="shorcut icon" type="images/x-icon" href="/icone.icon" />
Balise meta <meta name="keywords" content="réseau, système, xhtml" /><meta name="description" content="ceci est un site sur le rézo" /> <meta name="robot" content="index" /> <meta name="robot" content="noindex" />
page <html><head> <title> le titre affiché dans la barre </title> </head> <body> le texte </body> </html>
Commentaire <!-- le commentaire possibilité d'écrire plusieurs lignes -->
Titre <h1> texte </h1>
Paragraphe <p> le paragraphe </p>
Bloc <div> le bloc </div>
Ligne <span> la ligne </span>
Gras <strong> texte </strong> ou bien <b> texte </b>
Italique <em> texte </em>
Liste avec puces <ul><li> ligne </li> <li> ligne </li> <li> ligne </li> </ul>
Liste avec numéros <ol><li> lignes </li> <li> lignes </li> <li> lignes </li> </ol>
Liste de définition <dl><dt> le mot </dt> <dd> la définition </dd> <dt> le mot </dt> <dd> la définition </dd> </dl>
Saut de ligne <br />
Espace &nbsp
Entoure le bloc d'un liseré <fieldset> le texte </fieldset>
texte barré <del> le texte </del>
texte souligné <ins> le texte </ins>
taille du texte en rapport avec ce qui précède <small> texte </small><big> texte </big>
Exposant <sup> exposant </sup>
Indice <sub> indice </sub>
Citation (mise en retrait du texte) <blockquote> le texte </blockquote>
Afficher en style code source <code> le texte </code>
Liens hypertexte <a href="http://blog.com" title="info bulle"> voici le lien </a>
Lien vers un endroit de la page <a href="#lendroit" title="info bulle"> cliquer pour aller au paragraphe suivant </a>  Puis on descend   <h3 id="lendroit"> par exemple paragraphe suivant </h3>
Lien adresse mail <a href="mailto:blogatgmail.com" title="info bulle"> mon adresse mail</a>
Evènement sur un lien <p><a id="lien" href="http://over-blog.com" onmouseover="getElementById('lien').style.color='red'" onmouseout="getElementById('lien').style.color='blue'"> overblog </a></p>
Image <img src="dossier/image.jpg" alt="description" title="info bulle" />
Zone "cliquable" d'une image <p><a href="over-blog.fr" shape="rect" coords="40,15,120,50"><img src="image.png" alt="vers overblog" /> site overblog </a></p>   shape peut être "rect", "circle" ou "poly" coords pour "rect" : coordonnée sommet sup gauche et inférieur droit coords pour "circle": coordonnée centre puis rayon coords pour "poly": coordonnée de tous les sommets puis du point de départ
Image "cliquable" <a href="lelien.html"> <img src="dossier/image.png" alt="presentation image" width="100" height="50" title="texte infobulle" /> </a>
Lien vers un document pdf <p><a id="lien" href="http://www.site.fr/doc.pdf" type="application/pdf" title="titre"> pdf </a></p>
Vidéo <object type="application/x-shockwave-flash"data="le_fichier.swf" width="300" height="200"> <param name="film" value=le_fichier.swf" /> <p> si la video ne s'affiche pas </p> </object>
Tableau <table border="2" cellspacing="0"><tr> <th> 1 ligne 1 colonne </th> <th> 1 ligne 2 colonne </th> </tr> <tr> <th> 2 ligne 1 colonne </th> <th> 2 ligne 2 colonne </th> </tr> </table>
Fusion de cellule (de 2 cellules) <td colspan="2"> le texte </td>
Fusion sur deux colonnes <td rowspan="2"> le texte </td>
Balise de formulaire form, textarea, input, select, option, optgroup, label
                                                                                                                                                                Exemple de début de page:     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >

 <head>
 <title>Commande système et réseaux</title>

 <!-- la balise suivante est l'url qui sert de base pour les chemins utilisés par la suite -->

<base href="http://www.techno.com/" />

 <!-- on lie la feuille de style -->

 <link rel="stylesheet" type="text/css" href="style.css" /> <!-- balise meta -->

 <meta http-equiv="content-type" content="text/html; charset=8859-1" />
 <meta name="keywords" content="réseau, système, xhtml" />
 <meta name="description" content="ceci est un site sur le rézo" />
<meta name="robot" content="index" />
 </head>
 <body> Hello world!! </body>
 </html>

mercredi 21 décembre 2011

Redémarrer une interface réseau sous Linux debian


Les commandes pour redémarrer une interface réseau sont:

debian:~# /sbin/ifdown eth0
debian:~# /sbin/ifup eth0
debian:~#


Ou bien:

debian:~# /etc/init.d/networking restart
Reconfiguring network interfaces...done.
debian:~#

mardi 20 décembre 2011

Mémo Style CSS




Quelques options de style en vrac :


Police générique: serif, sans-serif, cursive, monospace, fantasy

mot clé: font-family
Exemple de police: arial, tahoma

Taille des polices (par défaut :medium): xx-small, x-smal, small, medium, large, x-large, xx-large

Fonctionnement: taille en cours x 1.2

Taille des polices relatives: smaller, larger, inherit

Taille fixée (exemple 10 pixels ou 10 em - 1em: environ hauteur d'un caractère, pourcentage): 10px .8em 10%

mot clé : font-size
Caractères gras ou maigre: normal, bold, bolder, lighter, inherit
et valeur de 100 à 900

mot clé: font-weight
Style: normal, italic, oblique, inherit

mot clé: font-style
Style: small-caps, normal, inherit

mot clé: font-variant
Interligne: normal,10px (utilisation de pixel ou autre)

mot clé: line-height
Alignement du texte: left, center, right, justify, inherit

mot clé: text-align
Espacement: normal, inherit, (valeur relative: em, px)

mot clé: word-spacing
indentation: 10px (10 pixel ou autre - em), inherit

mot clé: text-indent
Bordure: dotted, dashed, solid, double, groove, ridge, inset, outset

mot clé: border-style, border-top-style, border-bottom-style, border-right-style, border-left-style
bordure (largeur) thin, medium, thick, inherit, ou bien une option em, px ,...

mot clé: border-width, border-top-width, ...
Couleur: paramètre habituel

mot clé: border-color, border-top-color, ...
marge: taille em, px, ... haut droit bas gauche, inherit

mot clé: margin, margin-top, ...
Espacement avant la bordure: px ou em,haut droit bas gauche, inherit,

mot clé: padding, padding-top, ...


dimanche 18 décembre 2011

Vérification du fonctionnement de php dans apache


Créer un fichier index.php à la racine du serveur web

linux:/var/www# more index.php
<?php
phpinfo();
?>

Puis entrer l'URL dans un navigateur:





vendredi 16 décembre 2011

Formulaire php - filtrage des données saisies


Filtrage des données à destination d'une page web

Fonction htmlspecialchars


Exemple:


$resultat = htmlspecialchars ($chaine, ENT_QUOTES, 'UTF-8');

Filtrage des données à  destination d'une base de donnée

Fonction msqli_real_escape_string

Exemple:


$resultat = msqli_real_escape_string ($dbconnect, $_POST['chaine']);

mercredi 14 décembre 2011

Exemple de règle basique - pare-feu iptables


Voici quelques règles pour tester rapidement netfilter/iptables:


Pour visualiser les règles d'une machine:

mouflon# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination


Par défaut, tout le traffic passe.

Mettons en place quelques règles (elles seront dans le  fichier /home/test//firewall.conf):

mouflon:~# vi /home/test/firewall.conf

#d'abord, on initialise tout.
/sbin/iptables -F OUTPUT
/sbin/iptables -F INPUT
/sbin/iptables -F FORWARD

#On place la politique par défaut (tout passe en sortie, rien en entrée et rien pour le transfert)
/sbin/iptables -t filter -P INPUT DROP
/sbin/iptables -t filter -P FORWARD DROP
/sbin/iptables -t filter -P OUTPUT ACCEPT

#on accepte tout sur l'interface boucle locale
/sbin/iptables -A INPUT -o lo -j ACCEPT
/sbin/iptables -A INPUT -i lo -j ACCEPT

#on accepte les paquets icmp (ping entre autre), ssh et https à partir d'une station uniquement (192.168.200.1)
/sbin/iptables -A INPUT -p icmp -s 192.168.200.1 -j ACCEPT
/sbin/iptables -A INPUT -p tcp  -s 192.168.200.1 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp  -s 192.168.200.1 --dport 443 -j ACCEPT

#on autorise le retour des paquets pour les connexions déjà initiées
/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

#on log ce qui ne passe pas dans /var/log/messages.
/sbin/iptables -A INPUT -j LOG


Ensuite, on enregistre le fichier, on met les droits pour l'exécution puis on exécute.

mouflon:~# chmod a+x /home/test/firewall.conf
mouflon:~# /home/test/firewall.conf


Puis on vérifie l'activation des règles du pare-feu.

mouflon# iptables -L
Chain INPUT (policy DROP)
target     prot opt source                           destination
ACCEPT     all  --  0.0.0.0/0                       0.0.0.0/0
ACCEPT     icmp --  192.168.200.1         0.0.0.0/0
ACCEPT     tcp  --  192.168.200.1            0.0.0.0/0           tcp dpt:22
ACCEPT     tcp  --  192.168.200.1            0.0.0.0/0           tcp dpt:443
ACCEPT     all  --  0.0.0.0/0                       0.0.0.0/0           state RELATED,ESTABLISHED
LOG             all  --  0.0.0.0/0                       0.0.0.0/0           LOG flags 0 level 4
Chain FORWARD (policy DROP)
target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

lundi 12 décembre 2011

Caractère spéciaux html


é  &eacute;

è  &egrave;

à  &agrave;

ê  &ecirc;

ç  &ccedil;

ô  &ocirc;

â  &acirc;

lundi 5 décembre 2011

Surveillance DNS avec nagios

Renvoi de l'état warning si la requête fait plus de 2s et l'état critical si la requête fait plus de 4s. La durée maximum du contrôle est de 5s.
-a: donnée attendue dans la réponse
-s: donnée envoyé au serveur

# 'check_name_ip' command definition
 define command{
 command_name check_name_ip
command_line $USER1$/check_dns -H $HOSTNAME$ -a $HOSTADDRESS$ -s $ARG1$ $ARG2$ -w 2 -c 4 -t 5
}

 # 'check_ip_name' command definition

 define command{
 command_name check_name_ip
command_line $USER1$/check_dns -H $HOSTADDRESS$ -a $HOSTNAME$. -s $ARG1$ $ARG2$ -w 2 -c 4 -t 5
}

Définition des services

define service {
use  generic
hostname_group linux-dns
service_description dns
check_command check_name_ip!serveur-dns!-A








dimanche 4 décembre 2011

Comment ajouter une route statique sur une distribution Linux Ubuntu

Pour ajouter une route statique au démarrage d'Ubuntu, voici le fichier à modifier. Dans l'exemple on ajoute une route pour joindre ...