Ajouter des réservations IPs au serveur DHCP – Win 2K8 R2

Administration des Réseaux, Adminstration Server Windows No Comments »

Lorsque l’on doit ajouter un grand nombre de réservations IPs, l’interface graphique peux vite devenir contraignante.

Voici les commandes afin d’automatiser l’ajout. Il faut tous d’abord préparer une feuille excel avec les infos suivantes.

add reservedip [address-ip] [mac -address] [name]

Ensuite dans une console vous tapez :

netsh
dhcp
server 192.168.3.192
scope 192.168.3.0
  • Server étant le serveur dhcp
  • Scope étant l’étendue dans laquelle vous souhaitez ajouter les IPs

Ensuite vous collez toutes les lignes de votre fichier excel

add reservedip 192.168.3.55 005b38e793ab pc1.home.be

Utiliser les dépôts stable, testing et unstable en même temps sur debian

Adminstration Server Linux, Debian 4 Comments »

Si vous devez installer certain packets dans leur version la plus récent sur debian sans pour autant mettre à jour tous votre système cette manip est pour vous.

La première étape est de configurer vos dépots en ajoutant les différentes version.

vi /etc/apt/sources.list

Et le configurer comme ci-dessous :

################################################
## lenny
deb http://ftp.be.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.be.debian.org/debian/ lenny main contrib non-free

# lenny security
deb http://security.debian.org/ lenny/updates main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free

# volatile
deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free

################################################
## squeeze
deb http://ftp.be.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.be.debian.org/debian/ squeeze main contrib non-free

## squeeze security
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

################################################
## sid
deb http://ftp.be.debian.org/debian/ sid main contrib non-free
deb-src http://ftp.be.debian.org/debian/ sid main contrib non-free

## sid security
deb http://security.debian.org/ sid/updates main contrib non-free
deb-src http://security.debian.org/ sid/updates main contrib non-free

On va maintenant configurer la priorité des dépôts, cela se configure dans le fichier/etc/apt/preferences

vi /etc/apt/preferences

Et le remplir de cette façon :

Package: *
Pin: release o=apt-build
Pin-Priority: 989

Package: *
Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
Pin-Priority: 988

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 987

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 986

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 985

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 99

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 98

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 97

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 96

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 95

Package: *
Pin: release o=Unofficial Multimedia Packages,a=experimental,l=Unofficial Multimedia Packages
Pin-Priority: 94

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 93

Ensuite vous faites une mise à jour de la liste des packets disponible dans les dépôts

aptitude update

Voilà vous pouvez mnt installer vos packets dans la version que vous voulez, par défaut il utilisera la version stable. Pour utiliser une autre version il faut procéder de la façon suivante

aptitude install apache2 php5/testing

Aptitude installera apache en version stable et php5 en version testing, aptitude se chargera de régler le problème de dépendance mais également de version entre les dépendances

Installation de Cacti et des plugins Network Weathermap et Discovery

Administration des Réseaux, Adminstration Server Linux, Debian, Supervision 33 Comments »

Introduction

Cacti est un logiciel libre de supervision serveur basé sur la puissance de stockage de données de RRDTool. Il fonctionne grâce à un serveur web équipé d’une base de données et du langage PHP. Il peut-être considéré comme le successeur de MRTG et également comme une interface d’utilisation de RRDTool.

Il permet de représenter graphiquement divers statuts de périphériques réseau utilisant SNMP ou encore grâce à des scripts (Bash, PHP, Perl, VBs…) pour avoir par exemple l’espace disque restant ou bien la mémoire utilisée, la charge processeur ou le ping d’un élément actif. Les données sont récoltées auprès des différents agents SNMP (ou auprès des scripts locaux) grâce à un script php.

L’intérêt de ce logiciel réside principalement dans son principe de modèles (Templates) qui permet de créer de manière générique les graphiques afin de pouvoir les réutiliser. De manière générale, tout est modèle sous Cacti. Cela est avantageux lorsque de nombreuses données identiques doivent être observées, mais cela peut se révéler fastidieux à configurer lorsque les données sont hétérogènes.

Version des logiciels utilisés

Debian : Net Install Squeeze
Cacti : 0.8.7e-1.1
Plugin Architecture : 2.6

Installation du server LAMP

Une fois la distribution installée et la configuration réseau faites, on met à jour les dépôts et on met tous a jour, même si normalement tous doit être déjà à jour

aptitude update && aptitude full-upgrade

On installe maintenant le server apache2 avec php5 et mysql-server, plus d’autre outil nécessaire a cacti

aptitude install apache2 mysql-server php5 php5-cli snmp rrdtool phpmyadmin php-pear

Réponse aux questions durant l’installation :
Nouveau mot de passe du superutilisateur de MySQL : superpass
Confirmation du mot de passe du superutilisateur de MySQL : superpass
Serveur web à reconfigurer automatiquement: Apache2
Faut-il configurer la base de données de phpmyadmin avec dbconfig-common : oui
Mot de passe de l’administrateur de la base de données : superpass
Mot de passe de connexion MySQL pour phpmyadmin : laisser vide, il sera générer aléatoirement

Votre server web est fonctionnel, vous pouvez tester en allant sur http://ip-du-server/phpmyadmin

Installation de Cacti

aptitude install cacti cacti-spine

Réponse aux questions durant l’installation :
Faut-il configurer la base de données de cacti avec dbconfig-common : oui
Mot de passe de l’administrateur de la base de données : superpass
Mot de passe de connexion MySQL pour cacti : laisser vide, il sera générer aléatoirement
Type de serveur web: Apache2

Si tous c’est bien dérouler vous devriez avoir accès à l’interface de Cacti via cette adresse http://ip-du-server/cacti
Le login:password par défaut est admin:admin, il vous sera demandé de le changer immédiatement au premier login.
C’est terminer pour la partie installation de cacti

Installation du Plugin Architecture

Une grande force de Cacti est sa faculté d’utiliser des autres outils dans des plugins intégrés à son interface. L’avantage sera alors de pouvoir gérer plusieurs logiciels avec une seule plate-forme.

On le trouve sur le site http://cactiusers.org/downloads/

On commence par installer de quoi dézip et ensuite on télécharge l’archive

aptitude install unzip
cd /tmp
wget  http://mirror.cactiusers.org/downloads/plugins/cacti-plugin-0.8.7e-PA-v2.6.zip
unzip cacti-plugin-0.8.7e-PA-v2.6.zip

On copie les fichiers pré modifié dans cacti

cd /tmp/cacti-plugin-arch/files-0.8.7e
cp -r * /usr/share/cacti/site/

On met à jour la base de données

mysql -u root -p cacti < pa.sql

On va maintenant configurer et corriger quelque bug dans la configuration

cd /usr/share/cacti/site/
vi include/global.php

À la ligne 56 remplacer

$config['url_path'] = '/';

Par

$config['url_path'] = '/cacti/';

À la ligne 202 remplacer

include($config["library_path"] . "/adodb/adodb.inc.php");

Par

include("/usr/share/php/adodb/adodb.inc.php");

Le Plugin Architecture est installé et configuré, vous pouvez l’activé dans les permissions des utilisateurs
utilites -> user management -> admin -> Realm Permissions
Cochez Plugin Management

Ajout de plugins

On se place dans le dossier plugins de Cacti

cd  /usr/share/cacti/site/plugins

Network Weathermap

PHP Weathermap est un outil particulièrement utile qui génère des cartes graphiques pour mesurer les bandes passantes (en pourcentage ou en absolu) de vos liens réseaux.
Les cartes vont vous montrer s’il existe des goulots d’étranglements (bottlenecks) sur votre réseau et ainsi vous permettre de mettre à jour le bon lien réseau au lieu de les mettre à jour au hasard et à grand frais.

wget http://www.network-weathermap.com/files/php-weathermap-0.96a.zip
unzip php-weathermap-0.96a.zip
rm php-weathermap-0.96a.zip

Petite correction d’un bug connu

vi /usr/share/cacti/site/plugins/weathermap/setup.php

À la ligne 146 remplacer

if($_REQUEST["action"] == 'viewmapcycle')

Par

if (isset( $_REQUEST["action"] ) && $_REQUEST["action"] == 'viewmapcycle')

Discovery

Ce plugin ajoute la possibilité de découvrir automatiquement tous les périphériques d’un sous-réseau qui ne sont pas surveillées par Cacti et vous indique si SNMP est activé.
Disponible sur cactiusers.org

mkdir discovery
cd discovery/
wget http://cactiusers.org/downloads/discovery.zip
unzip discovery-0.8.5.zip
rm discovery-0.8.5.zip

Activation des plugins

Pour activer les plugins il suffit de remplir un tableau dans le fichier de configuration global

cd  /usr/share/cacti/site/
vi include/global.php

À la ligne 44 on remplace

$plugins = array();
//$plugins[] = 'thold';

Par

$plugins = array(
	'weathermap',
	'disco’
	) ;

Et enfin dans utilites -> user management -> admin -> Realm Permissions
Cochez:
Plugin -> Weathermap: Configure/Manage
Plugin -> Weathermap: View
View Host Auto-Discovery

Finalisation

On termine l’installation par créer le dossier rra si il n’a pas été créé automatiquement et on change le propriétaire des fichiers pour que tous fonctionne bien

mkdir  /usr/share/cacti/site/rra
chown www-data: -R usr/share/cacti/site

C’est fini, il ne vous reste plus cas ajouter vos devices et créer votre carte réseau.

Liens additionnels

Ouvrir une session automatiquement avec mot de passe

Windows Seven 1 Comment »

Si pour y ou x raisons vous avez besoin de devoir ouvrir une session automatiquement sur windows seven ou vista et que ce compte à un password ce tips est pour vous

Première étape on ouvre la la fenêtre exécuter

touche windows + R

Ensuite on tape

control userpasswords2

Dans la fenêtre qui apparait il faut simple décocher ce qui se trouve dans le cadre rouge est ensuite faire OK

Il faut maintenant entrer le login et le password du compte qui devra se connecter automatiquement au démarrage de Windows

Voilà c’est fini, au prochain reboot Windows ouvrira automatiquement sur cette session.

Testé sur Windows Seven Ultimate

Installer Debian Lenny dans une VM XenServer

Debian, Virtualisation 1 Comment »

Petit mémo pour installer une Debian Lenny dans une VM Xenserver

Installation

Tous d’abord, il faut installer une debian etch à partir des templates disponibles dans XenCenter.
Une fois l’installation terminée, on remplace etch par lenny dans les fichier source.list

vi /etc/apt/sources.list
vi /etc/apt/sources.list.d/citrix.list

On Install ensuite les nouvelles clés gpg des dépôts

wget -q http://updates.vmd.citrix.com/XenServer/5.5.0/GPG-KEY -O- | apt-key add -
gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 9AA38DCD55BE302B
gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 4D270D06F42584E6
apt-key add .gnupg/pubring.gpg

On met à jour la liste des paquets et on install les paquets suivant. On termine enfin par une mise à jour des clefs

aptitude update 
aptitude install debian-keyring debian-archive-keyring
apt-key update

Mise à jour vers Lenny

On lance un apt-get dist-upgrade pour mettre à jour la ditribution

aptitude dist-upgrade

Une fois la mise à jour vers Lenny faites, on install les tools Xen et le dernier kernel disponible pour Xen, si durant l’installation des paquets il demande d’annuler, il faut ignorer ce message et continuer.

aptitude install linux-doc-2.6.29-xs5.5.0.14 linux-headers-2.6.29-xs5.5.0.14 linux-image-2.6.29-xs5.5.0.14 linux-manual-2.6.29-xs5.5.0.14 linux-source-2.6.29-xs5.5.0.14 xe-guest-utilities

Avant de rebooter il est trés important de faire ce qui suit, sans quoi votre VM ne démarrera plus.
On ajoute les modules suivant au initramfs

vi /etc/initramfs-tools/modules

Et on ajoute

xenblk
xennet

On met à jour les changements en faisant

update-initramfs -u

On va maintenant changer le le kernel par défaut dans grub

vi /boot/grub/menu.lst

On remplace

default 0

Par

default 2

On termine par une mise à jour de grub

update-grub

Dernière étape, il faut changer l’interface de sortie de la console, pour ce faire on édite /etc/inittab

vi /etc/inittab

On remplace

1:2345:respawn:/sbin/getty 38400 tty1

Par

1:2345:respawn:/sbin/getty 38400 hvc0

On reboot finalement le système

reboot

Vous avez à présent une Debian Lenny fonctionnel dans votre VM XenServer

Installation du mod deflate pour apache2

Adminstration Server Linux, Debian No Comments »

Le module mod_deflate est un module du serveur web Apache qui fournit les filtres DEFLATE permettant à la sortie du serveur d’être compressée avant d’être envoyée au navigateur sur le réseau. Ce qui apporte une économie de bande passante pouvant aller parfois jusqu’à 80%, une légère consommation en plus du processeur ainsi que de la mémoire est à prévoir.

Quelques informations en plus ce module :

Installation

Deflate est installé par défaut avec Apache mais il n’est pas lancé, de plus même une fois lancé il sera nécessaire de le configurer.

Paramétrage

Dans /etc/apache2/conf.d/mod_deflate, ajoutez :

# Mod Deflate


 DeflateCompressionLevel 3



 AddOutputFilterByType DEFLATE text/plain
 AddOutputFilterByType DEFLATE text/xml
 AddOutputFilterByType DEFLATE text/html
 AddOutputFilterByType DEFLATE text/css
 AddOutputFilterByType DEFLATE image/svg+xml
 AddOutputFilterByType DEFLATE application/xhtml+xml
 AddOutputFilterByType DEFLATE application/xml
 AddOutputFilterByType DEFLATE application/rss+xml
 AddOutputFilterByType DEFLATE application/atom_xml
 AddOutputFilterByType DEFLATE application/x-javascript
 AddOutputFilterByType DEFLATE application/x-httpd-php
 AddOutputFilterByType DEFLATE application/x-httpd-fastphp
 AddOutputFilterByType DEFLATE application/x-httpd-eruby

 SetOutputFilter DEFLATE

 SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.avi$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.mov$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.mp4$ no-gzip dont-vary
 SetEnvIfNoCase Request_URI \.rm$ no-gzip dont-vary

 BrowserMatch ^Mozilla/4 gzip-only-text/html
 BrowserMatch ^Mozilla/4\.0[678] no-gzip
 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
 BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

 # Make sure proxies don't deliver the wrong content
 Header append Vary User-Agent env=!dont-vary

Explications

DeflateCompressionLevel 3
Détermine le niveau de compression, les valeurs vont de 1 à 9, de base le choix est à 1.

AddOutputFilterByType DEFLATE text/html
Indique que les pages .html seront compressées.

SetOutputFilter DEFLATE
Active la compression.

SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
Ne compresse pas les fichiers de type .gif .jpg .jpeg .png car ils possèdent déjà une compression.

BrowserMatch ^Mozilla/4 gzip-only-text/html
Active que la compression des pages HTML pour Netscape 4.

Header append Vary User-Agent env=!dont-vary
Assurez-vous que les proxy ne livrent pas les mauvais contenus

Mise en production

Activez les deux modules suivants :

a2enmod headers
a2enmod deflate

Relancez Apache

/etc/init.d/apache2 restart

Pour vérifier que la compression soit fonctionnelle, vous pouvez aller sur ce site : www.gidnetwork.com

D’où proviennent les noms de code des distributions Debian ?

Debian No Comments »

Jusqu’ici les noms de code des distribution Debian proviennent des personnages du film « Toy Story » par Pixar.

  • buzz (Buzz Lightyear) est le cosmonaute,
  • rex est le tyrannosaure,
  • bo (Bo Peep) est la bergère,
  • hamm est la tirelire en forme de cochon,
  • slink (Slinky Dog ®) est le chien,
  • potato est bien sûr, Mr. Patate ®,
  • woody est le cowboy,
  • sarge est le sergent de l’armée de plastique vert,
  • etch est l’ardoise magique (Etch-a-Sketch ®),
  • lenny est la paire de jumelles.
  • sid est le garçon des voisins qui détruit les jouets

Installation et configuration du mod_security pour apache2 sous Debian

Adminstration Server Linux, Debian, Sécurité 14 Comments »

Le module Security est une sorte de firewall pour Apache qui apporte une solution aux problèmes de sécurité et d’attaques applicatives web. En effet, malgrés le déploiement de mesures de sécurité élevées sur un serveur web, il est toujours possible qu’une simple erreur de programmation dans un script « cgi » ou « php » mette en péril l’intégrité et la confidentialité des données stockées.
Pour faire simple ce module bloque les requêtes pouvant être dangereuses.
Exemple en image :

modsecurity

Installation.

Ce module n’est pas installé de base avec Apache, je vais vous proposer deux méthodes à vous de choisir la votre :
L’installation par la commande dpkg est très simple, wget doit être installé sur votre système.

wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/mod-security-common_2.5.9-1_all.deb
wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/libapache-mod-security_2.5.9-1_i386.deb

Installation du paquet :

dpkg -i mod-security-common_2.5.9-1_all.deb libapache-mod-security_2.5.9-1_i386.deb

Voila le module est installé. Maintenant on active ce dernier auprès d’Apache.

 a2enmod mod-security

L’installation du module Security est terminée

Configuration

La configuration du module Security consiste dans sa plus grande partie à ajouter des règles “de filtrage”.
Ces règles sont séparées en plusieurs fichiers (blacklist, proxy, règles de bases, rootkits, etc…).
On créé un répertoire modsecurity2 dans le répertoire /etc/apache2/, on se place dedans et on télécharge les règles.

mkdir /etc/apache2/modsecurity2/
cd /etc/apache2/modsecurity2/
wget http://www.gotroot.com/downloads/ftp/mod_security/2.0/apache2/apache2-gotrootrules-modsec2.0-latest.tar.gz

Une fois le téléchargement terminé nous allons décompresser l’archive contenant les règles.

tar zxvf apache2-gotrootrules-modsec2.0-latest.tar.gz

Puis créez un fichiers nommé mod_security pour y ajouter les lignes suivantes :

vi /etc/apache2/conf.d/mod_security
# A adapter en fonction de la version du module qui est utilisé.


# Analyse uniquement les requêtes dynamiques.
#SecFilterEngine DynamicOnly

# Active le filtrage.
SecFilterEngine On

# Rejette les requêtes ayant le status 500.
SecFilterDefaultAction "deny,log,status:500"

# Quelques règles de bases.
SecFilterScanPOST On
SecFilterCheckURLEncoding On
SecFilterCheckCookieFormat On
SecFilterCheckUnicodeEncoding Off
SecFilterNormalizeCookies On
# Active la version 1 (RFC 2965) cookies
SecFilterCookieFormat 1

# Ne donne aucune précision sur le serveur web.
SecServerResponseToken Off

# Scanner le flux de sortie.
#SecFilterScanOutput On
#SecFilterOutputMimeTypes "(null) text/html text/plain"

# Autorise presques toutes les valeurs de bytes.
SecFilterForceByteRange 1 255

# Masquer le serveur.
#fake server banner - NOYB used - no one needs to know what we are using
SecServerSignature "NOYB"

#SecUploadDir /tmp
#SecUploadKeepFiles Off

# Only record the interesting stuff
SecAuditEngine RelevantOnly
SecAuditLog logs/audit_log

# Configuration du module de debuggage.
SecFilterDebugLevel 0
SecFilterDebugLog /var/logs/apache2/modsec_debug_log

# Règles d'exlusion.
# Cette ligne doit rester devant les autres.
Include /etc/apache2/modsecurity2/exclude.conf

# Règles de protections.
Include /etc/apache2/modsecurity2/rules.conf

# Règles dédiées au spam.
Include /etc/apache2/modsecurity2/blacklist.conf

# Règles de filtrage des hotes, proxy, etc...
Include /etc/apache2/modsecurity2/blacklist2.conf

# Règles interdisant certains client, robots, etc...
Include /etc/apache2/modsecurity2/useragents.conf

# Protection contre les rootkits.
Include /etc/apache2/modsecurity2/rootkits.conf

# Règle empéchant l'utilisation du serveur comme proxy.
# A utiliser seulement si le serveur n'est pas en mod proxy.
Include /etc/apache2/modsecurity2/proxy.conf

# Quelques règles de plus, uniquement pour Apache2.
Include /etc/apache2/modsecurity2/apache2-rules.conf

La configuration du module est terminé, il ne reste plus qu’a relancer Apache.

/etc/init.d/apache2 restart

Mise à jour des règles.

Un script a été conçu pour permettre le téléchargement des nouvelles règles automatiquement.
Cette méthode nécessite l’ajout d’une tâche dans votre crontab.

Dans le répertoire /etc/cron.d/ nous allons créer un fichier modsecurity contenant ceci :

vi /etc/cron.d/modsecurity
# Tout les jours à 5h30 du matin.
30 5 * * * /etc/apache2/modsecurity2/modsec.sh

Ce script bash a été adapté pour une distribution Debian, il aura pour nom modsec.sh et sera placé dans /etc/apache2/modsecurity2/

vi /etc/apache2/modsecurity2/modsec.sh
#!/bin/sh

# Autoupdater for modsec rulesets.
 #
 # This script will attempt to update your rulefiles, and restart apache.
 # If it apache does not start after changing rules, it will roll back to
 # the old ruleset and restart apache again.
 #
 # Version: $Id: modsec.sh,v 1.1 2005/06/29 18:07:53 olei Exp $
 # URL: http://cs.evilnetwork.org/cycro
 # Copyright 2005, All Rights Reserved

APACHESTART="/usr/sbin/apache2ctl start"
 MODSECPATH="/etc/apache2/modsecurity2 "
 APACHEPID="/var/run/apache2.pid"

##########################################################################
 ######### you probably don't need to change anything below here ##########
 ##########################################################################

# urls
 BLACKLIST="http://www.gotroot.com/downloads/ftp/mod_security/blacklist.conf"
 RULES="http://www.gotroot.com/downloads/ftp/mod_security/rules.conf"
 APACHE2="http://www.gotroot.com/downloads/ftp/mod_security/apache2-rules.conf"

# internal
 PID=`cat ${APACHEPID}`
 UPDATED=0

echo -n "Changing PWD: "
 cd ${MODSECPATH}
 echo `pwd`

# blacklist
 echo -n "Updating blacklist.conf: "
 /usr/bin/wget -t 30 -O blacklist.conf.1 -q ${BLACKLIST}
 if [ `md5sum blacklist.conf | cut -d " " -f1` != `md5sum blacklist.conf.1 | cut -d " " -f1` ] ; then
 /bin/mv blacklist.conf blacklist.conf.bak
 /bin/mv blacklist.conf.1 blacklist.conf
 UPDATED=`expr $UPDATED + 1`
 echo "ok."
 else
 echo "allready up to date."
 /bin/rm -f blacklist.conf.1
 fi

# rules
 echo -n "Updating rules.conf: "
 /usr/bin/wget -t 30 -O rules.conf.1 -q ${RULES}
 if [ `md5sum rules.conf | cut -d " " -f1` != `md5sum rules.conf.1 | cut -d " " -f1` ] ; then
 /bin/mv rules.conf rules.conf.bak
 /bin/mv rules.conf.1 rules.conf
 UPDATED=`expr $UPDATED + 1`
 echo "ok."
 else
 echo "allready up to date."
 /bin/rm -f rules.conf.1
 fi

# apache2 rules
 echo -n "Updating apache2-rules.conf: "
 /usr/bin/wget -t 30 -O apache2-rules.conf.1 -q ${APACHE2}
 if [ `md5sum apache2-rules.conf | cut -d " " -f1` != `md5sum apache2-rules.conf.1 | cut -d " " -f1` ] ; then
 /bin/mv apache2-rules.conf apache2-rules.conf.bak
 /bin/mv apache2-rules.conf.1 apache2-rules.conf
 UPDATED=`expr $UPDATED + 1`
 echo "ok."
 else
 echo "allready up to date."
 /bin/rm -f apache2-rules.conf.1
 fi

# try restart
 if [ "$UPDATED" -gt "0" ]; then
 echo -n "Restarting apache: "
 /bin/kill -HUP ${PID} 2>/dev/null
 # did it work?
 if `/bin/kill -CHLD ${PID} >/dev/null 2>&1`; then
 echo "ok."
 exit 0
 fi
 echo "error. Apache not running."

# blacklist
 echo -n "Rolling back blacklist.conf: "
 /bin/mv blacklist.conf blacklist.conf.new
 /bin/mv blacklist.conf.bak blacklist.conf
 echo "ok."

# rules
 echo -n "Rolling back rules.conf: "
 /bin/mv rules.conf rules.conf.new
 /bin/mv rules.conf.bak rules.conf
 echo "ok."

# apache2 rules
 echo -n "Rolling back apache2-rules.conf: "
 /bin/mv apache2-rules.conf apache2-rules.conf.new
 /bin/mv apache2-rules.conf.bak apache2-rules.conf
 echo "ok."

# try starting httpd again
 `${APACHESTART}`
 PID=`cat ${APACHEPID}`

# did that fix the problem?
 if `/bin/kill -CHLD ${PID} >/dev/null 2>&1`; then
 echo "That did the trick."
 exit 0
 fi

echo "Fatal: Apache still not running! Run apache2ctl -t to find the error."
 exit 999
 fi

Il faut rendre ce script exécutable.

chmod +x /etc/apache2/modsecurity2/modsec.sh

Installation Serveur Mail Postfix, Amavisd, Mysql, Spamassassin, Dspam, Courier-IMAP

Adminstration Server Linux 18 Comments »

Ce tutorial a été intégralement repris du site  http://www.starbridge.org et a été réalisé par tonio. Il est distribué sous licence creativecommons  Creative Commons License

Le système sur lequel est basé ce document est une DEBIAN stable (Lenny). La version ancienne Stable (Etch) à la date de rédaction présente quelques différences sur certains paquets (changement de nom lors des montées de version : voir le site Debian pour les versions équivalentes) mais cela n’entraîne aucun problème dans les fonctionnalités. Le tuto est aussi compatible avec la version Testing.

Par souci de clarté, on a detaillé chaque action le plus précisement possible, et ce pour ne pas réduire le tuto à une simple succession de commandes. Mais cela peut se réveler parfois fastidieux de créer un fichier en copier/coller puis de modifier le mot de passe. (surtout quand il faut modifier plusieurs occurences).

C’est pour cela que l’on trouvera en note en pied de page les commandes rapides pour exécuter certaines actions longues.

Un hyperlien avec un numéro est le signe de l’existence d’une commande rapide. Pratique lorsque l’on refait le tuto (ou pour les fainéants !)

Ce tuto fonctionne également sous Ubuntu mais certains paquets présentent de légères différences. On essaiera de les indiquer si possible.

On utilisera comme serveur IMAP celui de Courier, mais pour ceux qui le souhaitent, nous préciserons la marche à suivre pour installer Dovecot à la place.

On prendra comme base pour l’exemple le domaine starbridge.org
et le hostname du serveur de mail sera spike.

Read the rest of this entry »

WPAD : Auto-configuration d’un serveur proxy

Administration des Réseaux, Adminstration Server Linux 4 Comments »

Web Proxy Auto-Discovery. Il s’agit d’un protocole imaginé par Microsoft, qui permet d’effectuer automatiquement le paramétrage du server proxy de son navigateur.

Server DNS

Par défaut le browser cherche le sous-domaine wpad du domaine dans le quel on est connecté ensuite il lira a la racine de de ce domaine le fichier wpad.dat (http://wpad.mondomaine.lan/wpad.dat
Voici un exemple de ligne a mettre dans votre BIND

intranet        A       172.16.1.100
wpad            CNAME   intranet

Server DHCP

Dans la config du server DHCP il faut ajouter l’option 252, et lui indiqué le lien du fichier de configuration, les lignes suivante doivent se mettre en dehors d’une définition de range

option wpad-url    code 252 = text;
option wpad-url     "http://wpad.mondomaine.lan/wpad.dat\n";

Server WEB

Il faut maintenant configurer un vhost pour ce sous domaine


 DocumentRoot /home/website/wpad
 ServerName wpad.mondomaine.lan
 ServerAlias 172.16.1.100
 AddType application/x-ns-proxy-autoconfig .dat
 AddType application/x-ns-proxy-autoconfig .pac
 Redirect permanent /wpad.dat /proxy.pac
 
 Options FollowSymLinks MultiViews
 AllowOverride All
 Order allow,deny
 allow from all
 

Le fichier de config

Dans notre exemple nous avons définit la racine du vhost là /home/website/wpad

On crée le fichier proxy.pac

vi /home/website/wpad/proxy.pac

et on copie le code suivant

function FindProxyForURL(url, host)
{
if( shExpMatch(url, "!https:*") || isPlainHostName(host) || dnsDomainIs(host, ".mondomaine.lan"))
return "DIRECT";
else
return "PROXY srvproxy:3128";
}

Cette fonction va permettre de définir quand utiliser le proxy et de spécifier le proxy en question. Ici on se connecte directement au machine du même domaine par contre tous le reste utilise le proxy

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Connexion
ipv6 ready