Translation in English (Google)  Übersetzung in Deutsch (Google)  Traducción en Español (Google) 
webmaster@smeserver.fr
 Version imprimable 

Astuces et howtos


But

Cette page sert à recenser le plus grand nombre d'astuces et de howtos utiles sous SME v7.x.
Comme il s'agit le plus souvent de modifier le comportement standard de SME et cela implique que vous soyez parfaitement conscient des altérations apportées au système avec les éventuels risques que cela peut comporter. Si vos connaissances de SME et de l'exploitation de la ligne de commande sont limitées, vous devriez absolument vous documenter sur le sujet avant d'exploiter le contenu de cette page.

Je vous encourage vivement à me faire part de nouvelles astuces à ajouter à cette liste en m'envoyant un mail. Merci d'avance pour votre aide.

Utilisateurs
Groupes
I-bays
Modifier le niveau complexité des mots de passe
Modifier le nombre maximal de caractères utilisables dans les noms
Autoriser un utilisateur à exploiter la ligne de commande
Réinitialiser le mot de passe du compte root
Apache Restreindre l'accès au service Apache ou le désactiver
Masquer le listing des fichiers dans les i-bays
Résoudre les noms d'hôte dans les logs
Personnaliser les messages d'erreur standards d'Apache
Créer une galerie de photos dans une i-bay avec phpWebGallery
PHP Visualiser les messages d'erreur PHP sous Apache
Autoriser les scripts PHP à accéder à certains répertoires
Autoriser l'accès aux fichiers distants
Modifier la taille des fichiers pouvant être envoyés sur le serveur
MySQL Créer des utilisateurs MySQL
Accéder au serveur MySQL depuis le réseau
Messagerie Modifier le nombre maximal de connexions IMAP simultanées
Visualiser dans le webmail les messages envoyés en HTML
Limiter la taille des courriels pouvant être envoyés
Supprimer les "double bounce"
Forcer un serveur SMTP tiers pour certains domaines destinataires
Supprimer les alertes de rkhunter concernant l'accès SSH par root
Samba Changer le commentaire associé au serveur
Autoriser tout le monde à utiliser les imprimantes
Système de fichiers Utiliser un disque dur supplémentaire pour stocker une ou plusieurs i-bay(s)
Réseau Ouvrir un port réseau sur l'interface externe pour un service
Limiter l'accès à certains services sur l'interface externe
Désactiver le proxy transparent
Créer et utiliser des paires de clés SSH
Modifier le niveau d'enregistrement des évènements du pare-feu
Mettre à jour plusieurs domaines DynDNS (service gratuit)
Bloquer de façon permanente des adresses IP externes


Convention typographique

Afin de vous faciliter la compréhension de qui apparait à l'écran, j'ai mis en place le code couleur suivant :

En blanc : ce que vous devez taper
En magenta : les éléments que vous devez taper, en fonction de vos besoins
En cyan : ce qui est affiché par le système


Personnaliser les messages d'erreur standards d'Apache

Par défaut, lorsqu'une requête HTTP échoue, le service Apache renvoie une page d'erreur standard bien moche... Il est toutefois possible de personnaliser ces pages d'erreur pour chaque i-bay.

Pour cela, il va falloir créer un fragment de template personnalisé avec votre éditeur de texte préféré (mcedit, vi, pico, nano, etc.) :

mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/
mcedit /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/95AddErrDoc2ibays

Dans ce fichier, tapez le code PERL suivant :

{
    use esmith::AccountsDB;
    my $adb = esmith::AccountsDB->open_ro();

    local @page = ('206','301','302','400','401','402','403','404','405','500','502');
    local $texte;

    foreach my $ibay ($adb->ibays)
    {
        $texte = "";
        foreach my $err_num (@page)
        {
            local $errorMessage = $ibay->prop($err_num);
            if ($errorMessage)
            {
                $texte .= "    ErrorDocument $err_num $errorMessage\n";
            }
        }
        if ($texte)
        {
            $OUT .= "\n<Directory /home/e-smith/files/ibays/" . $ibay->key . "/html>\n";
            $OUT .= $texte;
            $OUT .= "</Directory>\n";
        }
    }
}

Comme vous pouvez le voir, je n'ai pris en compte "que" certains codes d'erreur. S'il vous en manque, il vous suffit de les rajouter dans le tableau @page. D'un autre côté, vous n'êtes pas obligé de peronnaliser tous les codes proposés.
Pour mémoire, les codes les plus fréquemment retournés sont le 404 (page introuvable), le 403 (accès interdit) et le 401 (accès non authorisé). Vous pourrez trouver une liste complète de ces codes sur le site www.indexa.fr.

La personnalisation de la page peut se présenter sous trois formes distinctes (cf. la documentation de Apache) :

  • une URL locale vers laquelle la redirection sera effectuée
  • une URL vers un serveur externe, vers lequel la redirection sera effectuée
  • un message à afficher. Le message doit être précédé par des guillemets ("). Tout ce qui suit ces guillemets est affiché. Notez que le préfixe (") n'est pas affiché

Ainsi, pour rediriger l'erreur 404 de l'i-bay toto vers la page locale /erreurs/404.html, vous devrez taper :

db accounts setprop toto 404 /erreurs/404.html
signal-event ibay-modify toto

De la même façon, pour rediriger l'erreur 403 de l'i-bay toto vers l'URL http://un_site.truc/403.php, vous devrez taper :

db accounts setprop toto 403 http://un_site.truc/403.php
signal-event ibay-modify toto

Enfin, pour n'afficher qu'un simple texte (attention à bien respecter l'enchaînement guillemet simple, guillemet double, texte à afficher, guillemet double, guillemet simple) :

db accounts setprop toto 401 '"La requête nécessite une identification de l'utilisateur."'
signal-event ibay-modify toto

Pour supprimer la personnalisation d'un message, il vous suffit de taper, par exemple :

db accounts delprop toto 401
signal-event ibay-modify toto

Contrat Creative Commons smeserver.fr
Site consacré à la distribution Linux SME Server
Site sous licence Creative Commons (by, nc, sa)