Archives mensuelles : janvier 2014

Graphs MRTG sous Gentoo

mrtg_logo

MRTG est un logiciel qui permet de générer des graphiques de la bande passante du réseau. D’autres systèmes plus poussés existent mais nous les verrons plus tard.

Prérequis : il faut disposer du service SNMP. La configuration de base fonctionne sans y toucher.

emerge -avq net-analyzer/net-snmp
mv /etc/snmp/snmpd.conf.example /etc/snmp/snmpd.conf
/etc/init.d/snmpd start

Passons maintenant à MRTG et commençons par installer le paquet :

emerge -avq net-analyzer/mrtg

Il faut ensuite créer le dossier de destination des graphiques (à configurer selon vos besoins).

mkdir /var/www/localhost/htdocs/mrtg/

Nous devons ensuite créer le fichier de configuration dont mrtg a besoin grâce à la commande « cfgmaker »:

cfgmaker --global 'WorkDir: /var/www/localhost/htdocs/mrtg/' --global 'Options[_]: bits,growright' --output /etc/mrtg.conf public@localhost

Puis lançons le service :

/etc/init.d/mrtg start

A ce stade, le service MRTG est démarré et va actualiser les données toutes les 5 minutes. Vous pouvez dès à présent voir les graphiques générés en allant dans le dossier « /var/www/localhost/htdocs/mrtg/ » et en affichant les fichiers HTML.

Voici un exemple d’un graphique seul :

graph

C’est terminé !

Laissez passer quelques dizaines de minutes et le graphique va se remplir.

 

Configuration OpenSSH (6.4)

OpenSSH est un logiciel qui permet d’utiliser le protocole SSH pour l’accès à distance sur des machines Linux et le transfert de fichiers de manière sécurisé.

Site officiel du projet : http://www.openbsd.org/openssh/fr/index.html

Voici la configuration détaillée d’un serveur ssh réalisé à l’aide d’OpenSSH (ici en version 6.4)  qui se trouve dans le fichier /etc/ssh/sshd_config

Port 22
Protocol 2
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 2m
PermitRootLogin no
StrictModes yes
AllowUsers john
PermitEmptyPasswords no
UsePAM yes
X11Forwarding no
PrintLastLog yes
UsePrivilegeSeparation sandbox

Les directives Port et Protocol sont optionnelles puisque ces valeurs sont celles présentes par défaut.

SyslogFacility et LogLevel permet d’activer les logs d’OpenSSH de façon suffisante pour pouvoir les traiter avec Fail2ban par exemple.

LoginGraceTime indique le temps maximum pour s’identifier avant que la connexion soit coupée.  Ici 2 minutes.

PermitRootLogin interdit ici la connexion directe de l’utilisateur root. Même avec le bon mot de passe, vous ne pourrez pas vous connecter en root directement. Il convient d’utiliser un simple utilisateur pour se connecter en ssh puis de passer root ensuite. L’utilisateur doit faire partie du groupe wheel.

# gpasswd -a john wheel

StrictModes permet de vérifier les autorisations des utilisateurs.

AllowUsers indique les utilisateurs ayant le droit de se connecter. Cette directive est à associer à PermitRootLogin. Au final, root ne peut jamais se connecter et seul john le peut même si d’autres utilisateurs sont présents sur la machine.

PermitEmptyPasswords interdit la connexion avec un mot de passe nul.

UsePAM utilise PAM pour vérifier les utilisateurs.

X11Forwarding interdit l’affichage à distance d’un environnement graphique.

PrintLastLog affiche la date, l’heure et l’ip de la dernière connexion juste après la connexion.

UsePrivilegeSeparation permet d’isoler via un processus fils la connexion d’un utilisateur avant de créer un nouveau processus avec les droits de cet utilisateur lorsque celui-ci est bien authentifié.

Vous trouverez sur le site officiel toutes les directives : http://www.openbsd.org/cgi-bin/man.cgi?query=sshd_config

N’hésitez pas à commenter !

VirtualHost sur Apache 2.4

Apache 2.4 apporte de nombreuses nouveautés mais change également la syntaxe de ses fichiers de configurations. Vous trouverez tous les changements ici.

En ce qui concerne les VirtualHosts, voici la configuration d’un vhost simple pour Apache 2.2 :

 <VirtualHost *:80>
    ServerName waccabac.com
    Serveralias www.waccabac.com
    DocumentRoot /home/sites/waccabac.com/
    DirectoryIndex index.htm index.php index.html
    ErrorLog /var/log/apache2/www-waccabac.com-error
    CustomLog /var/log/apache2/www-waccabac.com-access combined
    <Directory /home/sites/waccabac.com/>
        Options -Indexes FollowSymLinks
        Allow from all
        AllowOverride all
    </Directory>
</VirtualHost>

Voici l’équivalent en version 2.4

<VirtualHost *:80>
    ServerName waccabac.com
    Serveralias www.waccabac.com
    DocumentRoot /home/sites/waccabac.com/
    DirectoryIndex index.htm index.php index.html
    ErrorLog /var/log/apache2/www-waccabac.com-error
    CustomLog /var/log/apache2/www-waccabac.com-access combined
    <Directory /home/sites/waccabac.com/>
        Options -Indexes +FollowSymLinks
        Require all granted
        AllowOverride all
     </Directory>
 </VirtualHost>

Le paramètre Allow from all devient Require all granted.

A l’inverse, le paramètre Deny from all devient Require all denied.

Il faut également toujours préciser les options « Options » par les signes « – » ou « + ». En effet avec Apache 2.2 aucun signe signifiait l’activation de l’option équivalent au « + ».