Août 25

Hébergement chez Free, changement des droits des fichiers

EDIT: Cette fonction ne fonctionne plus désormais

Juste un petit billet pour répondre définitivement à une question qui me revient sans cesse.

Le changement des droits sur les fichiers et/ou répertoires (chmod) étant désactivé sur les pages persos de Free, vous ne pourrez pas changer les droits de vos fichiers via votre client FTP.

La solution est de créer un petit script php avec votre éditeur préféré (Vi sous Linux ou le Bloc Notes sous Windows) contenant ces lignes :

<?php
chmod (« /dossier/fichier », 0666);
?>
Vous appellez ce script guiguiabloc.php (juste pour me faire plaisir) et vous l’uploadez en FTP sur votre site Free, a la racine.

Bien sur, remplacer « dossier » par le nom du dossier a changer et fichier par le nom du fichier a changer (tout cela a adapter à votre souhait, c’est pas un cours php/web non plus…)
Ouvrir un navigateur et appeler le script :
http://monsite.free.fr/guiguiabloc.php

En remplaçant bien évidemment « monsite » par le nom de ton site.

Et vous regardez si les droits de votre « fichier » sont bien en 666.

C’est tout 🙂

Classé dans geekerie | 2 Commentaires
Août 10

Rebooter sa Freebox à distance

Ahhh !!! Il a trouvé la solution !!! Trop fort ce Guiguiabloc !!! 😀

Oui mais non, ça reste une technique à la Guiguiabloc, hein 😉

 

Pour ceux qui l’ignorerais, la Freebox, la boiboite Adsl du fournisseur Free, n’est pas administrable en local (comprendre, pas d’interface web, SSH etc…).

Non, pour paramétrer sa Freebox, il faut se rendre sur le site de Free, dans son interface (<troll> après s’être identifié en http, pas en https bien sûr enfin </troll>), et une fois les configurations faites, il faut… rebooter la Freebox (comprendre la débrancher électriquement du secteur et la rebrancher, car non, il n’y a pas non plus d’interrupteur marche/arrêt…).

 

Pourquoi ce truc moisi digne d’un Windows 95 ou la moindre modification entraîne un redémarrage ??? Ca, faudrait demander a Rani

 

Quoi qu’il en soit, si vous n’êtes pas chez vous et que vous avez un port à ouvrir, et bien, c’est la cata… (« allo Mamie ? tu peux passer à la maison, débrancher le fil électrique derrière la boîte noire qui donne l’heure sur mon bureau s’il te plait ? » est une solution… moyennement intéressante).

 

Ce que je vous propose donc, c’est de pouvoir redémarrer la Freebox depuis n’importe où, et pour la faire encore plus Geek, en envoyant un simple email depuis votre téléphone portable 😀

 

Je sais, c’est complètement « a bloc »…

 

LA RECETTE

 

Pour un bon reboot de Freebox à distance, il vous faut :

  • Une Freebox (ah bon ????)

Freebox

  • Un onduleur Manageable (comprendre un onduleur d’homme, pas un truc à 10 euros de chez Lidl, bien évidemment, reconnu par NUT si possible…)

pulsar

pulsar-back

Bon là c’est mon nouvel onduleur, un MGE Pulsar ESV 22+ et son bloc secondaire un Pulsar EB 22 :

Puissance : 2,2 KVA (1540 Watts)

Autonomie : 1h30

Poids : 36 kg

Gracieusement donné par mon pote Antoine, le geek au garage magique 😀

 

  • Un téléphone portable permettant d’envoyer des emails

E65

 

  • Un serveur de mail à la maison (là je vous laisse consulter Google et surtout, Unix Garden pour des tutos )
  • Du temps, plein….

Administration de l’onduleur :

MGE contribue activement au support de ses Onduleurs sous Linux via le projet N.U.T (Network UPS Tools).

Un grand nombre d’onduleur sont reconnu et un tour sur google vous guidera pour le votre.

Concernant le Pulsar, sous Debian, il suffit de rajouter à votre source.list :

deb http://opensource.mgeops.com/stable/debian binary/

 

Puis un apt-get install mgeops-psp vous installera Nut et consort.

 

Tout les fichiers de configuration sont sous /etc/nut :

Exemple, le ups.conf :

[mgeups]
driver = mge-utalk
port = /dev/ttyS1
desc = "Salle serveur"

 

On communique via le port série avec l’onduleur grace aux commandes « upsc » et « upscmd ».

Je vous laisse consulter les sites qui vont bien, ce n’est pas un billet sur les onduleurs non plus 🙂

Exemple ICI ou LA

 

Sur le MGE, il existe une commande permettant de couper l’alimentation des équipements branchés dessus et de la réactiver :

 

upscmd -u user -p password nomonduleur load.on / load.off

upscmd -l nomonduleur vous donnera les commandes disponibles

On branche donc la Freebox sur l’onduleur et on test. Un load.off doit éteindre la freebox, un load.on la rallume 😀

 

Reste à écrire le script rebootfreebox.sh :

 

#!/bin/bash

upscmd -u admin -p password mgeups load.off
sleep 3
upscmd -u admin -p password mgeups load.on

 

Les users et mot de passe sont ceux défini dans /etc/nut/upsd.users.

 

Si vous lancer le script, vous devriez voir la freebox s’éteindre et se rallumer après 3 secondes 😀

 

Déjà, si vous avez un accès SSH sur le pc qui administre l’onduleur, vous pouvez rebooter à distance votre Freeboite.

 

Mais ce n’est pas assez Geek il faut l’avouer :-p

 

Configuration du serveur de mail :

 

Pour ceux qui l’ignorerais, on peut faire executer une commande à reception d’un mail (oui, oui, c’est très très pratique…).

 

Dans l’ordre :

 

– Créer un user sur le PC controlant l’onduleur,déposer le script de reboot dans son home directory (lui donner les droits de l’executer bien sur)

– générer une paire de clé SSH sans mot de passe pour ce user

ssh-keygen -t dsa -b 1024

– Sur le serveur de messagerie, copier la clé privée dans un endroit adéquat

NB : Je ne m’éternise pas sur la protection de ce user ni sur la façon de configurer une connexion SSH avec clés, à vous de paramétrer votre SSH pour que ce user ne puisse executer qu’une seule commande, votre script par exemple ou à restreindre son shell.

 

– Créer un alias sur le serveur de mail :

dans le /etc/aliases

rebootfbx: "|ssh -i private_key userreboot@srvnut sh rebootfreebox.sh"

#newaliases

 

Reste à tester en local si à la réception d’un email à destination de rebootfbx@votredomaine.com execute bien le script.

srvmail:~# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ESMTP
helo SAYMOI
250 srvmail.mondomaine.com
mail from:SAYMOI@devnull.org
250 2.1.0 Ok
rcpt to: rebootfbx@mondomaine.com
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
.
250 2.0.0 Ok: queued as 900FA192DB

 

Dans le /var/log/maillog, vous devriez voire l’execution du script et votre Freebox doit rebooter 😀

 

NB: il y a bien évidemment des petits ajustement à effectuer pour que ce script s’execute par votre serveur mail, mais si vous devez utilisez cette technique, je vous guiderais bien volontiers sur ce.. peaufinage (sudo est votre ami)

 

Et voila, comment rebooter sa Freebox a distance, technique made in Guiguiabloc, bien sur 😉

 

Trève de plaisanterie (quoique ce système marche très bien), j’avoue que fournir 2,2 Kva ondulé à une freebox relève un peu de la geekerie ultime 😀 mais après tout, c’est toujours un plaisir de s’amuser avec des équipements divers 😀

 

 

 

 

 

 

Classé dans geekerie | 19 Commentaires
Juil 31

Loi HADOPI, un arrière gôut de Leitmotiv…

Je m’exprime rarement sur ce genre de débat.

Il y a des personnes plus aptes et plus intelligentes que moi pour se battre contre l’idiotie et l’imbécilité.

Je vous invite fortement à lire les articles de mon ami Bluetouff, ici :

http://www.toonux.org/news/si-la-betise-etait-graduee-comme-la-riposte-il-faudrait-une-echelle-specifique-au-ministere-de-la-culture/

ou la :

http://bluetouff.com/2008/07/26/nouveau-site-de-la-sacd-sur-typo3-une-oeuvre-de-lesprit-open-source-quelle-ne-reconnait-pas/

 

Je vous laisse parcourir ses blogs, ses liens (toujours excellents), afin de mieux cerner le combat mené.

 

Mon avis, à moi rien qu’à moi, si je devais n’en donner qu’un, je ne le donnerais qu’à travers le texte suivant :

 

DECLARATION D’INDEPENDANCE DU CYBERESPACE

 

Gouvernements du monde industriel, géants fatigués de chair et d’acier, je viens du cyberespace, nouvelle demeure de l’esprit. Au nom de l’avenir, je vous demande, à vous qui êtes du passé, de nous laisser tranquilles. Vous n’êtes pas les bienvenus parmi nous. Vous n’avez aucun droit de souveraineté sur nos lieux de rencontre.

Nous n’avons pas de gouvernement élu et nous ne sommes pas près d’en avoir un, aussi je m’adresse à vous avec la seule autorité que donne la liberté elle-même lorsqu’elle s’exprime. Je déclare que l’espace social global que nous construisons est indépendant, par nature, de la tyrannie que vous cherchez à nous imposer. Vous n’avez pas le droit moral de nous donner des ordres et vous ne disposez d’aucun moyen de contrainte que nous ayons de vraies raisons de craindre.

Les gouvernements tirent leur pouvoir légitime du consentement des gouvernés. Vous ne nous l’avez pas demandé et nous ne vous l’avons pas donné. Vous n’avez pas été conviés. Vous ne nous connaissez pas et vous ignorez tout de notre monde. Le cyberespace n’est pas borné par vos frontières. Ne croyez pas que vous puissiez le construire, comme s’il s’agissait d’un projet de construction publique. Vous ne le pouvez pas. C’est un acte de la nature et il se développe grâce à nos actions collectives.

Vous n’avez pas pris part à notre grande conversation, qui ne cesse de croître, et vous n’avez pas créé la richesse de nos marchés. Vous ne connaissez ni notre culture, ni notre éthique, ni les codes non écrits qui font déjà de notre société un monde plus ordonné que celui que vous pourriez obtenir en imposant toutes vos règles.

Vous prétendez que des problèmes se posent parmi nous et qu’il est nécessaire que vous les régliez. Vous utilisez ce prétexte pour envahir notre territoire. Nombre de ces problèmes n’ont aucune existence. Lorsque de véritables conflits se produiront, lorsque des erreurs seront commises, nous les identifierons et nous les réglerons par nos propres moyens. Nous établissons notre propre contrat social. L’autorité y sera définie selon les conditions de notre monde et non du vôtre. Notre monde est différent.

Le cyberespace est constitué par des échanges, des relations, et par la pensée elle-même, déployée comme une vague qui s’élève dans le réseau de nos communications. Notre monde est à la fois partout et nulle part, mais il n’est pas là où vivent les corps.

Nous créons un monde où tous peuvent entrer, sans privilège ni préjugé dicté par la race, le pouvoir économique, la puissance militaire ou le lieu de naissance.

Nous créons un monde où chacun, où qu’il se trouve, peut exprimer ses idées, aussi singulières qu’elles puissent être, sans craindre d’être réduit au silence ou à une norme.

Vos notions juridiques de propriété, d’expression, d’identité, de mouvement et de contexte ne s’appliquent pas à nous. Elles se fondent sur la matière. Ici, il n’y a pas de matière.

Nos identités n’ont pas de corps; ainsi, contrairement à vous, nous ne pouvons obtenir l’ordre par la contrainte physique. Nous croyons que l’autorité naîtra parmi nous de l’éthique, de l’intérêt individuel éclairé et du bien public. Nos identités peuvent être réparties sur un grand nombre de vos juridictions. La seule loi que toutes les cultures qui nous constituent s’accordent à reconnaître de façon générale est la Règle d’Or. Nous espérons que nous serons capables d’élaborer nos solutions particulières sur cette base. Mais nous ne pouvons pas accepter les solutions que vous tentez de nous imposer.

Aux États-Unis, vous avez aujourd’hui créé une loi, la loi sur la réforme des télécommunications, qui viole votre propre Constitution et représente une insulte aux rêves de Jefferson, Washington, Mill, Madison, Tocqueville et Brandeis. Ces rêves doivent désormais renaître en nous.

Vous êtes terrifiés par vos propres enfants, parce qu’ils sont les habitants d’un monde où vous ne serez jamais que des étrangers. Parce que vous les craignez, vous confiez la responsabilité parentale, que vous êtes trop lâches pour prendre en charge vous-mêmes, à vos bureaucraties. Dans notre monde, tous les sentiments, toutes les expressions de l’humanité, des plus vils aux plus angéliques, font partie d’un ensemble homogène, la conversation globale informatique. Nous ne pouvons pas séparer l’air qui suffoque de l’air dans lequel battent les ailes.

En Chine, en Allemagne, en France, en Russie, à Singapour, en Italie et aux États-Unis, vous vous efforcez de repousser le virus de la liberté en érigeant des postes de garde aux frontières du cyberespace. Ils peuvent vous préserver de la contagion pendant quelque temps, mais ils n’auront aucune efficacité dans un monde qui sera bientôt couvert de médias informatiques.

Vos industries de l’information toujours plus obsolètes voudraient se perpétuer en proposant des lois, en Amérique et ailleurs, qui prétendent définir des droits de propriété sur la parole elle-même dans le monde entier. Ces lois voudraient faire des idées un produit industriel quelconque, sans plus de noblesse qu’un morceau de fonte. Dans notre monde, tout ce que l’esprit humain est capable de créer peut être reproduit et diffusé à l’infini sans que cela ne coûte rien. La transmission globale de la pensée n’a plus besoin de vos usines pour s’accomplir.

Ces mesures toujours plus hostiles et colonialistes nous mettent dans une situation identique à celle qu’ont connue autrefois les amis de la liberté et de l’autodétermination, qui ont eu à rejeter l’autorité de pouvoirs distants et mal informés. Nous devons déclarer nos subjectivités virtuelles étrangères à votre souveraineté, même si nous continuons à consentir à ce que vous ayez le pouvoir sur nos corps. Nous nous répandrons sur la planète, si bien que personne ne pourra arrêter nos pensées.

Nous allons créer une civilisation de l’esprit dans le cyberespace. Puisse-t-elle être plus humaine et plus juste que le monde que vos gouvernements ont créé.

John Perry Barlow, Cognitive Dissident Co-Founder, Electronic Frontier Foundation Home

Davos (Suisse), le 8 février 1996.

 

Ce texte, c’est la Déclaration d’Indépendance du Cyberespace, elle a été écrite il y a 12 ans…

 

Source

 

 

Classé dans Non classé | Taggé , | Commentaires fermés sur Loi HADOPI, un arrière gôut de Leitmotiv…
Juil 29

Sauvegarde et Versionning automatique des confs Cisco avec Rancid

Je discutais dernièrement avec Pascal_1, un fidèle lecteur du blog (merci 😀 ) , et utilisateur d’un Cisco Pix (donc quelqu’un de bien 🙂 ).

Donc ce petit billet lui est spécialement dédicacé mais je ne doute pas qu’ils servent à d’autres 😀 .

 

Précédemment, je vous avais expliqué comment mettre en oeuvre une authentification centralisée via Tacacs+ sur vos Ciscos.

Nous allons nous servir de cette fonctionnalité pour sauvegarder automatiquement nos configurations et bien entendu, mettre en place un versionning CVS nous permettant de comparer les modifications apportés et pouvoir faire un retour arrière en cas de soucis.

 

Je partirais d’un serveur sous Gnu/Linux Debian qui servira de centralisateur des confs.

Les paquets à installer :

#apt-get install apache2 

#apt-get install expect

#apt-get install cvs

#apt-get install cvsweb

 

Création d’un user « rancid » pour l’application :

 

 #useradd -d /opt/rancid rancid

(j’installe mes programmes compilés toujours sous /opt mais je vous laisse libre de votre choix 🙂 )

 

On récupère l’excellentissime logiciel RANCID :

ftp://ftp.shrubbery.net/pub/rancid/rancid-2.3.1.tar.gz

 

#tar xvfz rancid-2.3.1.tar.gz

Maintenant, nous pouvons compiler et installer Rancid :

#cd /usr/local/src/rancid-2.3.1#./configure --prefix=/opt/rancid 

#checkinstall

 

Ceci va installer Rancid dans le dossier /opt/rancid. Si vous n’avez pas la commande checkinstall sur votre système ou si vous désirez des informations sur cet outil, un article ICI.

 

Maintenant, nous pouvons débuter le paramétrage de Rancid. Nous allons configurer le fichier /opt/rancid/etc/rancid.conf pour créer des groupes d’équipements. Au moins un groupe doit être configuré.

L’ajout des lignes ci-dessous crée un groupe appelé « Mes_confs_a_moi » où tous les configurations des équipements sont stockées:

LIST_OF_GROUPS= »Mes_confs_a_moi »

Il peut être utile de créer plusieurs groupes si vous avez une grand nombre d’équipements et vous voulez les séparer par localisation géographique par exemple, pour améliorer la lisibilité.

LIST_OF_GROUPS= »Brest Toulon Trifouilly-les-oies »

Les noms de groupe doivent être séparés par un espace.

Il est nécessaire de configurer un fichier appelé “.cloginrc” contenant les mot de passe nécessaire à accéder aux composants réseaux.

Pour le créer, il faut renommer le fichier “cloginrc.sample” en “.cloginrc”.

#cp /opt/rancid/share/rancid/cloginrc.sample /opt/rancid/.cloginrc

Ensuite, nous éditons le nouveau fichier “.cloginrc” où on peut trouver des exemples de syntaxe basées sur le type d’équipement (Cisco, Juniper, etc…) et de connexion (telnet, ssh, …)

Dans notre exemple, nous allons utiliser ssh pour accéder à un switch Cisco ayant une adresse IP de 10.156.1.1 (et donc la connexion est controlé par notre serveur Tacacs+)

Ouvrez /opt/rancid/.cloginrc :

add user 10.156.1.1 lulu (l’utilisateur lulu, opérateur que j’avais crée dans mon tac_plus.conf)

add password 10.156.1.1 motdepasse_de_lulu motdepasse_mode_enable

 

Ajouter un # au début de chaque ligne à l’exception bien entendu des lignes qui paramètrent vos connexions.

Soyez EXTRÊMEMENT attentif avec les permissions du fichier .cloginrc parce que les mots de passe inclus dans ce fichier ne sont pas encryptés.

Donc le seul moyen de protéger ces mots de passe critiques est de restreindre les droits d’accès au fichier.

Pour le faire, changez les droits d’accès à 600, ce qui veut dire que le propriétaire du fichier a les permissions lecture et écriture tandis que les autres utilisateurs n’ont aucune permission du tout.

Puis, la propriété du dossier /opt/rancid ainsi que tous les fichiers et dossiers qu’il inclus est transféré à l’utilisateur rancid.

   #chmod 600 /opt/rancid/.cloginrc

   #chown -R rancid:rancid /opt/rancid

   #chmod 770 /opt/rancid

 

Création de l’architecture CVS :

Connectez-vous en temps que rancid:

   #su rancid

   rancid@linux#/opt/rancid/bin/rancid-cvs

Ajouter des équipements aux groupes:

   /opt/rancid/var/rancid/"group_name"/router.db
   La syntaxe est la suivante:
   "ip_address or FQDN":"device_type":"status"
   10.156.1.1:cisco:up

   nom_dns:cisco:up

Un script permet de vérifier les paramétrages de connexion qui sont présents dans le fichier .cloginrc:

rancid@linux:~/bin$ /opt/rancid/bin/clogin 10.156.1.1

10.156.1.1 spawn telnet 10.156.1.1 Trying 10.156.1.1… Connected to 10.156.1.1. Escape character is ‘^]’.

User Access Verification

Password: Router>enable Password: Router#

Démarrez rancid:

rancid@linux$/opt/rancid/bin/rancid-run

Vous pouvez vérifier les journaux (logs) dans le répertoire /opt/rancid/var/rancid/logs/ .

Nous devons maintenant installer la plate-forme pour voir les configurations avec un navigateur web.

CVSWEB

Nous devons ajouter une ligne dans le fichier /etc/cvsweb/cvsweb.conf avec l’utilisateur root pour créer le nouveau dépôt (repository) CVS.

Rechercher la ligne commençant par “@CVSrepositories” et ajouter la ligne en gras ci-dessous:

   @CVSrepositories = (

   #'local' => ['Local Repository', '/var/lib/cvs'],

      'rancid' => ['rancid', '/opt/rancid/var/CVS/'],

   #'freeebsd' => ['FreeBSD', '/var/ncvs'],

   #'openbsd' => ['OpenBSD', '/var/ncvs'],

   #'netbsd' => ['NetBSD', '/var/ncvs'],

   #'ruby' => ['Ruby', '/var/anoncvs/ruby'],

   );

Si le dossier contenant les icônes csvweb et les fichiers css sont pas dans le dossier /var/www, il est nécessaire d’ajouter un lien symbolique:

 ln -s /usr/share/cvsweb /var/www/cvsweb

Nous pouvons tester l’interface cvsweb avec un navigateur internet :

   http://127.0.0.1/cgi-bin/cvsweb

Optionnellement, vous pouvez configurer Rancid pour vous envoyer un mail quand une configuration a été changée après le lancement du script rancid-run.

L’outil Rancid est paramètré pour envoyer des courriels à deux destinataires par groupe.

   rancid-"nom_du_groupe"

   rancid-admin-"nom_du_groupe"

Le premier destinataire ci-dessus va recevoir un rapport après un changement de configuration, le deuxième est envoyé quand il y a des messsages d’erreur.

Pour rappel le ou les groupes sont configurés dans le fichier /opt/rancid/etc/rancid.conf.

Par exemple, si vous avez un groupe appelé Mes_confs_a_moi, les mails seront envoyés aux adresses rancid-Mes_confs_a_moi et rancid-admin-Mes_confs_a_moi.

La dernière chose à faire est de créer des aliases pour vos destinataires. Ouvrez le fichier /etc/aliases:

   rancid-mes_confs_a_moi
   votre_email@chezvous.com

   rancid-admin-mes_confs_a_moi
   votre_email@chezvous.com

Nous avons utilisés ici notre groupe exemple appelé Mes_confs_a_moi.

Pour terminer, initialiser la base de données d’alias:

   #newaliases

Nous avons besoin de créer un cron job pour lancer rancid-run régulièrement.

   crontab -e -u rancid
   # Veuillez, svp, lancer le script rancid-run tous les jours à 00:30

   30 00 * * * /opt/rancid/bin/rancid-run

La commande crontab va mettre à jour le fichier /var/spool/cron/crontabs/rancid.

La très utile commande “find” peut être ajoutée au crontab pour supprimer les anciens logs.

La commande suivante supprime les fichiers de plus de 30 jours dans le dossier /opt/rancid/var/logs/:

   # supprime les anciens logs tous les premiers jours de chaque mois à 00:15

   15 00 1 * * find /opt/rancid/var/logs -type f -mtime +30 -exec rm {} \;

Et voila, désormais vous retrouverez l’intégralité de vos configurations préférées avec un versionning vous permettant de réparer vos erreurs que heureusement, nous faisons tous :-p

SOURCE

Bon courage 🙂

 


 

Classé dans cisco | Taggé , , , | Commentaires fermés sur Sauvegarde et Versionning automatique des confs Cisco avec Rancid