
En fait surtout un "mémotech" personnel publié au cas ou ca peut servir à quelqu'un
Possibilité de filtrer les entrées par catégories:
![]() | Softs Windows - administration linux | le 26/05/2006 à 13:57:00 |
- Putty: Permet d'accéder en SSH à un serveur distant
-
PuttyGen: Permet de générer des couples de clés privée/publique RSA pour s'authentifier sur les serveurs linux en SSH. Une fois le couple de clés généré, il faudra placer la clé publique dans le répertoire des clés publiques authorisées du serveur (voir fichier de conf du serveur, /etc/ssh/sshd_config sous debian/ubuntu, sous ubuntu ce fichier se trouve dans ~/.ssh/authorized_keys et son format est clé1
clé2...).
Pour utiliser sa clé privée à partir d'un unix (par exemple Mac OS qui dispose d'OpenSSh installé par défaut, il faut penser à exporter sa clé privée sous le format OpenSSH (Menu conversions / Export OpenSSH key) - PSCP: Permet d'envoyer des fichiers par Copie sur SSH sans avoir à passer par du FTP, très pratique. Ce programme fonctionne qu'en ligne de commande (emulateur DOS), les paramètres sont les mêmes que la commande sous linux seul le nom du processus change (pscp au lieu scp)
![]() | SNMP - RRDtool | le 17/05/2006 à 15:15:00 |
RRDTool s'installe via le package du même nom apt-get install rrdtool, attention au fichier /etc/apt/sources.list qui doit contenir les serveur de depots de paquets universe (voir section documents pour telecharger le fichier). Ensuite le but est de créer un base de type rrd, de la remplir et enfin de sortir un graphique.
Ces fonctions sont effectuées respectivement par les commandes rrdtool create, rrdtool update et rrdtool graph.
rrdtool create nom_fichier.rrd \
DS:1min:ABSOLUTE:600:U:U \
DS:5min:ABSOLUTE:600:U:U \
DS:15min:ABSOLUTE:600:U:U \
RRA:AVERAGE:0.5:1:600 \
RRA:AVERAGE:0.5:6:700 \
RRA:AVERAGE:0.5:24:775 \
RRA:AVERAGE:0.5:288:797 \
RRA:MAX:0.5:1:600 \
RRA:MAX:0.5:6:700 \
RRA:MAX:0.5:24:775 \
RRA:MAX:0.5:288:797
Les DS (data sources) peuvent être de plusieurs types (ABSOLUTE,GAUGE,DERIVE,COUNTER) et sont de la forme DS:label:type:heartbeat:min:max. le Heartbeat définit le nombre de secondes avant que la donnée ne soit considérée comme Unknown.
Pour mettre a jour les données il faut utiliser la commande
rrdtool update nom_fichier.rrd N:$DS1:$DS2...:$DSn
RRDTool graph permet de générer un graph (par défaut au format GIF) en récuperant les données d'un fichier .rrd
SNMP: s'installe par apt-get install snmp(client) et apt-get install snmpd(agent). lors de l'installation des commandes client snmp, une est utile pour la configuration de l'agent local, il s'agit de snmpconf qui permet de configurer l'agent (nom communautés, droits d'accès, etc.).
snmpwalk et snmpget permettent respectivement d'afficher la MIB d'un agent et d'acceder à une valeur de cette MIB.
Pour plus de facilité le mieux est d'utiliser un navigateur de MIB comme Getif sous Windows
snmpget -c community_name -v2c localhost tcp.tcpCurrEstab.0 | awk -F ":" '{print $4}' | awk '/^ / {print $1}'
la commande awk permet de faire du traitement de lignes (un peu comme grep). Le paramètre -F permet de définir un delimiteur de champs, le 2ieme awk permet d'afficher le nombre d'octets en enlevant l'espace au début du champs (awk 'pattern {options}'}
Cette commande permet par exemple de récupérer le nombre de connexions en cours d'établissement (grâce à un navigateur de MIB, il est possible de voir les informations de chaque objet). la commande awk permet quant à elle de filtrer le resultat et de n'afficher que la valeur (4ieme champs).
A noter que si vous recevez une erreur du type "No securityName specified" c'est qu'il manque le paramètre -v 2c qui force l'utilisation de la version 2c de SNMP (pour la version 3 qui est sécurisée, il faut spécifié la variable SecurityName)
![]() | Installation script keep-alive | le 15/05/2006 à 00:14:00 |
#!/usr/bin/php
<?php
$jour=date("d");
$mois=date("m");
$annee=date("Y");
$heure=date("H");
$minutes=date("i");
$pass=md5("mot_de_passe");
include("http://adresse_site/script.php?j=$jour&m=$mois&a=$annee&h=$heure&m=$minutes&p=$pass");
?>
Ce script est installé sur le serveur local, avec les droits d'éxécution (chmod) et une tâche cron. Il lance donc un script sur le site distant avec les données date locale et le mot de passe chiffré par hashage MD5. la première ligne permet de définir l'interpreteur, ici PHP, sous ubuntu il faut installer le package php4-cli (apt-get install php4-cli) pour que cron puisse l'exécuter.
Le script distant (ici script.php) n'a plus qu'a mettre les données à jour dans la base SQL (par exemple) en vérifiant bien le mot de passe envoyé et en comparant avec la date instantannée.
Ensuite ce script est intégré dans un autre qui permet de savoir si la liaison (entre les probleme de wifi et de disponibilité des serveurs Free)
#!/bin/bash
ping -c 3 www.google.fr
if [ $? -ne 0 ]
then
echo "probleme google"
ping -c 3 192.168.2.1
if [ $? -ne 0 ]
then
ifdown ra0
ifup ra0
exit 0
else
echo "probleme avec ADSL, LAN ok"
fi
else
echo "google ok"
/home/xavier/update_time.php
fi
exit 0
Ce script permet de tester disponibilité d'un serveur ici google (internet). Si cette connexion est défaillante, on teste alors la connexion locale. Si celle-ci est défaillante on redemarre l'interface Wifi (peut-être qu'un renew dhcp pourrait suffir). Et on ne lance le script de mise à jour de la date seulement si les connexions sont bonnes.
![]() | Apache 2 - Droits d'accès | le 14/05/2006 à 13:36:00 |
Dans apache2 les droits d'accès à un répertoire se réglent soit dans le fichier /etc/apache2/httpd.conf (sous ubuntu) soit dans un fichier .htaccess (vérifier ce nom dans le paramètre AccessFileName du fichier /etc/apache2/apache2.conf ).
<directory "/var/www/">
AuthName "Acces prive"
AuthType Basic
AuthUserFile "/var/www/reperoire/.htpasswd"
<limit GET POST>
require valid-user
</limit>
</directory>
Ici on configure restreint l'accès aux utilisateurs dont le login/mot de passe sont dans le fichier /var/www/repertoire/.htpasswd (sous la forme login:md5(mot_de_passe)). L'utilitaire htpasswd permet d'ajouter des utilisateurs à un fichier htpasswd (htpasswd nom_fichier nom_utilisateur).
<Directory "/repertoire">
Options Indexes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
AllowOverride All, est necessaire pour que Apache prenne en compte les fichiers .htaccess dans ce repertoire.
![]() | Exim | le 12/05/2006 à 18:37:00 |
Exim peut fonctionner en tant que simple agent SMTP afin d'envoyer vers un autre serveur SMTP (FAI ou celui de l'entreprise) notamment pour les notifications d'email pour la voicemail.
Voici 2 lignes de commandes utiles, la 1ere permet de vider la file d'attente d'exim (particulierement utile pour moi car les messages locaux se sont empilés dans la file d'attente).
exim4 -Mrm `mailq | awk '{ print $3 }'`
ou
mailq | awk '{ print $3 }' | xargs exim4 -Mrm
La commande xargs permet de rediriger l'entrée standard (stdin) en temps qu'argument de la commande entrée en argument de xargs
Avec les paramètres -Mvb et -Mvl on peut afficher respectivement le corps d'un message et les entrées log d'un message.
dc_eximconfig_configtype='smarthost'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1'
dc_readhost='nomdomaine.com'
dc_relay_domains='*'
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.FAI.fr'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='true'
dc_mailname_in_oh='true'
echo "test" > mail -s sujet adresse@fai.com