Le Blog Maniatux

Bienvenue sur internet

Android 5.0 : revenir à l'ancien clavier visuel

Rédigé par Xavier - - aucun commentaire

Avec la mise à jour Android 5.0 le clavier visuel a une nouvelle apparence, que l'on aime pas forcément. En effet je trouve la frappe très imprécise et surtout ça rame un maximum ! On doit régulièrement "attendre" le clavier avant de continuer à frapper. Donc pour corriger ce problème on peut soit installer un clavier alternatif, soit revenir à l'ancienne version. Pour cela :

  • Se rendre dans les paramètres
  • Aller dans Langue et saisie
  • Ouvrir Clavier Google puis Apparence et dispositions et enfin Thème
  • Sélectionner Holo White

Et hop ! Un deuxième VPS chez OVH...

Rédigé par Xavier - - 8 commentaires

Mon serveur @home est la cible d'attaques de type SYN flood depuis quelques temps. Au début elles n'étaient pas très importantes mais depuis peu elles ont gagné en intensité, m'obligeant à bloquer une dizaines d'IP par jour (à la main). Les différentes astuces sur le web faisant appel à iptables ou au fichier sysctl.conf ont aidé, mais devant la virulence de l'attaque je dois toujours intervenir pour bloquer les IP.

Mon serveur @home tourne sous Debian Jessie et fourni plusieurs containers LXC dont un qui fait tourner une instance Yunohost et héberge mes mails. Quand une attaque violente se produit les mails ont des difficultés à arriver et j'ai du mal à les lire. De plus cela sature mon routeur en amont (la Bbox) ce qui me ralenti la connexion à internet pour toutes les machines du réseau (ping 6000ms, 50% de pertes de paquets).

Aujourd'hui je suis à court d'options, mon serveur ne semble pas assez robuste pour filtrer efficacement toutes ses requêtes. Il me faudrait une appliance pare-feu en amont pour filtrer tout cela, mais je n'ai pas envie de m'encombrer avec du matériel supplémentaire ou devoir à nouveau tout réinstaller.

J'ai déjà dit du bien du VPS Classic 1 chez OVH, qui me permet de faire tourner le blog maniatux.fr pour un coût dérisoire (2,39€ TTC par mois, soit moins de 30€ par an...). Ces VPS sont protégés contre les attaques ddos donc à priori je ne serai plus embêté.

Je reconnais que c'est une solution de facilité, mais je ne suis pas équipé pour contrer du ddos chez moi.

OMG STARWARS !!!

Rédigé par Xavier - - aucun commentaire

18 Mai, année 2005. Je suis lycéen et aujourd'hui n'est pas un jour comme les autres. C'est le jour de la sortie de l'Episode III de Star Wars et moi et mes "potes" avons acheté nos billets le midi au cinéma pour la séance du soir.

Après avoir terminé les cours en avance, nous prenons une petite bière, quelques gâteaux, et nous nous rendons au cinéma totalement rempli (le cinéma, pas nous). Une foule incroyable, les guichets pris d'assaut, la queue devant la salle qui n'ouvrait pas avant l'heure prévue !!! Et puis la séance débuta avec une publicité pour le jeu World of Warcraft encore nouveau à l'époque mais déjà très populaire...

Et puis.... LE FILM !!! Cette émotion quand le générique défile !!! Cette bataille spatiale avec des vaisseaux tellement perfectionnés qu'ils font du bruit dans l'espace !!! La branlée de Doku !!! Un démarrage en fanfare qui nous a vite fait oublier les lourdeurs de l'Episode II qui nous faisait craindre l'avenir.

Aujourd'hui, fin 2014, arrive le premier trailer pour l'Episode VII !!!! Non, Star Wars au cinéma n'est pas mort et reviendra en Décembre 2015 si tout se passe bien.

Voir le trailer de l'episode VII

Classé dans : Culture - Mots clés : aucun

Debian 8 + Xen + Virt-manager HOWTO

Rédigé par Xavier - - 2 commentaires

Xen + libvirt is an interesting choice of toolstack, it makes network-management and guest installation easier and enables graphical remote management of the VMs. However, Debian Wheezy has several issues, I have never been able to boot something using xen + virt-manager, so I strongly recommend Jessie which is pretty stable. In this howto, I use two servers : xen-01 (for Xen + libvirt, headless) and xen-console (for virt-manager, with Xfce desktop). You can use virtual or physical machines but I had issues with VMware because Xen keeps freezing when you try to boot a domU. However, Virtualbox works fine.

Lire la suite de Debian 8 + Xen + Virt-manager HOWTO

Yunohost : mx backup whitelist (vérification spf)

Rédigé par Xavier - - 16 commentaires

Qu'est-ce que la vérification SPF ?

Un nom domaine (example.com) est enregistré sur un DNS et comporte plusieurs valeurs : A (hôte ipv4), AAAA (hôte ipv6), MX (serveur où les mails doivent être remis), TXT (divers), etc. Le champ TXT permet de définir des arguments relatifs à la messagerie. Dans notre cas, SPF consiste à indiquer quel serveur a le droit d'envoyer du courrier en utilisant ce domaine comme identité. Concrètement on peut définir que seul le serveur 1.2.3.4 a le droit d'envoyer un mail en tant que @example.com.

Une vérification SPF permet donc à un serveur qui reçoit du courrier de vérifier que celui qui envoie est bien ce qu'il prétend être. On évite ainsi pas mal de spam, usurpation d'identité, phishing et autres joyeusetés. Voici étape par étape comment ça fonctionne :

  • Un mail arrive, comme expéditeur il est indiqué machin@example.com
  • Le serveur qui reçoit vérifie ce qui est indiqué en SPF dans l'enregistrement DNS de example.com
  • Ce SPF dit que seuls les serveurs 1.2.3.4 et 5.6.7.8 sont autorisés à envoyer du courrier pour le domaine example.com
  • Le serveur vérifie donc l'IP du serveur expéditeur et rejette le message si cela ne correspond pas aux deux adresses précédentes

Le problème du mx backup

Comme je l'indiquais plus haut, un domaine peut contenir un champ MX qui indique à quel serveur le courrier doit être redirigé. Or on peut avoir plusieurs MX avec un ordre de priorité. Cela présente un intérêt pour assurer la continuité de service si le serveur principal tombe. Un serveur secondaire sera nommé mx backup dans cet article.

J'ai été confronté à un cas spécial. Comme l'ami Etenil j'ai un serveur de messagerie en ligne nous avons donc modifié nos configurations pour faire office de mx backup l'un l'autre. Donc si mon serveur se retrouve offline, les mails entrants seront redirigés vers le serveur de Etenil qui les conservera jusqu'à ce que je revienne online. Un problème s'est posé depuis que j'ai migré mon serveur sur Yunohost. En effet ce dernier fait une vérification SPF quand il reçoit un mail. Et dans le cas où c'est le mx backup qui me transmet un message, voilà ce qui se passe :

  • Mon serveur est passé offline
  • Un expéditeur machin@example.com m'envoie un mail
  • Le mail arrive sur le mx backup (chez etenil) qui le stocke
  • Mon serveur revient online
  • Le mx backup (etenil) me transfère donc le mail
  • Mon serveur fait une vérification SPF et compare avec l'IP du mx backup (etenil)
  • Le message est rejeté car le champ SPF de example.com ne liste pas l'IP du mx backup (ce qui est normal)

La vérification SPF est donc problématique dans le cas où le message n'arrive pas directement mais transite par d'autres mx indépendants de l'expéditeur. Notez que par défaut Postfix ne fait pas de vérification SPF, cela est géré par un plugin. Mais YunoHost le propose par défaut.

La solution

Il faut définir une "spf whitelist" pour indiquer à Postfix de ne pas faire de vérification dans le cas où le serveur expéditeur est mon mx backup. J'ai trouvé la solution en lisant cette page de documentation.

Donc on édite notre /etc/postfix/main.cf puis on recherche la section suivante :

# Requirement for the recipient address
smtpd_recipient_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_non_fqdn_recipient,
    reject_unknown_recipient_domain,
    reject_unauth_destination,
    check_policy_service unix:private/policy-spf
    check_policy_service inet:127.0.0.1:10023
    permit

On va donc y insérer la directive permit relay_addresses mx2.example.com :

# Requirement for the recipient address
smtpd_recipient_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    permit relay_addresses mx2.example.com
    reject_non_fqdn_recipient,
    reject_unknown_recipient_domain,
    reject_unauth_destination,
    check_policy_service unix:private/policy-spf
    check_policy_service inet:127.0.0.1:10023
    permit

Ensuite on recharge Postfix :

# service postfix reload

Et voilà