LaBienPensanceMaTuer a écrit 1611 commentaires

  • [^] # Re: Avec ssh

    Posté par  . En réponse au message compte utilisateur. Évalué à 2.


    et zouplaboum, la connexion se fermera apres execution du script
    C'est vrai que je me suis plante, ce n'est pas le shell par defaut qui est change...


    Ok, j'ai matté la page de man en question, par contre je suis pas sur que le comportement que tu décris soit bon.
    En effet, je lis:


    7. Changes to user's home directory.

    8. If ~/.ssh/rc exists, runs it; else if /etc/ssh/sshrc exists,
    runs it; otherwise runs xauth. The ``rc'' files are given the
    X11 authentication protocol and cookie in standard input.

    9. Runs user's shell or command.


    Je vois plus le point 8. comme une étape intermédiaire te permettant d'éxecuter des actions avant de lancer le shell.
    Le lancement du shell ne semble pas avoir pour condition la (non) execution du script.
    Donc, à mon avis, dans ton exemple, le shell de l'utilisateur sera lancé après le script.
    On doit toujours pouvoir gruger en mettant /bin/true comme shell à l'utilisateur.

    Après, j'pense que pour être sur il faudrait tester et j'avoue avoir la flemme :)
  • [^] # Re: Avec ssh

    Posté par  . En réponse au message compte utilisateur. Évalué à 0.


    Avec ssh, tu peux forcer le shell d'un utilisateur a la connexion.


    Aucune trace de ça dans le man 5 sshd_config.

    Le seul truc qui pourrait s'approcher de ce que tu décris serait de
    forcer la variable d'environnement SHELL (voir AcceptEnv dans man 5 sshd_config), mais :

    1/ je suis pas sur que ça outrepasse vraiment le shell par défaut de l'utilisateur.
    2/ Ce serait plus à l'initiative de l'utilisateur qui se connecte, et faire confiance à l'utilisateur c'est aller dans le mur :)

    Par contre, changer le shell de l'utilisateur se fait très bien à coup de chsh en tant que root.
    Donc à priori tu peux très bien faire:
    chsh -s <chemin du script> <user>

    Toutefois cette modification sera globale au système, et non juste pour les connexions ssh.
  • # Shell restrictif

    Posté par  . En réponse au message compte utilisateur. Évalué à 5.

    Il est difficile de gérer ce genre de permission au niveau des permissions du système de fichiers.

    Ca doit pouvoir se faire à coup de selinux et consors, mais c'est certainement bien compliqué pour peu de chose.

    La solution vers laquelle je m'orienterai pour ma part serait un shell restrictif qui autorise ou non l'execution des commandes en question.
    Ca se code très bien en shell.
    Exemple:


    [binarym@gco]:~% grep test /etc/passwd 15:18
    test:x:1001:1001::/home/test:/tmp/rshell.sh
    [binarym@gco]:~% cat /tmp/rshell.sh
    #!/bin/sh
    do_exit=0

    while (( ! $do_exit)) ; do
    echo "exit or uname ?"
    read cmd;
    if [ "$cmd" != "exit" ] && [ "$cmd" != "uname" ] ; then
    echo "$cmd not allowed";
    elif [ "$cmd" == "exit" ] ; then
    do_exit=1;
    else
    uname;
    fi;
    done
    [binarym@gco]:~% su - test
    Password:
    Pas de répertoire, connexion avec HOME=/
    exit or uname ?
    uname
    Linux
    exit or uname ?
    ls
    ls not allowed
    exit or uname ?
    uname -a
    uname -a not allowed
    exit or uname ?
    uname | ls
    uname | ls not allowed
    exit or uname ?
    exit


    Voilà.
  • [^] # Re: Objectif ?

    Posté par  . En réponse au message Bloquer les RSS. Évalué à 1.

    C'est juste impossible que la combine du /etc/hosts ne fonctionne pas, sauf si comme je le dis plus haut tu utilises un proxy ou si l'ordre de résolution de nom fait intervenir les DNS en premier (ce dont je doute).
    Ce dernier point est vérifiable via le fichier /etc/host.conf (man 5 host.conf).
  • [^] # Re: Objectif ?

    Posté par  . En réponse au message Bloquer les RSS. Évalué à 1.

    Le fichier /etc/hosts.deny est utilisé par le wrapper tcp pour autoriser ou interdire l'accès à un service en fonction de l'ip source.
    Rien à voir donc.
  • [^] # Re: Objectif ?

    Posté par  . En réponse au message Bloquer les RSS. Évalué à 3.

    Hmmm ... c'est sur que le dimanche matin quand je m'emmerde, je cherche à trouver des solutions pour le boulot Lundi^WMardi (ouai, demain c'est paques).
    Et puis c'est sur qu'en tant qu'admin, je refuse que mes utilisateurs voient le flux rss du figaro ... quand il consulte un site anti productif quelconque.
    Enfin bref, tout ça pour dire que je crois pas que son objectif soit d'ordre "professionnel".

    Et sinon, en mode réponse pure, je l'orienterai vers adblock.
    Sinon, pour la solution à base de /etc/hosts:

    rss.lefigaro.fr. 3600 IN CNAME feeds.feedburner.com.

    Donc,

    echo "127.0.0.1 feeds.feeburner.com rss.lefigaro.fr" >> /etc/hosts

    La résolution balancera sur toutes les requêtes à destination des hosts ci dessus vers localhost (attention aux 404 si tu as un serveur web qui écoute sur ta machine).

    Précision toutefois, si tu passes par un proxy HTTP, cette méthode sera complétement inefficace car dans ce cas, le client ne fait pas la résolution de nom, c'est le serveur proxy qui s'en charge.

    Voilà voilà.
  • [^] # Re: Ça c'est un bon plan !

    Posté par  . En réponse au journal HS plan fringue. Évalué à 10.

    J'en profite pour rajouter un autre bon plan (et, en me répondant à moi même essayer de voir ce fameux easter egg).

    J'étais fatigué des déodorants qui ne durent pas plus d'1 mois ou deux, et j'ai trouvé un fournisseur du tonnerre:
    http://www.ipsopresto.com/fournitures-services-generaux/deso(...)
    1.55€ les 300ml, même chez Lidl on trouve pas mieux.

    J'utilise aussi ça en remplacement du gel douche, ça marche du feu de dieu et avec une bouteille je fais à peu près 1 an:
    http://www.ipsopresto.com/fournitures-services-generaux/prod(...)
    Par contre quelques connaissances ont testé sur mon conseil et m'ont rapporté avoir choppé la pécole ... aucun soucis de mon côté.
  • # Ça c'est un bon plan !

    Posté par  . En réponse au journal HS plan fringue. Évalué à 6.

    C'est clair que c'est un bon plan.

    Maintenant, tout les geeks qui ont des problèmes pour se trouver une copine vont tomber toutes les nanas en boite avec ces superbes pompes de sécu !
  • [^] # Re: des pistes à étudier

    Posté par  . En réponse au message Swapper dans la RAM d'un autre ordinateur. Évalué à 0.

    Je voulais juste lui répondre de la façon dont il m'a adressé la parole. Ne t'en préoccupe pas ;-)

    J'me souviens pas t'avoir demandé "de la fermer" ni être monté sur mes grands chevaux.
    Juste une constatation: sur linuxfr et sur bien d'autres endroits, on répond rarement à la question posé. On part plutôt sur du "Faut pas faire ça saynul, j'te conseille de faire ça saymieux".

    Branle toi un bon coup avant de monter en pression comme ça mon grand, ça te fera du bien tu verras. (ça c'était pour te donner une raison d'être en rogne).
  • [^] # Re: des pistes à étudier

    Posté par  . En réponse au message Swapper dans la RAM d'un autre ordinateur. Évalué à 2.

    Espèce de tache, regarde plus bas, j'ai répondu à la question qu'il posait.
    Prend donc ton valium avant de poster la prochaine fois, ça sera mieux pour tout le monde.

    Aucun problème, si tu veux suggérer une autre solution, pas de soucis, mais répond avant à la question posée.

    Je m'en tamponne le derch que tu sois en rogne.
  • [^] # Re: re

    Posté par  . En réponse au message Swapper dans la RAM d'un autre ordinateur. Évalué à 1.

    Comme ça aucune idée ... ça doit être documenté dans les sources du noyaux ... Essaye donc de fouiller dans /usr/src/linux/Documentation ... (j'ai pas les sources du noyau sur ma bécane du boulot :/)
  • [^] # Re: des pistes à étudier

    Posté par  . En réponse au message Swapper dans la RAM d'un autre ordinateur. Évalué à 2.

    Et pourquoi répondre toujours à côté de la plaque ?
    Il a une problématique, et pose une question. Répondez donc à sa question au lieu de lui dire "ce que vous vous auriez fait et qui vous semble vachement mieux"...
  • # re

    Posté par  . En réponse au message Swapper dans la RAM d'un autre ordinateur. Évalué à 2.

    1- de créer un block device virtuel de 100Mo en RAM,
    [...]
    Ami lecteurs, savez vous comment procéder pour l'étape 1 ?


    Si je ne m'abuse, cela s'appelle un ramdisk.
    Tu définies la taille de ce ramdisk en option au kernel à coup de ramdisk_size= puis ensuite, tu accèdes à /dev/ramX.
  • # Ma méthode...

    Posté par  . En réponse au journal [ Un peu HS ] Et vous, vous dites quoi lorsqu'on vous demande ?. Évalué à 4.

    Premier point primordial, il ne faut pas dire que tu bosses dans l'informatique.
    Tu dis que tu travailles dans les réseaux ou que tu es développeur, mais ne jamais laisser une chance aux gens d'associer ta profession à Windows XP.

    Ensuite, quand en dépit de ces précautions, les bougres parviennent à te glisser une question sur Windows, tu réponds que tu n'en connais pas plus qu'eux car cela fait maintenant X années que tu as arrêté de toucher à cette cochonnerie et donc tu lui seras d'aucun secours.

    Autre chose, pour ma part, je ne propose plus aux gens de les aider à passer sous Linux. Je leur en parle si je sens qu'ils peuvent être intéressés mais je ne cherche pas à imposer mon système d'exploitation pour une raison bien simple: je ne veux plus perdre mon peu de temps libre devant l'ordinateur des autres.
  • # RTFM ....

    Posté par  . En réponse au message disque amovible (psp,gsm,apn). Évalué à 0.

    L'usage de base de mount est le suivant:
    mount device mountpoint

    Par exemple, si tu fais
    mount /dev/sdd3 /plop
    La partition 3 de sdd sera monté dans /plop, même si il n'y a pas d'entrée dans le /etc/fstab ou encore si l'entrée diffère.

    Lorsqu'il n'y a qu'un seul argument, mount va examiner le fstab pour savoir comment faire.
    Donc pour répondre à ta question, arrête de toucher au fstab et utilise la syntaxe complète.
    Pour infos, il s'agit là des bases ... et un man mount aurait répondu à ta question ...
  • # Pour ma part...

    Posté par  . En réponse au journal Chronique informatique du journal Le Monde.... Évalué à 10.

    ... ce que je trouve le plus affligeant, c'est l'absence complète de valeur ajouté de cet article.
    L'auteur ne donne rien de plus ici que ce qu'on peut déjà lire en regardant la liste des portables disponibles sur les sites de vente en ligne.
  • # Re: ...

    Posté par  . En réponse au message Lacryma.fr recherche un nouveau webmaster partenaire. Évalué à 8.


    Maîtrises requises
    -découpage photoshop d’une maquette

    -intégration flash
    [...]
    Cette activité ne sera pas rémunérée à ses débuts.


    Faire de la merde à l'oeil ? Bein voyons ...
    Utilisateur de logiciels libres != PIGEON, à bon entendeur ...
  • [^] # Re: re

    Posté par  . En réponse au message syslog. Évalué à 1.

    En fait, la valeur ajoutée des sociétés te vendant de la solution proprio va être, généralement, l'outil qui s'occupe des stats ou de la corrélation des évènements.

    Syslog-ng n'a pas pour vocation de faire ces deux taches. Syslog-ng ne fait que recevoir les logs, filtrer et stocker.

    Je pense que le déploiement idéal pour remplacer une solution proprio serait un syslog-ng qui stocke dans une base de données MySQL.

    Ensuite, soit tu recherches un outil te permettant d'exploiter cette base, soit tu tentes de le développer en fonction de tes besoins.
    En revanche, il me semble (mais je parle sans m'être renseigné pour le coup) que l'offre Open Source en matière de corrélation et de stats est plutôt pauvre...
  • # De l'importance de ne pas abuser...

    Posté par  . En réponse au message Comment ne pas filtrer une IP avec iptables.... Évalué à 2.

    Il s'agit des bases d'iptables, base que tu t'approprierai aisément par toi même après 30 minutes de lecture.

    En gros le problème ici est que ta règle de nat va "matcher" tout les paquets, qu'elle qu'en soit la source.
    Il faut que tu la modifies en lui disant "la source ne doit pas être égale à mon ip".
    Tu as maintenant la solution en bon français, je te laisse te sortir les doigts du c*l pr faire la conversion en iptables :p
  • # re

    Posté par  . En réponse au message syslog. Évalué à 2.


    [...]de les exploiter avec un client Syslog.


    C'est plutôt avec un serveur syslog que tu vas exploiter tes logs ...
    Après que veux tu dire par "je ne suis pas vraiment convaincu" ?
    Tu n'as pas réussi à faire communiquer ton boitier et ton syslog-ng ?

    Syslog-ng est actuellement la solution la plus aboutie pour gérer du flux syslog. Ce dernier te permet de lire du syslog d'à peu près n'importe où (socket unix, tcp, udp, ...) pour l'écrire ensuite à peu près n'importe où (mysql, fichier, arborescence chronologique, ...).

    Sois plus précis sur les fonctionnalités recherchées car à priori tout est dans syslog-ng ...
  • [^] # Re: La méthode la plus pratique à mes yeux

    Posté par  . En réponse au message Accès POP+SMTP vers Free derrière un firewall. Évalué à 1.

    Hmm je rajouterai que depuis ses versions 4, OpenSSH implémente un proxy SOCKS.
    Dixit la page de man:

    -D [bind_address:]port
    Specifies a local ``dynamic'' application-level port forwarding.
    This works by allocating a socket to listen to port on the local
    side, optionally bound to the specified bind_address. Whenever a
    connection is made to this port, the connection is forwarded over
    the secure channel, and the application protocol is then used to
    determine where to connect to from the remote machine. Currently
    the SOCKS4 and SOCKS5 protocols are supported, and ssh will act
    as a SOCKS server. Only root can forward privileged ports.
    Dynamic port forwardings can also be specified in the configura-
    tion file.


    Après, tu n'as qu'à utiliser la lib tsocks qui te permet, à coup de LD_PRELOAD de socks-ifier toutes les applis de ton choix.
  • # La méthode la plus pratique à mes yeux

    Posté par  . En réponse au message Accès POP+SMTP vers Free derrière un firewall. Évalué à 1.

    Tu utilises ton proxy du boulot pour monter un bon vieux tunnel SSH, genre à coup de ProxyCommand puis ensuite tu rediriges tout les ports que tu veux....
    Genre, avec ta connexion à la maison:


    iptables -t nat -A PREROUTING -s ip du boulot -p tcp --dport 443 -j REDIRECT --to 22


    Puis au boulot:

    cat >> .ssh/config << EOF
    Host <adresse de la maison>
    ProxyCommand corkscrew ip_proxy port_proxy ip_machine_publique port_machine_publique
    LocalForward 143 imap.free.fr:143
    LocalForward ...
    EOF


    Ici on utilise le tool corkscrew qui va se connecter à ton proxy web et utiliser la méthode HTTP CONNECT puis laisser ce canal nouvellement ouvert à ssh, seule méthode pour faire passer (proprement) du ssh dans un proxy.
    J'avais parlé de ça ici: http://psycho-hazard.net/~binarym/?what=techblog#Bypasser+un(...)
  • # facile :)

    Posté par  . En réponse au message Récupération en shell script de valeurs de lignes dans un fichier. Évalué à 1.

    La commande uniq est ton amie, il faut parfois l'agrémenter de sort ...


    [gcolangelo@gcolangelo-lnx]:~% cat test
    toto
    toto
    toto
    toto
    tata
    tata
    tata
    titi
    titi
    [gcolangelo@gcolangelo-lnx]:~% cat test | uniq
    toto
    tata
    titi
  • [^] # Re: des essais

    Posté par  . En réponse au message Démarrer un shell avec un programme dedans.. Évalué à 1.

    Ce qui est idiot, tout l'interet de xterm -e <command> résidant dans le fait de ne pas lancer un shell supplémentaire pour faire tourner <command>...
  • [^] # Re: Reverse proxy ?

    Posté par  . En réponse au message Port forwarding. Évalué à 1.

    Ce sera possible de faire d'avoir faire ce que tu veux de façon transparente pour l'http... mais pour FTP/SSH/... oublie (aucune notion de machine cible dans ce protocol contrairement au HTTP/1.1 et son header Host:)

    Seule solution, avoir un port particulier (2222, 2223, 2224, ...) pour tes différents vservers.

    Par ailleurs, méfie toi de mod_proxy qui forwarde les requêtes par défaut en HTTP/1.0. Si tu as plusieurs vhost sur un même vserver, par défaut à cause du HTTP/1.0, ce sera toujours le même vhost qui sera servit.
    La solution se trouve dans la directive de mod_proxy ProxyPreserveHost.