[Apache2] Résoudre « Code d’erreur : ssl_error_rx_record_too_long »

En essayant de paramétrer un site en SSL sur Lucid, j’ai obtenu cette erreur de la part de Firefox ((à noter qu’Opera donne un autre type d’erreur, mais que je ne l’ai pas notée (erreur fatale 550, si ma mémoire est bonne) )). Erreur qui ne veut rien dire par elle même et une recherche sur le net ne vous donnera que peu de résultat au vu de la variété de réponses, parfois loufoques.

La première chose à faire est de vous assurer que le serveur réponde bien en HTTPS et non en HTTP, et de faire un GET:


telnet 82.XXX.XXX.XXX 443
Trying 82.XXX.XXX.XXX...
Connected to 82.XXX.XXX.XXX.
Escape character is '^]'.
GET /
<html>
<body>

<h1>It works !</h1>
<br />
</body>
</html>
Connection closed by foreign host.

Si vous obtenez du code html, comme c’est le cas ci dessus , au lieu d’une bouillie de caractères (ou de …rien), c’est que vous n’êtes pas en HTTPS mais en HTTP tout court.
Or, comme firefox s’attend à recevoir un certificat dont la longueur est faible, mais qu’il reçoit le code html complet d’une page, forcément il dit que c’est trop long.

Ce qui se trouve confirmé par la lecture du fichier /var/log/apache2/error.log:
[Sat Oct 09 14:40:18 2010] [error] [client 10.0.0.1] Invalid method in request \x16\x03
qui dit que la méthode d’accès n’est pas la bonne.

C’est pas très parlant, mais vu que j’ai galéré pour trouvé d’où venait le problème, j’essaye d’en faire profiter les autres.

Ah, au fait! Mon problème venait que dans la conf de mon virtualhost en SSL je mettais l’IP publique, vu que c’est le seul serveur en DMZ et que tout renvoie dessus. Je croyais le firewall transparent, vis à vis d’apache.
Je me trompais. Il faut mettre l’IP sur le réseau local, vu par la carte réseau elle même.
Après, ça va tout de suite mieux.

Mysql: Résoudre l’erreur « La connexion au « controluser » tel que défini dans votre configuration a échoué. »

Après une réorganisation de serveurs, et migration de mes bases Mysql vers une autre machine, j’ai pu voir dans la fenêtre de phpmyadmin l’erreur suivante:

« La connexion au « controluser » tel que défini dans votre configuration a échoué.« mysql

Comme je passe de la hardy vers la jaunty (LTS to LTS) pendant le déplacement, je me suis dit que quelques différences pouvaient exister et afficher ce message d’erreur qui ne m’empêchait pas de me connecter à phpmyadmin.

Puis je me suis souvenu que pendant l’installation de ce programme, il m’avait demandé plusieurs fois la configuration de MySql sans arriver à s’y connecter. Et dans le speed de la migration, j’ai oublié de vérifier que ça fonctionnait correctement, vu que j’arrivais à me connecter. Et que les principales opérations étaient effectuées en ligne de commande.

Après une recherche un peu plus poussée dans le code des fichiers de phpmyadmin, je me suis rendu compte qu’il cherchait à utiliser l’utilisateur phpmyadmin. Utilisateur visible dans les privilèges de l’ancien serveur, mais pas sur les privilèges du nouveau.

J’ai donc créé un nouvel utilisateur nommé « phpmyadmin » pour le serveur « localhost » ((très important: « localhost », pas autre chose)) avec le mot de passe permettant tous les privilèges, à savoir celui de root, et j’ai donné un droit d’usage simple, non Grant.

Il parait que lancer sudo dpkg-reconfigure phpmyadmin peut résoudre le problème, mais cela n’a pas fonctionné dans mon cas, au contraire de la création manuelle de l’utilisateur.

Classé dans la catégorie « ça a fonctionné pour moi ».

Supprimer la demande de confirmation à la sortie de gnome

Ubuntu 10.04 mais devrait être compatible toutes versions

Lorsque vous voulez fermer votre session, que ce soit pour changer d’utilisateur, éteindre ou redémarrer, vous avez une demande de confirmation.
Or, parfois, surtout pour des questions de rapidité, cette confirmation peut être gênante. Il m’est arrivé de partir en laissant le poste sur la confirmation alors que dans mon esprit ma session était fermée, puisque je demandais explicitement la fermeture. Mais j’étais parti avant de voir la demande de confirmation.

Sur mon portable, comme je ne veux pas attendre son redémarrage si j’ai demandé l’arrêt et que je me rends compte ensuite (c’est courant) que j’aurais dû regarder les mails ou un tarif avant de le fermer, je laisse cette confirmation qui me donne une seconde chance d’éviter un redémarrage inutile.
Par contre, sur mon poste de travail où je suis seul à avoir accès, cette confirmation est inutile. D’autant qu’il est allumé quasiment en 24/7.

Pour supprimer la demande de confirmation, il faut lancer l’éditeur de configuration de gnome en appuyant sur ALT+F2 et en entrant la commande gconf-editor.
Ensuite, rendez vous sur apps > indicator-session et cochez la case suppress_logout_restart_shutdown. Fermez ensuite la fenêtre de gconf-editor

Jusqu’à la Hardy, on pouvait régler ce fonctionnement dans les options obtenus avec un clic droit sur l’applet de déconnexion, mais je me rends compte que depuis la 10.04 (je n’ai pas utilisé les versions intermédiaires) cette possibilité n’existe plus.

Ajouter une signature sur Thunderbird 3

Il est facile d’ajouter une signature automatique à chaque fois que vous allez rédiger un mail avec Mozilla Thunderbird.

Attention, on ne parle pas ici de signature vous authentifiant, mais d’un « bas de page » affichant des informations. Ces informations étant éditables par vous même, vous pouvez mettre ce que vous voulez, y compris des informations fausses.

Les signatures en bas des mails sont principalement utilisées dans le milieu professionnel, pour rappeler les numéros de téléphone, de fax, ou l’adresse du site web, mais vous pouvez les utiliser pour mettre le lien de votre site, de l’association que vous promouvez ou le dicton du jour. Ce sont en général les informations contenues dans votre papier à entête.

Une fois que vous avez associé une signature à un compte de messagerie, tous les messages créés avec ce compte sur cet ordinateur auront la signature automatiquement en bas du mail. Mais vous pourrez toujours l’enlever manuellement sur le mail lorsque vous enverrez un mail privé ((votre adresse professionnelle sera toujours visible.)).

Enfin, vous pouvez avoir une signature différente par compte de messagerie (dans votre logiciel de messagerie): si vous écrivez avec votre compte professionnel, vous n’aurez pas la même signature que si vous écrivez avec votre compte privé.

Les conventions de signatures

  • On ne met pas n’importe quoi dans une signature. Il est d’usage de ne pas dépasser 3 ou 4 lignes de texte. On peut faire un peu plus ou un peu moins, mais sachez ne pas abuser. Si vous envoyez plus de signature que de message lui même, quel est l’intérêt?
  • Chaque ligne ne doit pas dépasser 70 caractères, au delà, il y aura des retours à la ligne modifiant sa mise en forme et augmentant les lignes de la signature chez votre correspondant.
  • Une signature doit être discrète. Elle sert à donner des informations au destinataire, s’il en a besoin. Elle ne doit pas sauter à la figure.
  • Une signature n’est pas un moyen publicitaire. Vous pouvez mettre le lien vers votre site, mais pas de grands slogans. Par exemple, on peut accepter un lien vers votre site pour la corrida (c’est votre choix et votre droit, même si on n’est pas d’accord) mais pas une phrase pour la promouvoir.
  • La signature doit facilement être différentiable du reste du texte, pour ne pas être confondue avec vos propos.
  • La signature se situe en toute fin de message. On ne rajoute jamais rien après la signature.
  • Une signature doit commencer par les caractères « tiret tiret espace saut-de-ligne », ce qui fait que les logiciels de messagerie savent la reconnaitre, changer sa couleur ou la supprimer en cas de réponse à l’expéditeur. Sinon, au bout de 15 échanges, vous avez 15 signatures dans le message, puisque chacun a rajouté la sienne à chaque envoi. La plupart des logiciels de messagerie évolués savent reconnaitre la signature et la différentier du reste du mail.

Les types de signature

Il existe 3 types de signatures:

  • Les signatures ne comportant que du texte, appelées signatures texte,
  • les signatures ne comportant qu’une image (par exemple un scan de votre carte de visite),
  • les signatures HTML pouvant afficher du texte, des images, des liens, des images cliquables, des animations, …

Chaque méthode a ses avantages et ses inconvénients:

  • Les signatures texte sont très légères, avec tous les avantages que cela comporte en terme de rapidité de transmission et de traitement. Par contre, ce n’est vraiment intéressant que si vous expédiez vos messages au format texte simple. Si vous envoyez des mails au format HTML, vous ne gagnerez pas grand chose (mais cela dépend surtout de ce que vous mettez dans la signature)
  • Les signatures images et HTML impliquent l’envoi d’un mail en HTML. Les mails HTML sont plus lourds, plus difficiles à traiter par les serveurs et les antispams ((Les spams sont principalement des mails HTML permettant d’insérer dans  le code du mail des éléments permettant de contourner les logiciels antispam. Vous ne verrez que le texte voulu par le spammeur. Du coup, tous les courriers HTML sont suspects.)) et souvent remplis de code inutile.

Les aberrations

Il y a des choses qui m’exaspèrent dans les signatures.

Par exemple, les messages du type « Ce message électronique et les éventuels fichiers joints, sont établis à l’intention exclusive de la personne à qui ils sont adressés; ces documents peuvent contenir des informations privilégiées et/ou confidentielles.
Toute publication, utilisation ou diffusion, même partielle, doit être autorisée préalablement par l’émetteur. Si vous recevez ce message par erreur, il vous est strictement interdit de le garder, de le distribuer, de le faire suivre ou de le copier. Merci d’en avertir immédiatement l’expéditeur par un message électronique en retour et supprimer la transmission originale.
@ L’internet ne permettant pas d’assurer l’intégrité de ce message, XXXXXXXXXXXX décline toute responsabilité au titre de ce message électronique, Dans l’hypothèse où il aurait été modifié ou falsifié.  »
suivi de sa traduction en Anglais, en Swahili ou en Arménien du 17e siècle me sortent par les yeux. Non seulement internet peut transporter des messages signés numériquement assurant qu’ils n’ont été ni interceptés ni modifiés, mais si j’ai reçu un courrier, qu’il soit mail ou papier, il fait alors partie de MA correspondance et j’en ai tous les droits dessus, y compris de le diffuser, de le publier et de l’utiliser. Je ne dis pas qu’il n’y aura pas des poursuites, mais si je l’ai reçu par erreur, je ne suis pas responsable de celle ci. Il est du devoir de l’expéditeur de s’assurer de l’adresse à laquelle il envoie les documents. Honnêtement, vous avez déjà vu ce genre de message sur un courrier papier ? Cette signature alourdit le mail, autant dans son poids que dans sa lecture, et n’a aucune valeur , à part cacher l’incompétence ((L’incompétence n’est pas une honte. Mais faire croire qu’on est compétent dans un domaine alors que ce n’est pas le cas, si. De plus, ça continue de diffuser de fausses rumeurs à propos d’internet.)) de l’expéditeur ou du groupe auquel il appartient.

Cependant, ce rappel de règles ou de lois est parfois obligatoire, notamment en cas de juridiction différente entre l’expéditeur et le destinataire, en particulier lors d’emails internationaux ((Mais avoir ce message en signature d’un expéditeur qui relie une chaine d’envoi, avec toutes les signatures de la chaine, juste pour envoyer un pps « humoristique » m’exaspère au plus haut point. D’autant qu’il laisse dans le mail l’ensemble des adresses de la chaine…)).

Les signatures messages pseudo-écolo-bonne-conscience-pour-suivre-la-mode disant « La forêt est en danger et la nature souffre de nos activités. 80% des mails imprimés partent à la corbeille 2 minutes après l’impression. Pensez à l’environnement et n’imprimez que si c’est nécessaire pour économiser les ressources naturelles« , outre qu’elles sont souvent suivies ou précédées de la traduction en 15 langues du message précédent, génèrent tout l’effet inverse de celui recherché. Si quelqu’un veut imprimer, c’est qu’il en ressentira le besoin. Ou tout du moins qu’il le croira. Ce n’est pas un message qu’il ne lira pas au bas d’un mail qui l’en empêchera. Plus grave, si tout le monde envoie des signatures de ce type, la consommation énergétique des serveurs faisant transiter les mails va augmenter de plus de 20%, tout comme les spams font monter la consommation des serveurs. A part suivre la mode de l' »écolonomie », mettre cette signature fait tout le contraire de ce qu’elle prône.

Enfin, ce qui m’exaspère le plus, ce sont les gens qui envoient des courriers avec des signatures publicitaires telles que « Ce mail a été scanné par l’antivirus gratuit XXXX qui certifie qu’aucun virus connus n’a été détecté sur l’ordinateur lors du dernier scan et que ce mail et les éventuelles pièces jointes sont sains et ne seront pas responsable d’une contamination de votre ordinateur » auxquelles j’aurais plusieurs objections:

  • Je n’ai rien contre les anti virus gratuits, mais s’il fait sa pub sur vos mails, il n’est pas gratuit. Vous accepteriez une publicité pour les préservatifs en bas de toutes vos cartes postales de vacances ? Pourtant, votre anti virus le fait.
  • Ce message ne donne aucune indication sur la date et la version de la dernière mise à jour, ou du dernier scan. Il dit simplement que la dernière fois qu’il a « fait son travail », il n’a détecté aucun virus. Il ne dit pas qu’il n’y en avait pas….
  • Il se protège disant qu’il ne sera pas responsable s’il y a un virus. Votre anti virus a des doutes sur son efficacité…?
  • Enfin, si vous envoyez du texte simple, ce message n’a pas lieu d’être, il n’y a jamais eu de virus dans un message de texte simple. Seulement dans les mails HTML ou les pièces jointes.

Ou signatures pour les messageries gratuites telles que hotmail ou la poste, qui proposent d’installer des images animées pour pourrir encore plus les mails et le réseau qui les transmets en alourdissant les mails… Croyez moi, les gens à qui vous écrivez n’apprécient pas ces messages et peuvent vous aider à faire ce qu’il faut pour ne plus envoyer de telles signatures. Demandez leur.

Ce qu’il ne faut surtout pas faire

Certains services vous proposent de faire transiter vos mails par leur serveur et ils vont automatiquement intégrer votre signature manuscrite à la fin de vos mails. Signature manuscrite que vous aurez précédemment scannée et envoyée au site… situé hors de l’union européenne… et hors d’attente des lois européennes. Signature qui leur permettra de signer à votre place n’importe quel courrier, ce qui sera facile, puisque vos mails transitent chez eux, sont analysés et leur donneront tous les éléments nécessaires. Pourquoi ne pas leur envoyer directement un scan recto/verso de votre carte bleue? ((Certains sites vous demandent même de « prouver » votre identité, votre majorité et votre signature en joignant en plus la copie de votre pièce d’identité et un justificatif de domicile..!))

Ne placez pas non plus vous même le scan de votre signature en bas de vos mails. Tout ce que vous envoyez, images comprises, peut être enregistré et utilisé par vos correspondant. Ils n’auraient alors qu’à placer l’image de votre signature sur un courrier pour se faire passer pour vous. Et comme ce serait votre vraie signature, il serait très difficile, voire impossible, de prouver que ce n’est pas vous qui avez signé le document.

Comment intégrer une signature avec Thunderbird 3

Il existe 2 façons de faire:

  • Soit vous créez un fichier texte avec les éléments de votre signature (texte, image ou HTML) et vous indiquez à Thunderbird de l’ajouter aux courriers,
  • soit vous indiquez directement les éléments de signature dans les paramétrages

L’avantage d’avoir un fichier séparé des paramétrage est que vous pouvez rapidement copier ce fichier sur un autre ordinateur pour retrouver la même signature. Mais les deux façons de faire donnent le même résultat sur les mails.

Accéder aux options de signature

  • Dans le logiciels de messagerie, ouvrez les paramètres des comptes (menu Édition > Paramètres des comptes sous Linux, menu Outils > Paramètres des comptes sous Windows)
  • Dans la colonne de gauche, cliquez sur le compte auquel vous voulez ajouter une signature. Le compte apparait en général sous la forme de votre adresse de messagerie.
  • Dans la partie droite, vous devrez remplir soit la partie entourée en vers, soit la partie entourée en orange.

Signature texte

Pour ajouter une signature texte, entrez simplement le texte que vous voulez dans la partie entourée en vert. Inutile d’ajouter les « tiret tiret espace saut-de-ligne », Thunderbird s’en chargera pour vous.

Si vous désirez avoir un fichier, enregistrez de la même manière votre texte dans un fichier, puis cochez la case « Apposer la signature à partir d’un fichier…. » et cliquez sur le bouton Parcourir pour aller sélectionner le fichier à l’emplacement où vous l’avez sauvegardé. Attention: si vous supprimez ou déplacez le fichier par la suite, Thunderbird ne le trouvant plus, la signature ne sera plus ajoutée à vos courriers. Enregistrez le fichier à un endroit d’où il ne bougera pas.

Signature image

Vous pouvez choisir d’ajouter une image à la place d’un texte. Par exemple, votre carte de visite. Vous devez dont avoir, en premier lieu, l’image sur votre ordinateur.

Cochez la case « Apposer la signature à partir d’un fichier…. » et parcourez votre ordinateur pour aller sélectionner l’image voulue. Attention: si vous supprimez ou déplacez l’image par la suite, Thunderbird ne la trouvant plus, la signature ne sera plus ajoutée à vos courriers. Enregistrez l’image à un endroit d’où elle ne bougera pas.


Attention au poids de l’image! Elle doit être la plus légère possible pour que votre courrier soit rapide à traiter et acheminer, et pour que les personnes qui lisent leurs mail sur leur mobile ne vous maudissent pas d’avoir épuisé leur forfait.

Signature HTML

La signature HTML vous permet de mixer des éléments texte et image, d’y ajouter des liens ou des images cliquables, de mettre en forme le texte.

Vous pouvez entrer votre code dans la partie en vert et cocher la case « Utiliser HTML » ou créer un fichier HTML contenant le code de votre signature.

Nous n’allons pas apprendre le langage HTML ici, mais je vais vous donner un exemple de code que vous pourrez utiliser et adapter.

<b>Marc Assin</b><br />
<i>SARL Bon Cochon</i> 7 allée des laies 44210 Porcnic – 02 xx xx xx xx<br />
<a href= »http://maps.google.fr/maps?hl=fr&tab=wl »>http://www.boncochon.fr</a>

Plus d’infos

Les diclaimers e-mails : http://www.arobase.org/entreprise/email_disclaimers.htm

L’art ASCII (utilisé dans des signatures) : http://www.trussel.com/f_char.htm et   http://www.chris.com/ascii/index.php?art=animals/dolphins


Afficher les icones des paquets debian

Les paquets de logiciels debian peuvent intégrer une icone du logiciel qu’ils installent. Tous n’ont pas cette icone, mais certains, et de plus en plus, l’intègrent. C’est joli, inutile,mais forcément indispensable.

Pour les afficher, il faut installer un logiciel deb-thumbnailer , soit en passant par le ppa

sudo add-apt-repository ppa:deb-thumbnailer-team/ppa
sudo apt-get update
sudo apt-get install deb-thumbnailer

soit en installant directement le paquet deb puis en vous déconnectant/reconnectant.

Ubuntu Lucid: résoudre l’erreur « service xxx start: exec:129: start: not found »

Sur certains système Ubuntu Lucid fraichement installés, j’ai remarqué une erreur étrange qui n’est pas systématique, alors que le disque d’installation est le même (pas une copie, mais véritablement le même) et que les ordinateurs sont parfois différents mais parfois identiques.

Je viens de reconstater l’erreur sur deux ordinateurs strictement identiques (seuls les numéros de série changent), installés l’un après l’autre avec le même disque d’installation.

Sur l’un des systèmes, pas de problème. Sur l’autre, des erreurs non flagrantes apparaissent:

A l’installation d’un programme lançant un service, il apparait une erreur de ce type:

...
Paramétrage de cups-pdf (2.5.0-12) ...
   * Reloading Common Unix Printing System: cupsd                        [fail]

Quand on relance manuellement le service, on a ceci:

#service ssh restart
exec: 129: restart: not found

C’est bien sûr la même chose avec stop, restart, …

Après beaucoup de recherches, j’avais trouvé que c’était un problème dû à udev. Je ne me souviens plus de la raison donnée à l’époque.

Comme le problème vient de m’arriver de nouveau, je vous donne la solution, au cas où vous vous trouveriez dans le même cas: il faut réinstaller udev et redémarrer l’ordinateur (facultatif, mais préférable pour que tous les services soient lancés dans l’ordre prévu)

sudo apt-get install --reinstall udev
sudo apt-get install --reinstall upstart

Je dis que ce n’est pas flagrant, parce que la première fois, j’ai livré l’ordinateur sans constater de dysfonctionnement à l’usage. Alors que j’avais testé le fonctionnement général, comme à chaque fois. C’est le fait de devoir relancer manuellement cups à chaque fois pour pouvoir imprimer qui a révélé le problème.

Aujourd’hui, je ne me fais plus avoir.

Ubuntu à la caisse des écoles de Perpignan

J’ai découvert dans le numéro de septembre du journal des écoles de la mairie de Perpignan un article citant 2 fois Ubuntu.

Même si on peut penser que la description des avantages d’Ubuntu est à côté de la plaque, que les logiciels libres ne sont ni cités, ni expliqués pour leurs avantages, que la photo illustrative représente des postes sous XP (avec Word!), que l’économie en coûts logiciels n’est pas citée ou qu’utiliser Ubuntu en ayant remplacé tous les postes antérieurs à 2007 est une aberration¹, il faut saluer l’initiative.

Ce que je fais ici.

Ce journal, distribué avec le journal de Perpignan, contient 8 pages format A3 et rassemble des informations pratiques. Mais surtout, il est gratuit, disponible dans toutes les administrations et même distribué dans les boites aux lettres de certains quartiers.

Ajoutons que Ubuntu est cité dans un article pleine page, lui même mis en avant en une du journal.

Comme je l’expliquais dans l’article sur l’hôtellerie/restauration, la présence de ces mots (Ubuntu, en l’occurrence) permet de préparer l’oreille et l’esprit des interlocuteurs à une approche différente de Windows et facilite le travail d’approche, au moins pour ma part.

Il sera temps, ensuite, de leur expliquer ce que sont Ubuntu, GNU/Linux, la FSF, les logiciels libres, les avantages/inconvénients…

Comme l’article n’étant pas encore en ligne sur le site de la mairie, en voici un scan (4.5Mo). Par contre, je n’ai pas encore de détails techniques sur l’installation (matériel, versions, logiciels, utilisation, …). Mais je ne manquerais pas de vous informer dès que j’en aurais.


¹- A l’attention des gens de la mairie de Perpignan qui ne manqueront pas de me lire: Ubuntu (et linux en général) étant moins gourmand en ressources que Windows, il permet de réutiliser de « vieux » postes sans besoin de les remplacer, fonctionne bien plus rapidement qu’un poste neuf avec Windows et ne nécessite pas d’investissement matériel. Contactez moi pour plus de détails.

Ubuntu ne sera plus soutenu sur SPARC et Itanium

processeur sparcLe comité technique de Canonical a voté, lors de sa réunion d’août, le choix de ne plus apporter de soutien aux versions  IA64 et Sparc du fait que ces deux plateformes ont été sans soutien dédié depuis un certain temps, et le manque de qualité de ces versions.  Les utilisateurs de ces plates-formes bénéficieront des mises à jour et correctifs de sécurité pour la version 10.04 jusqu’en avril 2013.

Du fait du peu d’utilisation de ces processeurs, ou de leur utilisation très spécifique, les développeurs se concentraient (ou migraient) vers les versions x86. Cette décision fait suite à une réflexion lancée sur le sujet par un développeur de Canonical, Scott James Remnant.

Donc, à partir d’Ubuntu 10.10, le caractère multi plateforme de la distribution sera moins universel. Cependant, Ubuntu continuera de ne pas être seulement présente uniquement  sur les processeurs x86, puisque les processeurs ARM, équipant entre autres les tablettes et les terminaux mobiles, intéresse les développeurs pour les applications mobiles et embarquées.

Rappelons que les processeurs ARM possèdent une faible consommation électrique, ce qui fait qu’on les trouve principalement dans les systèmes embarqués, mais le fondeur Marvell a annoncé la sortie de processeurs gravés en 40 nm destinés à des serveurs simples tels des serveurs web sur ARM. Or, à l’époque des économies imposées et du déficit énergétique de la terre, je pense que diviser la consommation électrique des datacenters par 5 risque d’en intéresser plus d’un, google le premier. Actuellement, seul le vieillissant windows CE fonctionne sur cette architecture, et un dirigeant de Microsoft a annoncé que Windows 7 ne gèrera pas les processeurs ARM. Une opportunité à saisir pour GNU/Linux, même si je reste persuadé qu’une réaction de Microsoft se fera sentir dès que ce marché ne sera plus un marché de niche.

Espérons que l’abandon d’une architecture profitera aux autres.

Installer Gimp 2.7.2 mono-fenêtré sur Ubuntu Lucid

Gimp est un outil fantastique que j’utilise quasiment tous les jours. Il est vrai qu’il nécessite un certain temps de prise en main pour arriver à le contrôler parfaitement, mais comme tous les logiciels, cela vient avec l’usage. Plus on l’utilise, mieux on le connait.

Cependant, pour les débutants ou pour les nouveaux utilisateurs de GNU/Linux, l’une des particularités les plus perturbantes est son mode multi-fenêtré qui fait que les outils se trouvent parfois cachés par l’image, surtout quand on cherche à mettre celle ci en plein écran.

Quand on possède 2 écran sur son ordinateur, avoir les outils sur l’un et l’image sur l’autre est incomparable d’ergonomie. Mais peut de gens sont dans cette configuration matérielle et avoir Gimp dans une seule fenêtre est une demande récurrente de presque tous mes utilisateurs qui font l’effort d’essayer de s’y mettre. C’est le fameux Single-window Mode.

Je ne parle pas ici des personnes qui savent utiliser d’autres logiciels comme Photoshop ou Paint Shop Pro (par exemple) et qui ont du mal à quitter leurs habitudes ¹, mais bien de ceux qui s’intéressent pour la première fois à la retouche photo avec un logiciel gratuit.

Jusqu’à présent, je me rabattais sur d’autres logiciels plus simples pour ceux dont les besoins étaient limités (MyPaint, Picasa, Krita, …) mais immanquablement, un jour, ils demandaient LA fonction supplémentaire non incluse dans le logiciel qui les obligeait à en utiliser un autre pour faire ce qui leur semblait à présent une évidence ².

Heureusement, grâce à la pression des utilisateurs, l’équipe de développement de Gimp, qui a longtemps refusé cette fonctionnalité, a intégré dans les plus récentes versions la possibilité d’afficher Gimp dans une seule fenêtre et vous trouverez sur le dépôt ppa de matthaeus123 les paquet pour installer une version svn récente autorisant cet affichage tant demandé. Notez que cette fonction n’est disponible que sur la version de développement (2.7) et est considérée comme non finalisée, mais je peux vous affirmer que c’est fonctionnel pour tous les tests et toutes les installations que j’ai effectués.

Attention: comme toujours, l’ajout d’un dépôt autre que les dépôts officiels d’ubuntu présente un risque de sécurité pour votre ordinateur et vous effectuez cette manipulation à vos risques et périls sans que ma responsabilité ne puisse être mise en cause.

Au lieu d’utiliser ce dépôt, vous pouvez aussi télécharger les sources du programme et le compiler pour obtenir le même résultat.

Installation de Gimp 2.7.2

dans un terminal, entrez les commandes suivantes:

sudo add-apt-repository ppa:matthaeus123/mrw-gimp-svn
sudo apt-get update; sudo apt-get install gimp

Ensuite, il vous faudra lancer Gimp et vous rendre dans le menu Fenêtres et cocher la case Single-window Mode pour obtenir Gimp en mono-fenêtre.

Il est possible que vous ayez à installer un paquet supplémentaire (libgegl-0.0-0) si vous n’arrivez pas à relancer Gimp après l’installation de cette version.

gimp_mono_fenetre

Notez les onglets en haut des images, pour passer de l’une à l’autre.

Quelques petits soucis à signaler quand même:

  • à l’ouverture/fermeture d’images, la fenêtre de Gimp, quand on l’a maximisée, revient sur sa taille fenêtrée précédente. C’est un peu agaçant de toujours devoir la maximiser à chaque manipulation. L’astuce consiste à étirer la fenêtre pour occuper la taille de l’écran. Ainsi, les changements de taille seront invisibles.
  • Certains textes/label ont changé de nom. C’est rien, et sans doute destiné à plus de clarté dans l’utilisation du logiciel, mais certains tutos seront difficiles à suivre (par exemple, passage de Découper la sélection à Rogner la sélection).
  • L’enregistrement se fait par défaut au format de Gimp, soit xcf. Pour enregistrer dans un autre format, il faut exporter l’image. Mais c’est juste une habitude à prendre.
  • Pour être bien à l’aise, il vous faudra un grand écran. Ne pensez pas utiliser ceci sur un netbook³ , vous passeriez votre temps à cacher/afficher les barres d’outil pour voir l’image autrement que par une lucarne de la taille d’un timbre poste.
  • L’ajout de texte sur une image n’ouvre plus de fenêtre supplémentaire, vous éditez directement le texte sur l’image (c’est bien!), mais c’est pas encore complètement au point.

Conclusion

Cette version apporte des changements de fonctionnement qui vont, à mon avis, dans le bon sens pour permettre à tous les types d’utilisateurs de travailler efficacement. Il reste, c’est vrai, du travail à accomplir pour attendre les challengers du marché, mais le but de Gimp n’est pas de faire concurrence à d’autres, mais bien d’offrir un logiciel fonctionnel gratuit à ceux qui en ont besoin.

La prochaine version stable est prévue pour décembre 2010 (Gimp 2.8.0, les versions impaires étant des versions de développement) mais vous pouvez déjà tester certaines nouveautés et vous faire la main en attendant celle ci, n’ayant constaté aucun problème majeur/bloquant pendant mes essais.

Notes

  1. Quand on a payé un logiciel plus de 1000 euros, on essaye de le rentabiliser en l’utilisant, quelle que soit la difficulté d’utilisation de celui ci…
  2. Au fur et à mesure de l’utilisation, et donc de l’apprentissage, les envies et les besoins augmentent, et les difficultés du début s’oublient.
  3. De toute façon, qui à part moi chercherait à utiliser Gimp sur un netbook de 9″?

Prendre une capture d’écran sous gnome (simple et avancée)

Savoir prendre une capture d’écran apporte des avantages immédiats¹: copie d’un message d’erreur pour qu’un expert puisse l’expliquer, garder une preuve d’un paiement sur un site, ou d’un commentaire sur un forum, copie d’une image ou d’un schéma quand le clic droit est désactivé par le site, ….

L’usage ne dépend que de votre imagination.

La touche magique

De base, pour prendre une capture d’écran, il suffit d’appuyer sur le bouton imp écr (ou « print screen« , selon les claviers). C’est une touche qui se situe en général vers le haut et la droite de votre clavier, mais sur certains portables exotiques, je l’ai déjà trouvée à gauche.  Cherchez autour des touches « Insert« , « Suppr« , « Orig« , … Celles que vous n’utilisez que rarement. Parfois, sur les portables, il faut appuyer en même temps sur la touche de fonction « Fn » pour utiliser la fonction de capture d’écran notée dans une autre couleur sur la touche.

Clavier de portable

Capture simple

Lorsque vous avez appuyé sur la touche, immédiatement, une capture d’écran est effectuée (l’ensemble de ce qui est visible à l’écran) et il vous est proposé de l’enregistrer sur votre ordinateur.

Capture_ecran_standard

A la différence de windows, il n’est pas nécessaire d’ouvrir ensuite un document pour coller l’image² qui est mémorisée dans le presse papier sans message de la part de Windows. C’est la raison qui fait que la majorité des utilisateurs pense que cette touche ne fonctionne pas et ne sert à rien, et qu’on en arrive à vendre des logiciels de capture d’écran

Simple, mais puissante

Il existe une option « cachée », un raccourci en fait, qui vous permet d’aller plus loin:

  • Si vous appuyez sur ALT en même temps que la touche d’impression d’écran, vous ne capturerez que la fenêtre active à l’écran.

Utilisation avancée

Le logiciel de capture d’écran de gnome possède des options avancées permettant plus de liberté. Vous y accédez par le menu Applications > Accessoires > Capture d’écran.

Vous pouvez alors choisir parmi plusieurs options:

  • Capturer l’ensemble du bureau (ce qui est identique au mode simple)
  • Ne capturer que la fenêtre active (ce qui vous évite d’éditer l’image du bureau complet pour découper la fenêtre qui vous intéresse)
  • Sélectionner une zone à capturer. Le pointeur se transforme en croix, et vous devez cliquer/glisser pour sélectionner votre zone. N’ayez pas peur de cliquer sur un bouton: tant que le pointeur représente une croix, les applications ne sont pas actives. Attention quand même aux clics parkinsoniens.

Vous pouvez choisir, pour certaines options, un décalage entre le moment où vous cliquez sur le bouton Prendre une capture d’écran et le moment où la photo sera prise, ce qui permet de capturer les menus, menus contextuels et fenêtres modales, ou d’activer une action afin qu’elle soit présente sur l’image finale.

Capture_d'écran_avancée

Par rapport à la méthode simple, cela vous oblige juste à un clic supplémentaire pour prendre votre capture d’écran. Mais il faut aller dans les menus pour avoir la fenêtre avec les options…

Accès direct aux options de capture

Rassurez vous (même si vous n’étiez pas inquiets), il est possible d’avoir ce comportement avec la touche impr écr en allant simplement modifier un réglage dans la configuration de gnome.

Ouvrez gconf-editor (ALT+F2 puis gconf-editor) et rendez vous à /apps/metacity/keybinding_commands/command_screenshot. Double cliquez sur la ligne affichant gnome-screenshot et ajoutez en fin l’option « -i » pour avoir gnome-screenshot -i, ce qui demande au logiciel de capture de s’ouvrir en mode interactif. Validez et fermez. Vous pouvez maintenant tester en utilisant la touche d’impression d’écran.

Modification de la clef dans la configuration de gnome pour faire apparaitre les options lors de l'appuis sur la touche impr écr (print screen)

Bien sûr, pour revenir au comportement par défaut, il suffit d’effectuer les mêmes opérations et de supprimer l’option « -i ».

Mais aussi:

Il est possible d’effectuer des captures d’écran en ligne de commande, vous trouverez plein de choses sur le net, en particulier sur Wikipedia, mais ce n’est pas le cadre de cet article. Cependant, le man de gnome-screenshot vous donnera des indications sur les options que vous pouvez ajouter à la commande dans gconf-editor³.

  1. Ce qui n’est pas le cas de tout le monde, et cet article m’évitera de me répéter.
  2. Vous n’imaginez pas le nombre de document word ne contenant qu’une image que je peux recevoir par courrier…
  3. Vous pouvez ajouter des effets, en particulier une ombre autour de votre capture.

Se connecter automatiquement à FreeWifi

C’est une astuce trouvée sur webynux (comme quoi c’est intéressant de suivre ses pings) qui permet de s’identifier automatiquement sur le réseau FreeWifi sans avoir à entrer à chaque fois ses codes.

Voici le script à créer dans /etc/NetworkManager/dispatcher.d/freewifi.sh:

#!/bin/sh
 
[ ! -f /sbin/iwconfig -o ! -x /sbin/iwconfig ] && exit 0
[ `/sbin/iwconfig 2>&1|grep -i freewifi|wc -l` -eq 0 ] && logger "Ce n'est pas FreeWifi ..." && exit 0
 
. /etc/freewifi.conf
 
wget -O - --post-data="login=$LOGIN&password=$PASSWORD" "https://wifi.free.fr/Auth" 2>/dev/null|grep "CONNEXION AU SERVICE REUSSIE" 1>/dev/null 2>&1 && logger "Connection FreeWifi OK" && exit 0
logger "Erreur de connection FreeWifi"
exit 0

Rendez ce script exécutable avec la commande:

chmod +x /etc/NetworkManager/dispatcher.d/freewifi.sh

Créez ensuite un fichier /etc/freewifi.conf contenant:

LOGIN=xxxx
PASSWORD=yyyy

C’est tellement pratique!

Dès que j’aurais le temps, j’en ferais un deb pour pouvoir l’installer facilement.

Au passage, ça m’a permis de découvrir la commande logger

Réduire la taille d’un PDF sur Linux

Il y a quelques temps, j’avais écrit un article pour alléger un document PDF. Il faut reconnaitre qu’Openoffice.org crée des PDF avec de l’embonpoint.

J’ai découvert récemment que Ghostscript possédait une option permettant de spécifier comment allait être utilisé le document, que ça aidait fortement à réduire la taille finale, et qu’il était prévu pour les documents PDF.

Il y a trois possibilités principales:

  • Votre document doit être utilisé sur un écran
  • Votre document doit être imprimé sur une imprimante de bureau
  • Votre document sera imprimé sur une imprimante professionnelle (tirage chez un imprimeur)

Un moniteur informatique possède une résolution typique d’une centaine de DPI (pixels par pouces). Ce qui signifie que sur un pouce d’écran il y a une centaine de pixels. Traditionnellement, la résolution utilisée pour des images destinées à l’écran est de 72 DPI. Or, si votre image est à 300 DPI, c’est complètement inutile ! Pour un pouce, vous aurez donc 228 pixels en trop qui prendront de la place dans votre document.

Pour une impression de bonne qualité, une image entre 150 et 200 DPI est suffisante. Si votre image fait 300 DPI, elle est inutilement trop grande.

Si vous avez installé ghostscript, une seule ligne de commande pourra vous rendre bien des services, en particulier si vous devez envoyer vos documents par mail:


gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dPDFSETTINGS=/printer -sOUTPUTFILE=PDFdeSortie.pdf -f PDFaAlleger.pdf

Remplacez bien sûr, PDFdeSortie et PDFaAlleger par le nom voulu et le nom de votre document.

l’option -dPDFSETTINGS peut prendre les valeurs suivantes:

  • /screen pour un document destiné à l’écran
  • /ebook pour une qualité entre screen et printer (suite aux commentaires de l’article)
  • /printer pour un document destiné à l’impression
  • /prepress pour un document destiné à l’impression professionnelle

Pour info, j’ai utilisé l’option /screen pour un PDF de 40Mo et j’ai obtenu (après une bonne minute de traitement) un PDF de 5.1 Mo.

Le document obtenu s’ouvre bien plus rapidement et la qualité des pages, si elle a légèrement souffert, reste largement suffisante pour lire le texte et les images.

Avec l’option /printer, la taille du document obtenu est de 13.5 Mo sans perte de qualité visible à l’œil par rapport au document d’origine. Mais le document est quand même plus rapide à l’ouverture.

Ubuntu Lucid:Editer le chemin de Nautilus

Sur les anciennes versions de gnome, il était possible d’afficher et de modifier le chemin autrement qu’avec des boutons, et basculer d’un mode à l’autre en cliquant sur le bouton représentant un crayon et une feuille.

Sur Lucid, cette possibilité a été supprimée. En fait, seul le bouton a disparu, mais il est toujours possible de passer d’un mode à l’autre en utilisant les racourcis CTRL + L pour afficher le chemin textuel, et ESC (avec la barre d’adresse active) pour revenir aux boutons.

Fin de l’article technique.

Réflexions personnelles:

On va encore me targuer de nostalgie, mais je trouve que la possibilité de passer simplement d’un mode à l’autre était important:

  • Pour les geeks, pas la peine de faire un dessin
  • Pour les autres, ça permettait une première approche de l’arborescence et du classement des dossiers autrement que renfermé dans le mode « dossier à cliquer ». L’argument de dire que c’est compliqué, que ça n’apporte rien ou que ça perturbe les gens ne tient pas: tous les explorateurs des XP que je connais ont cette barre et personne n’a suivi de thérapie à cause de celle ci. Les gens utilisent, ou pas, mais ça ne les gène pas.

Est ce une évolution progressive vers un mode de travail différent ? Peut être, l’avenir nous le dira.
Toujours est il que je constate que les systèmes d’exploitation (quels qu’ils soient), sous prétexte d’offrir une expérience utilisateur étendue (mauvaise traduction de enhanced user experience), cachent de plus en plus le fonctionnement du système à l’utilisateur, y compris l’emplacement de ses propres fichiers. Comment, dans ce cas, peut il construire sa représentation mentale de son environnement numérique? Et s’y retrouver ? A moins que…

A moins que les documents utilisateurs ne soient plus stockés dans l’ordinateur, mais dans les nuages. Si j’en conçois bien les avantages indéniables pour tous, j’ai aussi conscience des inconvénients!

A l’heure où l’accès à l’internet n’est toujours pas un droit inaliénable, où la popularité se compte en pages Facebook, tweeter et autres contacts MSN, ne plus avoir le contrôle de ses données c’est aussi ne plus exister en tant qu’individu IRL si HADOPI and co vous a dans le viseur.

Mais n’est ce pas (un peu) le but recherché?

Mode paranoïa: off. Merci d’avoir suivi. Tout ça pour une pauvre barre d’adresse…

Edit du 03/06/2010: sur le forum Ubuntu, une astuce a été donnée pour retrouver un bouton permettant de basculer d’un mode à l’autre en utilisant « nautilus-actions ». Cela fonctionne bien, sauf que le bouton n’est plus à son emplacement habituel, ce qui n’est pas très grave.

Perte du réglage de volume sur Ubuntu Lucid

Attention: Lucid est encore en beta au jour d’écriture de cet article, et les choses évolueront certainement dans les prochains jours.
Si vous avez installé la version d’Ubuntu Lucid Lynx, lors d’une mise à jour vous avez peut être pu vous trouver, comme moi, sans applet de volume dans la zone de notification, alors que le son fonctionne (par exemple à l’ouverture).
Pour la retrouver, il vous suffit de taper la commande suivante, puis de vous délogguer pour pouvoir de nouveau accéder au réglage de volume :

sudo apt-get install --reinstall gnome-applets gnome-applets-data indicator-sound indicator-applet

Remettre les boutons de fenêtre de Lucid à droite

Je teste de plus en plus Ubuntu Lucid, puisque mes programmes devront tourner le plus tôt possible sur cette version dans un peu plus d’un mois. C’est encore une version instable, donc il est déconseillé de l’utiliser en production avant sa sortie officielle

Avec le nouveau thème, Ubuntu Lucid apporte une modification qui n’est pas anodine: les boutons de fenêtre (maximiser, minimiser et fermer) sont placés à gauche de la barre de titre au lieu d’être à droite.

C’est sans doute très « staaaïle« , mais c’est surtout une remise en cause de nombreuses années d’habitudes qui va fortement perturber les utilisateurs, moi y compris.

Autant le nouveau thème mauve ne me dérange pas trop (bien que je trouve qu’il fasse très féminin, mais c’est peut être une chance d’attirer les femmes vers le libre), autant cette modification d’emplacement de boutons me fait faire des kilomètres avec la souris et me provoque une frustration à chaque manipulation de fenêtre. Sans compter que mes clients vont me hair si je leur change leurs habitudes.

De plus, plusieurs thèmes deviennent affreux parce qu’ils n’ont pas été conçus avec la possibilité de mettre les boutons à gauche.

(Le thème de l’image n’est pas le mauve dont je vous parlais ci dessus)

Heureusement, il est assez simple de revenir à l’ancien emplacement des boutons (quand on connait la méthode).

Lancer gconf-editor par Alt+F2 et rendez vous à /apps/metacity/general/button_layout. Remplacez « maximize,minimize,close: » par « :minimize,maximize,close » (ne déplacez pas seulement les deux points de la fin au début de la chaine, notez que les boutons ne sont pas dans l’ordre habituel). La modification est immédiate dès que vous validez.

Il est possible que les choses changent encore avant la sortie officielle, mais dans le cas contraire, vous saurez au moins comment remettre les boutons à l’endroit où vous allez machinalement les chercher.

Migrer de Thunderbird2 vers Thunderbird3 sur Jaunty

Après l’installation, j’ai eu quelques problèmes: aucun de mes comptes de messageries n’étaient visibles (pas plus que les mails), et Thunderbird me proposait de créer un nouveau compte.

Toutes les manipulations se font à partir du home de l’utilisateur.

Installer Mozilla Thunderbird 3 sur Ubuntu

Téléchargez TB3 et décompactez l’archive. Déplacez ensuite celle ci sur /opt

sudo mv Bureau/thunderbird /opt/

Modifiez ensuite le lanceur afin qu’il lance thunderbird 3 au lieu de la version 2

sudo gedit /usr/share/applications/thunderbird.desktop

Modifiez la ligne Exec=thunderbird %u en Exec=/opt/thunderbird/thunderbird %u

Enregistrez et fermez le fichier.

Retrouver ses mails

Le problème des mails vient que TB3 utilise le dossier ~/.thunderbird alors que la version 2 sur Jaunty (et sans doute sur les autres versions)  utilise ~/.mozilla-thunderbird. Donc, TB3 ne retrouve pas les éléments auxquels on s’attend.

Il faut alors soit copier le contenu de .mozilla-thunderbird dans .thunderbird, soit créer un lien d’un dossier vers l’autre.

La première chose à faire est de sauvegarder le dossier pour permettre un retour en arrière en cas de problème. Effectuez une copie de .mozilla-thunderbird avant toute modification.

Je crée un lien nommé .thunderbird pointant sur .mozilla-thunderbird. Si vous avez déjà lancé TB3, supprimez le dossier .thunderbird automatiquement créé

ln -s .mozilla-thunderbird/ .thunderbird

Il ne reste plus qu’à lancer Thunderbird en cliquant sur l’icone habituelle.

Ne vous étonnez pas. Si vous avez beaucoup de messages ou de comptes de messageries, TB3 va tous les indexer, et ça peut prendre du temps…

Superviser vos serveurs avec FTPupinfo

Il est toujours pratique d’avoir un oeuil sur les ordinateurs dont on a la charge. Ne serait-ce que pour prévenir avant de guérir. Quand je dis serveurs, c’est tout type de machine linux.

Or, s’il faut se connecter à chacun pour avoir des infos, cela devient vite pénible.

Il existe une pléthore de logiciels dédiés à cet usage. Des simples, comme phpsysinfo, et des poids lourds comme Nagios, zabbix, …

Les logiciels simples peuvent correspondre à un besoin ponctuel, mais manquent souvent des éléments dont on aurait besoin spécifiquement. Les poids lourds du genre sont cauchemardesques à configurer, et c’est souvent sortir le bazooka pour tuer une mouche… Sans compter les failles de sécurités régulières.

J’ai développé un logiciel nommé FTPupinfo destiné, à la base, à mon usage personnel, pour superviser mes serveurs. Puis il a évolué avec le temps pour devenir une application à part entière, située entre les deux catégories dont on a parlé.

Voici un rapide aperçu:

Capture 1

Avantages:

  • Facile à installer (paquet dans les dépôts absolacom)
  • C’est le client qui uploade vers le serveur, pas le serveur qui interroge le client (pas d’ouverture de ports, pas de faille). Pas besoin de se connecter à la machine à surveiller (pas d’ouverture de ports, pas de faille).
  • Paramétrable avec un simple fichier de configuration texte
  • Upload sur le serveur en mode FTP ou rsync (si upload activé, non obligatoire)
  • Copie en local possible des rapports générés
  • Rapide et léger
  • Possibilité d’activer/désactiver chacune des fonctions
  • Personnalisable par skins (que vous pouvez créer/ajouter)
  • Ajout de modules possibles (par exemple pour prendre en charge SNMP)
  • Pensé pour être sécuritaire
  • Possibilité d’exécuter des programmes avant, pendant, après le fonctionnement du logiciel (alertes par mail, nettoyages, …)
  • Possibilité de garder le dernier rapport, un par jour, tous…
  • Le dernier rapport est accessible même si le serveur ne l’est pas
  • Fonctionne sur Debian (et dérivées), Mandriva, Suse (depuis les sources)

Inconvénients:

  • Ne fonctionne pas encore pour Windows (et ce n’est pas une priorité). Fonctionne au strict minimum avec Cygwin avec une version modifiée du programme (contactez moi si vous êtes intéressé).
  • Visualisation en mode décalé. Pas de consultation en direct (le programme est lancé avec une granularité d’une minute).
  • Sans doute Certainement améliorable au niveau du code
  • Disponible uniquement en deb ou en source (si vous voulez packager pour votre distrib, soit vous vous en chargez, soit vous me dites comment faire)
  • Les skins sont moches (si,si. Je sais. Je ne suis pas graphiste, je le reconnais), mais c’est du full CSS (sauf scories) facilement modifiable.¹
  • En anglais pour l’instant (même si c’est peu gênant, le vocabulaire informatique utilisé étant souvent anglais). L’adaptation pour permettre la localisation est en projet.
  • …heu…
Page de statistiques

Page de statistiques

Toutes les infos se trouvent sur le site du projet et vous pouvez voir des exemples sur le site de démo.

Dernière précision, c’est entièrement du GPL gratuit pour la partie cliente (le programme qui tourne sur les ordinateurs). Seule la partie serveur de supervision (optionnelle) est payante.

Il est actuellement utilisé professionnellement par ma société pour superviser les clients, quelques sociétés partenaires et les écoles du département des Pyrénées Orientales équipées de serveurs Eclair (dont j’ai été le développeur initial pour le pôle de compétences de Perpignan) ou Zeli.

Les suggestions, remarques, rapports de bugs sont les bienvenus.

1. message subliminal très subtil 😉 : si vous savez fairedes skins potables, envoyez les moi et je les intègrerais au programme avec vos crédits.

Recevoir les logs par mail

Il peut être intéressant de recevoir les logs de vos ordinateurs par mail pour plusieurs raisons:

  • pour penser à les regarder,
  • pour recevoir les logs de vos serveurs,
  • pour garder un historique des logs et pouvoir remonter dans le temps,
  • générer des statistiques à partir des logs sans se connecter aux serveurs (ce qui est utilisé par exemple pour générer la liste des identifiants déconseillés)

Pour cela, je vous propose d’installer un utilitaire en python développé par mes soins.

ATTENTION: ce programme fonctionne pour Hardy et Jaunty. Il n’a pas été développé ou testé sur Karmic mais sera disponible pour toutes les version X.04 d’Ubuntu.

ATTENTION2: ce programme ne peut fonctionner simplement avec Orange. Pour ce FAI, il faut installer postfix et le paramétrer avec l’authentification sasl. Cela fera l’objet d’un prochain article. Pas de problème chez Free, Alice et SFR.

Zeli-sendlog

zeli-sendlog est un programme python qui va créer une archive des logs de l’ordinateur sur lequel il est installé et va automatiquement l’envoyer par mail aux adresses paramétrées.

Une fois installé, ce programme ne nécessite aucun réglage.

Installation

Il vous faut tout d’abord ajouter les miroirs Absolacom à votre fichier de sources tel qu’indiqué sur cette page. Rechargez la liste des paquets et installez le paquet zeli-sendlog et ses dépendances.

Paramétrage

Pour envoyer un mail, il vous faut trois choses:

  1. un serveur SMTP,
  2. une ou plusieurs adresses de destination,
  3. un nom pleinement qualifié afin que vos mails soient acceptés sans être considérés comme du spam.

Serveur SMTP

Il se règle dans le fichier /etc/smtp_server. Vous indiquez simplement le nom ou l’adresse de votre serveur SMTP. Par exemple, pour free, indiquez simplement smtp.free.fr.

Adresses de destination

Les adresses où seront envoyés les mails s’indiquent dans le fichier /etc/mail_secu.txt. Indiquez sur une ligne les adresses séparées par des virgules.

Si vous n’indiquez qu’une seule adresse, inutile d’ajouter une virgule.

Nom FQDN

Votre machine ne peut envoyer des mails que vers un serveur qui l’autorise. Pour cela, il faut qu’elle soit identifiée, et c’est son nom d’expéditeur qui est utilisé.

Si vous possédez un nom de domaine, éditez le fichier /etc/mailname et indiquez le nom de votre ordinateur ainsi: machine.mondomaine.org.

Identifiez correctement votre ordinateur, ce nom apparaît dans les courriers qui vous sont envoyés et vous permettront de vous y retrouver si vous recevez les logs de plusieurs serveurs.

Lancement en console

Vous pouvez lancer manuellement le programme pour envoyer les logs immédiatement ou pour vérifier son fonctionnement. En cas de problème, celui ci vous est affiché (en anglais) et vous permettra de rechercher une solution.

Dans un terminal, entrez: sudo sendlog

(le programme doit être lancé en root pour pouvoir accéder aux fichiers de log)

Programmation

A l’installation, le programme a paramétré le cron de root afin de lancer l’envoi de mail tous les jours à minuit. Pas avant, sinon il vous manquerait du contenu dans les logs du jour, pas après, sinon ce serait les logs du lendemain.

Faites quelques essais, mais n’envoyez pas beaucoup de mails en peu de temps, cela risquerait de vous faire mettre en quarantaine par votre FAI.

Une fois le logiciel paramétré, il n’y a plus à y toucher.

Servez vous, c’est GPL!

Créer un miroir local Ubuntu

Cet article va vous apprendre à créer un miroir local d’un dépôt Ubuntu sur un ordinateur équipé d’Ubuntu Hardy Heron 8.04.

Les raisons du miroir

Dans mon cas, il s’agit de pouvoir installer des logiciels sur l’ordinateur même lorsque l’accès au net est impossible (train, correspondances…) et de pouvoir mettre sur un réseau le miroir générer pour les mises à jour. Sans compter que le miroir local permet une rapidité d’accès sans commune mesure avec un miroir sur le net.

Synoptique

J’ai la chance d’avoir un portable avec de la place sur le disque dur. Sachez qu’il faut compter environs 37 Go de libre pour le miroir de Hardy aujourd’hui. 40 est un minimum, dans mon cas ce sera 52 Go.

Le portable étant connecté au réseau toutes les nuits, il se mettra à jour vers 6 heures du matin, une heure où je suis sensé dormir.

L’installation d’un serveur apache permettra un accès facile pour les autres ordinateurs du réseau.

Préparation du miroir

Dans mon cas, il s’agit d’une partition dédiée (sda9) . Comme je possède déjà un autre miroir local sur mon réseau, et afin de sauvegarder de la bande passante et du temps, j’effectue une synchronisation entre le miroir local existant et la partition sda9.

Cette étape n’est absolument pas obligatoire mais mon réseau local Gigabit étant bien plus rapide que le net à 10 Mb, j’aurais tort de m’en priver.

Installation du logiciel

sudo apt-get install apt-mirror

Il faut maintenant éditer le fichier /etc/apt/mirror.list afin d’adapter le fonctionnement à la machine.

Le fichier est simple et parlant :

  • set base_path : emplacement où seront copiés les fichiers. Par défaut, ce sera /var/spool/apt-mirror (1). Dans mon cas, ce sera /ubuntu, emplacement où est monté sda9.

Puisque nous avons modifié la chemin par défaut, et que les répertoires nécessaires sont créés lors de l’installation du programme, il faut créer dans /ubuntu les répertoires mirror, skel, var, puis donner les droits sur ces répertoires à l’utilisateur apt-mirror (ce que nous ferons en dernier).

mkdir -p /ubuntu/mirror /ubuntu/skel /ubuntu/var

Comme nous avons modifié les chemins, copions le fichier de nettoyage au nouvel endroit:

cp /var/spool/apt-mirror/var/clean.sh /ubuntu/var/clean.sh

Ne touchez pas aux chemins suivants du fichier de configuration à moins que vous ne sachiez ce que vous faites.

  • set defaultarch: Prend l’architecture du serveur par défaut. Cela correspond à l’architecture voulue du miroir . Dans mon cas: i386
  • set nthreads: 20 par défaut. Définit le nombre de threads qui téléchargeront en parallèle lors de la mise à jour du miroir. Inutile de trop monter ce chiffre: si vous saturez votre bande passante, chaque thread sera limité et vous téléchargerez moins vite tout en consommant plus de processeur.
  • set _tilde (ou set tilde sur les versions avant la 8.04): par défaut 0. Si vous le mettez à 1, permet de remplacer http://addr/~/xxx/yyy par http://addr/%7E/xxx/yyy (sans doute plus portable).

Viennent ensuite les lignes définissant les miroirs que vous voulez cloner en local. Dans mon cas, voici les lignes existantes:

deb http://be.archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb http://be.archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb http://be.archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb http://be.archive.ubuntu.com/ubuntu hardy-backports main restricted universe multiverse

#deb-src http://be.archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-backports main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-proposed main restricted universe multiverse


clean http://be.archive.ubuntu.com/ubuntu

La (ou les ) dernière(s) ligne(s) doivent commencer par clean et concerner les miroirs clonés. Elle permettra (pas toujours) de nettoyer le miroir local des paquets n’ayant plus lieu d’être. J’ai pu constater que le lancement manuel de la commande de nettoyage du miroir était plus efficace (au moins sur les versions précédentes de apt-mirror).

Note: pourquoi utiliser les miroirs belges plutôt que les français, puisque je suis en france ? J’ai pu constater que les miroirs français étaient souvent plus longs à répondre et saturés. Je n’ai jamais eu de problèmes avec les miroirs belges. Sans compter qu’il est probable que les linuxiens belges soient moins nombreux que les linuxiens français, d’où une réponse plus rapide. Ou aient des réseau plus adaptés.

Donner les droits sur le répertoire: sudo chown -R apt-mirror:apt-mirror /ubuntu

Mise à jour

Très simple!

  • Soit manuellement en lançant la commande apt-mirror
  • Soit automatiquement par le cron:0 6 * * * /usr/bin/apt-mirror
(1) Au passage, comment saturer une partition var, bloquer les impressions cups, ce qui va saturer /var/log d’erreurs et finir par bloquer le système….

Installer un serveur LAMP avec Ubuntu

Un serveur LAMP signifie Linux Apache Mysql Php. Il est possible d’installer et configurer chacun des services manuellement, mais il existe une autre façon plus simple et moins connue de faire tout ceci en une seule fois.

Dans un terminal, entrez ceci:

sudo tasksel install lamp-server

Et c’est tout!

Ou alors:

sudo tasksel

tasksel

Et sélectionnez LAMP server, ou tout autre service que vous désirez installer.

Résoudre Error: no « view » mailcap rules found for type « application/octet-stream »

Depuis ubuntu 7.10, le paquet xdg-utils qui offre le programme xdg-open a un bug qui ne lui permet plus de lancer les applications.

Le programme sort avec une erreur de ce type:

Warning: unknown mime-type for "/var/log/messages" -- using "application/octet-stream"
Error: no "view" mailcap rules found for type "application/octet-stream"

Pour retrouver un fonctionnement normal dans Jaunty et Karmic, il faut éditer le fichier /usr/bin/xdg-open et aller vers la ligne 383 et 384 pour commenter les lignes comme ci dessous.

 	if [ $? -eq 0 ]; then
 	    exit_success
#	else
#	    exit_failure_operation_failed
 	fi
     fi

Sauvegardez, et vous pourrez à nouveau profiter des programmes tels que GnomeDo et de tous ceux qui utilisent xdg-open.

Lire les mails de cron avec son lecteur de messagerie

Vous pouvez simplement lire vos mails système avec votre lecteur de messagerie, après quelques manipulations.

Explications sur le fonctionnement:

Si les opérations effectuées avec le crontab de root renvoient des informations, cron les envoie par mail à l’utilisateur root.

Root n’étant pas sensé se connecter, ces mails sont transférés à un des utilisateurs du système. Par défaut, il s’agit de l’utilisateur que vous avrez créé lors de l’installation système, mais vous pouvez le changer en modifiant le contenu du fichier /etc/aliases:

# Added by installer for initial user
root:	manu

Dans ce cas, c’est l’utilisateur manu qui va hériter des mails système à destination de root.

Attention: sur certaines versions, et en particulier la Jaunty 9.04, le fichier ne contient pas le nom d’utilisateur. Tout est renvoyé à root, mais root ne renvoie vers personne:

# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
clamav: root
root: manu

Il suffira d’ajouter « root: manu » tel que ci dessus pour que l’utilisateur manu accède aux mails système.

Ces mails sont lisibles en console par l’intermédiaire, par exemple, de la commande mail (disponible dans le paquet mailutils). Mais il faut reconnaître qu’il serait plus pratique de les avoir dans le lecteur de messagerie même, puisque celui ci est ouvert régulièrement.
La méthode ci dessous n’est utile et exacte que si vous n’installez pas de serveur imap ou pop sur cette machine même pour y lire les mails (par défaut, dans 99,9% des cas).

Paramétrage du client de messagerie

La méthode est donnée ici pour Mozilla-Thunderbird, mais il est simple de l’adapter pour un autre lecteur de messagerie installée sur le système capable de lire le format Movemail¹ (testé avec Evolution et mutt).

  • Ouvrez votre lecteur de messagerie.
  • Si c’est la première ouverture, il vous est proposé de créer un nouveau compte. Dans le cas contraire, rendez vous dans le menu Edition / Paramètres des comptes … puis cliquez sur Ajouter un compte.
  • Dans le paramétrage d’un nouveau compte, sélectionnez Unix Mailspool (Movemail), puis cliquez sur suivant.
  • Sélection du type de compte

    Sélection du type de compte

  • Dans la fenêtre Identité, indiquez votre nom d’utilisateur (normalement déjà rempli). L’adresse de courrier n’a que peu d’importance (vous n’enverrez pas de courrier depuis ce compte), elle servira principalement à identifier ce compte dans la liste des comptes paramétrés.
  • S’il vous est demandé un serveur smtp, vous pouvez indiquer celui de votre FAI (souvent de la forme smtp.fai.fr). Si vous aviez déjà des comptes, le serveur smtp que vous aviez précédemment indiqué sera utilisé. Si votre ordinateur n’est pas connecté à internet ou n’envoie pas de mails par l’intermédiaire du lecteur de messagerie, vous pouvez mettre seulement « smtp » pour que la configuration puisse être finalisée.
  • Indiquez le nom du compte tel que vous désirez qu’il apparaisse dans la liste si la proposition ne vous convient pas.
  • Cliquez sur Terminer à l’affichage du résumé.

Il suffit désormais de relever le courrier pour pouvoir lire normalement les mails système et surveiller le fonctionnement de l’ordinateur.

Limitations

  • Les mails ne peuvent être lus QUE depuis la machine sur laquelle ils se trouvent. Pour les récupérer d’une autre machine, il faudra installer un serveur POP ou IMAP afin que le lecteur de messagerie de l’ordinateur client puisse accéder à ces mails. Cela fera l’objet d’un prochain article.
  • Il est possible d’envoyer les mails sur une autre adresse en indiquant l’adresse de destination pour l’alias du root dans le fichier /etc/aliases ainsi: root: manu@fai.fr. Cela oblige, par contre, l’ordinateur à posséder un système d’envoi de mails externes, tel que postfix ou exim4, paramétré correctement. Lorsque ce n’est pas nécessaire (si l’ordinateur est sur un réseau que je contrôle), je préfère éviter d’avoir un système d’envoi de mails que je serais obligé de maintenir et contrôler. En particulier si un logiciel s’affole et envoie plusieurs centaines de messages au système en quelques minutes (vécu), le risque de passer pour spammeur est grand!

Messages d’erreur

Impossible de localiser le fichier de spool du courrier

Impossible de localiser le fichier de spool du courrier

Ce message vous indique que le fichier /var/spool/mail/user n’existe pas. Il peut ne pas exister pour 2 raisons principales:²

  • L’utilisateur n’est pas déclaré comme devant recevoir les messages de root dans le fichier /etc/aliases
  • Aucun mail n’a été envoyé par le système, donc il n’y a pas de fichier contenant les mails…
Impossible de créer les verrours

Impossible de créer les verrours

Ce message vous informe que les droits ne sont pas corrects. Dans une console, la commande sudo chroot 01777 /var/spool/mail résoudra le problème.

¹ Opera mail ne semble pas pouvoir être utilisé pour accéder à ce type de compte mail.

² Assurez vous que la partition /var est montée, accessible à l’utilisateur, droits corrects, etc…

Identifier son système sous linux

Lorsque l’on doit faire une mise à jour du bios de son ordinateur, il est plus rassurant (et plus fiable) d’avoir le maximum d’informations sur son matériel.

Avec Debian/Ubuntu, vous pouvez obtenir ces informations facilement en installant le paquet libsmbios-bin et en utilisant la commande getSystemId (via sudo!)

exemples:

pour mon Aspire One (jaunty)

Libsmbios version:      2.2.13
Product Name:           AOA150
Vendor:                 Acer
Version du BIOS:        v0.3114
System ID:              0x0000
Service Tag:            xxxxxxxxxxxxxxxxxxxxx
Express Service Code:   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Asset Tag:
Property Ownership Tag:

Pour mon Fujitsu Amilo (hardy):

Libsmbios:    0.13.10
Error getting the System ID   :
Error getting the Service Tag : std::exception
Product Name: AMILO Xa 2528
BIOS Version: 1.0L-4C15-000F
Vendor:       FUJITSU SIEMENS
Is Dell:      0

Un serveur Web (hardy):

Libsmbios:    0.13.10
Error getting the System ID   :
Error getting the Service Tag : std::exception
Product Name: EPIA
BIOS Version: 6.00 PG
Vendor:       VIA TECHNOLOGIES, INC.
Is Dell:      0

Une VirtualBox (jaunty):

Libsmbios version:      2.2.13
Product Name:           VirtualBox
Vendor:                 innotek GmbH
Version du BIOS:        VirtualBox
System ID:              0x0000
Service Tag:            0
Express Service Code:   0
Asset Tag:
Property Ownership Tag:

Pour les développeurs python, vous noterez que ça vous installe d’office python-libsmbios. Je vous laisse imaginer tous les usages possibles pour vos applications.

CIFS VFS: Server not responding

Sur l’une de mes machines avec Ubuntu Hardy 8.04 (mais d’après google, cela se produit aussi avec d’autres versions), à l’arrêt et au redémarrage, l’ordinateur mettait plusieurs minutes à s’arrêter ou redémarrer et affichait le message suivant:


CIFS VFS: Server not responding
CIFS VFS: no response for cmd 50 mid xxx

(avec xxx étant des chiffre variables).

Pourtant, avant la réinstallation avec le même CD, aucun problème à déplorer. Pas plus que sur les 5 autres postes installés avec le même CD et toutes les mises à jour effectuées.

Il semblerait que les démontages des partages SAMBA et NFS ne s’effectuent pas correctement.

La solution, fonctionnelle pour moi, a été de modifier les scripts à l’arrêt et au redémarrage de l’ordinateur, soit:

sudo mv /etc/rc0.d/S31umountnfs /etc/rc0.d/K31umountnfs
sudo mv /etc/rc6.d/S31umountnfs /etc/rc6.d/K31umountnfs

Pourquoi par défaut, lors de l’arrêt, ces scripts sont en position start ? D’autant que le start, dans le code, n’effectue absolument rien, mais le stop effectue bien les démontages! Mystère…

Htop toujours disponible

htop-05Données du problème

J’ai un serveur avec écran, dans une armoire fermée à clef avec un porte transparente qui démarre sans interface graphique. Je souhaitais faire apparaître un htop systématiquement à chaque démarrage.

Méthode testée sur Ubuntu, mais pouvant certainement être adaptée à d’autres distributions.

Il suffit de mettre le code suivant dans le fichier /etc/event.d/tty1

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.
 
start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5
 
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
 
respawn
exec /sbin/getty 38400 tty1 -nl /usr/bin/htop

Attention

  • Dans cette configuration, le clavier est actif. Il est donc utilisable par n’importe quel utilisateur accédant au clavier.
  • Le logiciel est lancé en root! Donc, si le clavier est accessible, n’importe quel utilisateur peut killer un processus appartenant à un autre (même init!)
  • htop consomme de la mémoire et de la puissance processeur. Même si c’est relativement peu, c’est à prendre en compte.

Du fait que le clavier est inacessible, dans mon cas, cela n’est pas un problème, mais c’est à garder en tête avant d’activer cette fonctionalité.

Update du 24/01/2011

Depuis que la version de Upstart a changé sur Ubuntu, cela ne fonctionne plus exactement de la même manière:

  • Il faut modifier le fichier /etc/init/tty1.conf
  • Il faut remplacer la ligne exec /sbin/getty -8 38400 tty1 par exec /usr/bin/htop </dev/tty6 >/dev/tty6
  • Le clavier est toujours actif! Attention: si vous avez installé GPM, la souris l’est aussi et permet d’utiliser les menus de htop! Pensez à la mettre sous clef.

Recevoir le log de rkhunter

Par défaut, rkhunter envoi un compte rendu succint lors de son lancement automatique.

Avouez qu’il serait quand même plus pratique de recevoir le log au lieu d’une simple phrase « Please inspect this machine, because it may be infected. ».

Heureusement, il est possible de modifier simplement ce comportement.

En root, éditez le fichier /etc/cron.daily/rkhunter.

Modifiez la ligne:

...
/usr/bin/nice -n $NICE $RKHUNTER --cronjob --report-warnings-only \
--createlogfile /var/log/rkhunter.log $RK_OPT &gt; $OUTFILE
...

pour qu’elle ressemble à celle ci

...
/usr/bin/nice -n $NICE $RKHUNTER --cronjob --report-warnings-only \
--createlogfile /var/log/rkhunter.log --display-logfile $RK_OPT &gt; $OUTFILE
...

Au prochain lancement automatique, si vous avez paramétré rkhunter pour qu’il vous envoie un mail, vous recevrez en plus le log du scan.

Filtrer les connexions ssh

Portier SSH

Si vous possédez un serveur avec SSH opérationnel, vous ne serez pas long à avoir des messages tels que ceux ci dans le fichier /var/log/auth.log:

...
Mar 11 12:48:21 serv sshd[12956]: Failed password for invalid user root from 64.71.148.162 port 47270 ssh2
Mar 11 15:45:04 serv sshd[6954]: Did not receive identification string from 210.21.30.72
Mar 11 15:46:48 serv sshd[7041]: Did not receive identification string from 81.93.188.5
Mar 11 15:47:50 serv sshd[7106]: User root from 210.21.30.72 not allowed because none of user s groups are listed in AllowGroups
Mar 11 15:47:50 serv sshd[7106]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=210.21.30.72  user=root
Mar 11 15:47:52 serv sshd[7106]: Failed password for invalid user root from 210.21.30.72 port 54346 ssh2
Mar 11 15:49:33 serv sshd[7241]: User root from 81.93.188.5 not allowed because none of user s groups are listed in AllowGroups
Mar 11 15:49:33 serv sshd[7241]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=81.93.188.5  user=root
Mar 11 15:49:35 serv sshd[7241]: Failed password for invalid user root from 81.93.188.5 port 44663 ssh2
Mar 12 00:51:18 serv sshd[22229]: User root from host.ongamemarketing.com not allowed because none of user s groups are listed in AllowGroups
Mar 12 00:51:18 serv sshd[22229]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=host.ongamemarketing.com  user=root
Mar 12 00:51:20 serv sshd[22229]: Failed password for invalid user root from 174.133.12.130 port 48089 ssh2
Mar 12 00:51:22 serv sshd[22236]: User root from host.ongamemarketing.com not allowed because none of user s groups are listed in AllowGroups
Mar 12 00:51:22 serv sshd[22236]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=host.ongamemarketing.com  user=root
Mar 12 00:51:24 serv sshd[22236]: Failed password for invalid user root from 174.133.12.130 port 48521 ssh2
Mar 12 01:47:10 serv sshd[30827]: Did not receive identification string from 114.200.199.144
Mar 12 01:53:17 serv sshd[31227]: Invalid user staff from 114.200.199.144
Mar 12 01:53:17 serv sshd[31227]: pam_unix(sshd:auth): check pass; user unknown
Mar 12 01:53:17 serv sshd[31227]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=114.200.199.144
Mar 12 01:53:19 serv sshd[31227]: Failed password for invalid user staff from 114.200.199.144 port 35343 ssh2
Mar 12 01:53:27 serv sshd[31234]: Invalid user sales from 114.200.199.144
...

Vous avez besoin de pouvoir vous connecter en ssh depuis le réseau local, depuis l’extérieur, mais vous voulez limiter les risques. Il existe plusieurs solutions, qui peuvent être cumulées:

Sécuriser par la configuration de SSH

N’autoriser QUE certains utilisateurs à accéder au service

Si vous avez peu d’utilisateurs nécessitant un accès ssh, vous pouvez les déclarer ainsi en ajoutant cette ligne dans le fichier de configuration /etc/ssh/sshd_config (et en redémarrant le service après chaque modification)

AllowUsers titi toto

Après relance du service ssh, les utilisateurs titi et toto pourront se connecter en ssh, les autres utilisateurs se verront refuser leur mot de passe.

Vous pouvez aussi créer un groupe (par exemple: sshusers) et autoriser tous les utilisateurs de ce groupe à se connecter en ssh. Ceux n’appartenant pas à ce groupe se verront refuser leur mot de passe.

addgroup sshusers
adduser toto sshusers
adduser titi sshusers

Puis ajoutez la ligne suivante dans /etc/ssh/sshd_config:

AllowGroups sshusers

IN and OUT

Oui, mais voilà un nouveau problème:

  1. Le serveur fait passerelle avec internet, et possède une carte sur le réseau interne, et une carte vers le réseau internet.
  2. Tous mes utilisateurs internes doivent pouvoir accéder par ssh (ce qui est le cas avec la configuration par défaut), mais ne doivent pas pouvoir accéder depuis l’extérieur (parce qu’ils n’en ont pas besoin, ou parce que les mots de passe des utilisateurs sont trop simples)
  3. Si je laisse la configuration ainsi, le serveur sera piraté très rapidement.

Il est possible d’ajouter une directive à la liste des autorisations, permettant de faire ceci:

AllowUsers *@192.168.0.*

Ainsi, tous les utilisateurs du réseau local (et possédant un compte sur le serveur) pourront accéder par ssh, mais ne pourront pas le faire s’ils ne proviennent pas du réseau local (par internet).
Si je veux pouvoir ensuite me connecter depuis l’internet pour faire de la télémaintenance, il me suffit d’ajouter mon compte et de transformer la ligne en ceci:

AllowUsers manu *@192.168.0.*

(1)

Il est possible aussi de cumuler les directives Users et Groups pour obtenir des possibilités supplémentaires. Exemple:

  1. Seuls certains de mes utilisateurs locaux doivent pouvoir se connecter au serveur, depuis le net ou en local.
  2. Je veux pouvoir m’y connecter de partout (local et internet)

La configuration est la suivante:

AllowGroups sshusers
AllowUsers manu

Ainsi, seuls les utilisateurs appartenant au groupe sshusers pourront se connecter au serveur, en plus de l’utilisateur manu qui pourra se connecter depuis n’importe où.

Si je possède un adresse IP fixe, et que je suis assez bête pour crée un compte manu avec le mot de passe manu, je peux tout de même limiter l’accès par mon adresse IP (80.80.80.80)

AllowUsers @80.80.80.80

Je suis désolé, ça va pas être possible…

Vous pouvez même ajouter des directives inverses, pour interdire les connexions:

DenyUsers invite
DenyGroups stagiaires

Autres configurations conseillées de ssh

Vous pouvez modifier d’autres éléments du fichier de configuration, qui permettront de sécuriser un peu plus votre serveur ssh:

  • Changer le port d’écoute par défaut: vous pouvez changer ce port par autre chose que 22. Sachez cependant que la protection apportée par ce changement est TRÈS FAIBLE. Un scan de vos port repérera le port que vous avez choisi, et des logiciels de scans sont capable de déterminer le service qui tourne derrière ce port. Cela vous permettra seulement d’échapper à certains robots qui ne tentent des connexions que sur le port 22.
  • N’autoriser une identification que par clef: il vous faudra générer des clefs d’identification (avec seahorse pour gnome ou ssk-keygen) pour tous vos utilisateurs et empêcher l’autentification par mot de passe dans la configuration de SSH. Cette protection est très efficace, par contre, il faut que les clefs soient sécurisées (pas sur une clef usb qui peut se perdre ou se faire voler, pas sur un partage accessible, pas échangées par courriel, …). L’autre inconvénient, c’est que vos clefs doivent voyager avec vous et être installées sur les ordinateurs que vous utilisez; d’où une incompatibilité avec le point précédent, si vous n’avez pas une politique stricte de stockage des clefs.
  • Ne JAMAIS autoriser la connexion de l’utilisateur root: (PermitRootLogin no).  Il y a toujours un utilisateur root sur tous les Linux (même sur Ubuntu) et vous facilitez le travail d’un éventuel pirate, puisqu’il n’a qu’un mot de passe à trouver. Autrement, il doit d’abord trouver un login valide, puis son mot de passe, puis celui du root. Si vos mots de passe et vos logins sont adaptés, cela lui prendra des années avant d’y arriver par ce moyen.

Ajouter des logiciels de sécurisation

fail2ban

fail2ban est un logiciel qui va surveiller les tentatives de connexion échouées dans le fichier /var/log/auth.log , et bloquer, en modifiant les règles iptables à la volée, un nombre trop élevé de connexions échouées. Ce logiciel permet aussi, de la même manière, de protéger votre serveur apache, postfix, vsftpd, proftpd, wuftpd, sasl, dns, …
Une fois installé, il vous suffit d’éditer le fichier /etc/fail2ban/jail.conf pour configurer son comportement. Exemple pour ssh:

...
[DEFAULT]
# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = <a class="linkification-ext" title="Linkification: http://10.0.0.0/24" href="http://10.0.0.0/24">10.0.0.0/24</a>
bantime  = 600
maxretry = 3
...
[SECTION_NAME]
enabled = true # vérifier que cette valeur est à True, sinon le logiciel n'est pas activé!
...
[ssh]
enabled = true
port	= ssh
filter	= sshd
logpath  = /var/log/auth.log
maxretry = 6

Dans cette configuration:

  • Tout ce qui vient du réseau local (10.0.0.0/24) est ignoré. Donc je pourrais me tromper autant de fois que voulu, je ne me ferais pas bannir.
  • En dehors de mon réseau local, par ssh, j’ai droit à 6 tentatives (par session) de connexions échouées. Ensuite, je me ferais bannir. Si je m’identifie, la fois suivante, j’ai encore droit à 6 tentative (ça repart à zéro avec l’identification réussie)
  • Si je suis banni, toutes mes tentatives de connexions pendant les 600 prochaines secondes (10 minutes) seront refusées, sans possibilité d’identification.

La configuration de fail2ban vous offre plein d’autres possibilité, comme de recevoir des mails en cas de tentatives échouées, d’utilisateurs inconnus, etc. Consultez la documentation pour exploiter cet outils très pratique.

denyhosts

denyhosts permet de faire la même chose, un peu différemment. Il maintient une base d’IP bannies dans /etc/hosts.deny et les compare avec les tentatives de connexions.

Il a quelques avantages sur fail2ban, même si je le trouve plus lent (consommateur) à l’usage:

  1. Il permet de bloquer les tentatives d’accès ssh sur l’utilisateur root dès la première tentative.
  2. Il permet de paramétrer comme on le veut les champs from et subject des mails envoyés
  3. Il permet d’envoyer les rapports vers le syslog, qui peut être distant (et ineffaçable)

Simple à configurer, le fichier /etc/denyhosts.conf est largement commenté

Sur le même sujet:

(1) Ne pensez pas que je suis assez bête pour utiliser un login simple tel que « manu » sur mes serveurs… C’est juste pour l’exemple.

rkhunter et unhide

Unhide est un utilitaire permettant de lister les processus actifs cachés. C’est un outil qui vous permet de trouver d’éventuels rootkits installés sur votre système.

S’il n’est pas installé par défaut sur votre distribution, installez le de manière classique.

Si vous utilisez rkhunter pour scanner votre machine, sans opération particulière vous aurez deux problèmes:

  1. rkhunter n’utilisera pas par défaut unhide, et vous perdrez donc le bénéfice d’un seul scan.
  2. rkhunter va détecter un warning sur unhide et unhide-linux26, ce qui vous enverra un mail à chaque détection.

La solution est simple: il suffit d’indiquer à rkhunter que unhide est fiable, en l’ajoutant à sa base de donnée. Ensuite, rkhunter utilisera unhide automatiquement.

ATTENTION: n’utilisez la commande suivante QUE SI VOUS ÊTES SÛR de votre système ! En effet, cette commande va réinitialiser la base de données des programmes considérés comme sûrs par rkhunter. Si vous avez un rootkit ou des programmes cachés, ils ne seront plus détectés!

Il est conseillé de lancer un rkhunter -c et de vérifier le rapport avant de lancer la commande suivante.

Maintenant que vous êtes prévenus, voici la commande magique (en root ou avec sudo):

rkhunter --propupd

C’est tout. La prochaine fois que rkhunter sera lancé, manuellement ou par la programmation, unhide sera détecté et utilisé.

Faire fonctionner le micro avec skype sur l’Aspire One et Ubuntu 8.10

Après installation de Ubuntu sur l’Acer aspire One (ou AAO), le microphone ne fonctionne pas avec skype.

Je vous livre les manipulations qui m’ont permis de le faire fonctionner:

  • Ouvrir le contôleur de volume (clic droit sur l’icone du haut parleur sur la barre des tâches et « ouvrir le contrôleur de volume »)
  • Régler les options comme sur les captures ci dessous. Notez le périphérique contrôlé (HDA Intel)
Réglage de l'onglet lecture

Réglage de l'onglet lecture

Réglages de l'onglet enregistrement

Réglages de l'onglet enregistrement

Réglages de l'onglet options

Réglages de l'onglet options

  • Lancer skype et ouvrir le réglage des préférences
  • Ouvrir l’onglet son et régler comme sur la capture

    Options audio de skype

    Options audio de skype

  • Cliquez sur « Appliquer » et vous pouvez lancer un appel et profiter des communications par le réseau

A noter que j’utilise le noyau de FOZZY optimisé pour le AAO (http://aspireoneuser.com/forum/viewtopic.php?f=28&t=7560&start=0)

Utiliser kprinter avec openoffice.org3 sur Ubuntu

Les boites de dialogue natives d’openoffice sont loin d’être…jolies, disons.

De plus, l’accès aux options des imprimantes est très peu ergonomique.

Heureusement, il existe une possibilité d’utiliser kprinter, le gestionnaire d’impression de KDE, qui est plus joli que celui de cups .

Installez le paquet kdeprint, qui contient kprinter.

Localisez le programme spadmin (si vous avez installé à partir des deb fournis par openoffice.org, il se trouve dans /opt/openoffice.org3/program ) et lancez le par un double clic.(1)

Dans la fenêtre, cochez la case Désactiver le support de cups, ce qui ne laissera de visible qu’une seule imprimante: Generic Printer.

Ensuite, il faut la modifier de manière à ce qu’elle n’apparaisse pas comme choix avant le lancement de kprinter.

  • Cliquez sur propriétés…
  • Dans l’onglet Commande, entrez kprinter dans la première liste déroulante.
  • Cochez la case utiliser la boite de dialogue d’impression du système
  • Entrez kprinter dans la commande pour l’impression rapide sans boite de dialogue
  • Cliquez sur OK
  • Cliquez sur Fermer

Vous pouvez désormais imprimer avec OpenOffice en utilisant l’interface de kprinter.

(1) – Vous pouvez aussi lancer le programme par Applications/Bureautique/Gestion des imprimantes de openoffice.org3. Mais il arrive que ce raccourci ne soit pas disponible. Lancer directement spadmin fonctionne à chaque fois.

PS: cette configuration ne fonctionne pas avec OpenOffice2.4

PS2: cette configuration n’est activée QUE pour l’utilisateur l’ayant lancée. Elle est à faire pour tous les utilisateurs. Cependant, la configuration est réglée dans ~/.openoffice.org/3/user/psprint/psprint.conf et le fichier peut être copié chez les autres utilisateurs.