Xarli a écrit 115 commentaires

  • [^] # Re: ClientAlive...

    Posté par  (site web personnel) . En réponse au message timeout ssh. Évalué à 2.

    Non, ce sont des messages propres au protocole SSH, et non des données utilisateur (fichiers en transfert, commandes, sortie console, ...). Comme dit plus haut, ça permet de fermer les connexions fantômes.

    C'est utile en cas de problème du poste client, ou par exemple avec un équipement de filtrage réseau qui mettrait fin aux connexions TCP de façon autoritaire parce ce qu'une trop grande durée s'est écoulée sans données transitant (Cisco Pix/Asa par exemple).

    Ce qu'il faut c'est effectivement un mécanisme coté shell pour répondre à la problématique.
  • # find

    Posté par  (site web personnel) . En réponse au message Supprimer une grande quantité de fichiers impossible. Évalué à 5.

    C'est une limitation du shell, ton "*" est remplacé par un trop grand nombre de paramètres. Find est un de tes amis dans ces cas là.

    find /var/qmail/mails/root/ -print | xargs /bin/rm

    /var/qmail/mails/root/ est bien sûr à remplacer par ton répertoire à traiter.

    Avec les paramètres de find, tu peux aussi n'effectuer l'action que sur les fichiers vieux de plus de N jours (ou minutes sur certaines versions de find).
  • [^] # Re: Just for the record

    Posté par  (site web personnel) . En réponse au journal EyeOS 1.7.0. Évalué à 3.

    Dans l'idéal, mieux vaut même laisser les droits à un utilisateur tiers (ou root), et ne donner les droits à apache d'écrire que dans les répertoires où il en a vraiment besoin. Beaucoup de gens ont tendance à trop faire confiance à leur application web, alors que c'est la partie (normalement) la plus sensible sur un serveur HTTP (en tous cas la plus exposée).
  • [^] # Re: Et le DNS ?

    Posté par  (site web personnel) . En réponse au message Problème de lenteur après activation de netfliter. Évalué à 0.

    Autre méthode pour éviter les timeout, place dans le fichier de conf du serveur SSH (normalement /etc/ssh/sshd_config) :

    UseDNS no

    Dans beaucoup de cas, c'est superflu, pour de l'accès depuis un réseau privé, et ça accélère beaucoup les choses.
  • # AddDefaultCharset

    Posté par  (site web personnel) . En réponse au message apache et jeux de caractere. Évalué à 2.

    D'après http://httpd.apache.org/docs/2.2/mod/core.html#adddefaultcha(...) , il est possible d'utiliser l'élément de configuration AddDefaultCharset au niveau d'un vhost, donc de déclarer un encodage par défaut pour chacun de test vhosts. L'option est documentée comme utilisable dans tous les contextes (globalement, vhost, directory, .htaccess) pour les trois versions majeures d'apache (1.3, 2.0, 2.2), donc normalement il y a pas mal de chances pour que ce soit bon pour toi.
  • # KeepAlive off

    Posté par  (site web personnel) . En réponse au message directive KeepAlive. Évalué à 1.

    D'expérience, sur des sites à fort trafic (plusieurs centaines de mégas-bits par serveur en sortie en période de charge), il vaut mieux les désactiver, ça maintient des connexions pour rien, et donc ça augmente artificiellement le nombre de process Apache connectés (là ou justement on a besoin de diminuer ce nombre de façon à garder un écart correct entre le nombre de clients connectés et le MaxClient). Ca peut faire vraiment une grosse différence, en terme d'utilisation mémoire et de temps CPU.

    L'excellent site de Willy Tarreau donne une très bonne explication : http://1wt.eu/articles/2006_lb/index_10.html#tune
  • # script?

    Posté par  (site web personnel) . En réponse au message Recherche de motifs via un fichier. Évalué à 1.

    Une commande unique ou un script complet irait? Pour un script :

    xarli@tiki:/tmp$ cat test.sh
    exec < file1
    while read ligne
    do
    grep $ligne file2
    done
    xarli@tiki:/tmp$ sh test.sh
    dsdssd sfdsdfsd toto
    qsdfqsdftoto toto qsqsf
    sisi qsfsdfsdf
    dfsdfs nono qdqsd
    xarli@tiki:/tmp$
  • # Bonding

    Posté par  (site web personnel) . En réponse au message Haute dispo et double Lan. Évalué à 3.

    Ce que tu veux faire, c'est du bonding d'interface (failover donc actif/passif), ça marche assez bien pour de la haute dispo (j'en utilise couramment). Un lien au hasard trouvé dans google sur le sujet spécifiquement pour Debian :

    http://www.debianhelp.co.uk/bonding.htm
  • # DRBD

    Posté par  (site web personnel) . En réponse au message Cluster Haute Dispo avec loadbalancing sans SAN ?. Évalué à 1.

    Si si, DRBD 8.X.X supporte les configurations actif/actif (accès simultanés en lecture/écriture), bien que les docs ne soient pas à jour sur le site de DRBD et linux-ha ( http://www.linux-ha.org/DRBD/FAQ#head-ec4ab5a57e15232e9ac4e1(...) ). La seule contrainte est d'utiliser un système de fichier supportant les accès simultanés depuis plusieurs noeuds (GFS ou OCFS2). Par contre tu es limité à 2 noeuds avec DRBD.

    Une autre solution plus performante et éventuellement plus extensible (plus de noeuds accédant à la ressource), c'est comme tu le dis une baie de disque supportant les accès concurrents, et un système de fichier identique à ceux cités ci-dessus (GFS/OCFS).
  • # Limite du nombre de partitions utilisables par disque

    Posté par  (site web personnel) . En réponse au message Nombre maximal de FS montés. Évalué à 0.

    Il existe une limitation du nombre de partitions par disque, dépendant du type de disque, pour de l'IDE c'est 63, et en SCSI tu ne peux avoir que 15 partitions ( http://www.linux-france.org/article/sys/chargeurs/ix86/lilo/(...) ).
  • # GPG

    Posté par  (site web personnel) . En réponse au message Logiciel de chiffrement et de compression de volumes de données. Évalué à 1.

    GPG est capable de compresser + chiffrer. Le commutateur "-z" te permet de spécifier le niveau de compression.

    "gpg --help" te donnera les algorithmes de compression supportés.
  • # LoggedFS

    Posté par  (site web personnel) . En réponse au message journaux d'activité. Évalué à 1.

    C'est un système de fichier Fuse se contentant de journaliser les opérations sous un point de montage, et qui te permettrait donc de voir les modifications/créations de fichiers effectués à un endroit précis :

    http://loggedfs.sourceforge.net/

    Par contre, pour surveiller tout le système à partir de la racine, ça risque peut-être d'être compliqué, mais pour une petite arborescence, ça devrait répondre à ton problème (la partie dernier fichier modifié au moins).
  • # Xinetd

    Posté par  (site web personnel) . En réponse au message déclencher le traitement d'un fichier suite à un FTP. Évalué à 4.

    Déjà fait ce genre de truc, avec proftpd et xinetd. En gros, un nouveau serveur ftp accepte chaque nouvelle connexion, et on lance un script dès qu'il rend la main.

    dans la conf xinetd :

    service ftp
    {
    disable = no
    flags = REUSE
    socket_type = stream
    wait = no
    user = root
    server = /usr/local/bin/lance-ftp.sh
    log_on_success += DURATION USERID
    log_on_failure += USERID
    bind = monnomdhote
    }


    Et le fichier shell /usr/local/bin/lance-ftp.sh correspondant :

    #!/bin/sh
    /usr/sbin/proftpd; /usr/local/bin/apres-ftp.sh


    Dans le script appelé après la fin d'une connexion, il faut vérifier si des fichiers ont été déposés par contre, mais il n'est lancé que lorsqu'un utilisateur FTP se déconnecte (pas dis que c'était optimal non plus).
  • # Snoopy

    Posté par  (site web personnel) . En réponse au message Tracer l'activité des users. Évalué à 2.

    Un petit soft qui trace tous les appels execve

    http://sourceforge.net/projects/snoopylogger/

    Ca permet de tout tracer via Syslog, pour un utilisateur ou pour un soft (très pratique).

    Attention, c'est super verbeux, donc à utiliser avec précaution.
  • # DenyHosts

    Posté par  (site web personnel) . En réponse au message Serveur SSH comment se proteger. Évalué à 2.

    C'est un soft qui va surveiller ton journal des accès, et après un certain nombre d'échec, il va bannir via hosts.deny les adresses IP sources. Tu peux whitelister des adresses.

    http://denyhosts.sourceforge.net/

    Assez pratique, surtout avec les robots qui tournent.
  • # htmldoc

    Posté par  (site web personnel) . En réponse au message HTML TO PDF ?. Évalué à 3.

  • # les droits sur la commande su ont sautés

    Posté par  (site web personnel) . En réponse au message compte root. Évalué à 3.

    Tu dois replacer le droit setuig, comme ça :

    chown root /bin/su
    chmod u+s /bin/su


    Si su n'est pas dans /bin, fait le là où il se trouve. Tu peux le trouver avec :

    which su
  • # Debug

    Posté par  (site web personnel) . En réponse au message Un serveur paresseux. Évalué à 2.

    Des évènements sont-ils rajoutés dans les journaux de ton serveur la nuit, dans les périodes ou il semble injoignable (/var/log/syslog)?

    Sinon, essaie de mettre en place des scripts appelés régulièrement sur ce serveur, en journalisant leur sortie, pour voir ce qui se passe (ping vers une adresse IP extérieure, récupération d'un fichier en HTTP sur le net, résolution DNS, ping vers la passerelle). Ca te permettra de voir ce qui se passe de manière plus précise.
  • [^] # Re: DRBD + Heartbeat

    Posté par  (site web personnel) . En réponse au journal HA & FS. Évalué à 1.

    Dans pas longtemps la release candidate 2 vient de sortir, bien que la roadmap ( http://svn.drbd.org/drbd/trunk/ROADMAP ) indique de nombreux points restants à traiter, cad pas encore à 100% (est-elle à jour?).
  • # Spécifier le chemin?

    Posté par  (site web personnel) . En réponse au message Lancer un .out dans une console. Évalué à 1.

    Par exemple, si tu n'a pas changer de répertoire depuis ta compilation :

    ./a.out
  • [^] # Re: echo $JAVA_HOME

    Posté par  (site web personnel) . En réponse au message Install Tomcat sur Ubuntu 6.06. Évalué à 1.

    Si je me souviens bien (je n'ai pas accès à ma machine sous Ubuntu avant ce soir) :

    /usr/lib/jvm/java-1.5.0-sun/bin/java
  • [^] # Re: echo $JAVA_HOME

    Posté par  (site web personnel) . En réponse au message Install Tomcat sur Ubuntu 6.06. Évalué à 2.

    Bah chez moi ça marche pourtant, avec tomcat5 fraichement installé pour l'essai.

    root@karlanton:~# /usr/share/tomcat5/bin/startup.sh
    The JAVA_HOME environment variable is not defined
    This environment variable is needed to run this program
    root@karlanton:~# export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
    root@karlanton:~# /usr/share/tomcat5/bin/startup.sh
    Using CATALINA_BASE: /usr/share/tomcat5
    Using CATALINA_HOME: /usr/share/tomcat5
    Using CATALINA_TMPDIR: /usr/share/tomcat5/temp
    Using JAVA_HOME: /usr/lib/jvm/java-1.5.0-sun


    Sinon, essaye de rajouter l'affichage des variables dans les scripts /usr/share/tomcat5/bin/startup.sh et surtout (ou plutôt d'ailleurs) /usr/share/tomcat5/bin/catalina.sh, en rajoutant -ex après l'invocation du shell, comme ça en début de script :

    #!/bin/sh -ex


    Tu dois voir le bon chemin vers le binaire java à un moment, dans l'appel de catalina.sh, ce qui n'est apparemment pas le cas actuellement.
  • # echo $JAVA_HOME

    Posté par  (site web personnel) . En réponse au message Install Tomcat sur Ubuntu 6.06. Évalué à 2.

    ça te donne quoi? Question bête, mais tu as bien fait prendre en compte ta modif du profile?
  • # Problème connu

    Posté par  (site web personnel) . En réponse au message Lenteur FTP - Deconnexion. Évalué à 1.

    Pour ton problème de connexions répétées :

    DelayEngine off

    (c'est un module, activé par défaut, qui rend difficile voir impossible les attaques DOS et le brute forcing, rajoutant un délai aléatoire à chaque tentative de connexion)

    Après, si tu es en réseau local, ces paramètres peuvent accélérer le tout, en désactivant les résolution de nom inverses et l'identification ident :

    UseReverseDNS off
    IdentLookups off
  • [^] # Re: Quelle différence ?

    Posté par  (site web personnel) . En réponse au journal Teledeclarer chez xiti. Évalué à 2.

    Oui, le referer est bien indiqué pour une page HTTPS, c'est ton navigateur qui indique de quelle page il vient, que ce soit automatique (une image aura la page sur laquelle elle se trouve comme referer), ou déclenché par l'utilisateur (je clique sur un lien).