Catégories
Open-source Reseau

De l’utilité de gérer des serials DNS standards

Depuis la migration de mon nom de domaine vers les serveurs Gandi (suite au hack du site), le blog de Nicolargo est injoignable depuis certains FAI (notamment les Freenautes ce qui le coupe de plus d’un tiers du trafic Français)…

Après des échanges ping pong entre le support de Gandi et celui de Free, j’ai décidé de prendre les choses en main, du moins en ce qui concerne l’identification du problème.

Le comportement est le suivant: sur le réseau Free, certains lecteurs voient normalement le blog tandis que d’autre sont redirigé vers l’ancienne adresse du serveur (aujourd’hui un compte iWeb8 suspendu). J’arrive parfaitement à reproduire ce comportement depuis chez moi (et oui je suis chez Free ;)).

nicolargo@nicolargo-laptop:~$ dig +nocmd nicolargo.com any +multiline +noall +answer

nicolargo.com. 85644 IN SOA ns1.panelboxmanager.com. logs.logs.privatedns.com. (
2010072800 ; serial
86400 ; refresh (1 day)
7200 ; retry (2 hours)
3600000 ; expire (5 weeks 6 days 16 hours)
86400 ; minimum (1 day)
)
nicolargo.com. 13644 IN A 72.55.186.68
nicolargo.com. 85644 IN NS ns1.panelboxmanager.com.
nicolargo.com. 85644 IN NS ns2.panelboxmanager.com.
nicolargo.com. 13644 IN MX 0 nicolargo.com.

nicolargo@nicolargo-laptop:~$ dig +nocmd nicolargo.com any +multiline +noall +answer

nicolargo.com. 10080 IN MX 10 spool.mail.gandi.net.
nicolargo.com. 10080 IN MX 50 fb.mail.gandi.net.
nicolargo.com. 10080 IN A 217.70.184.38
nicolargo.com. 10080 IN SOA a.dns.gandi.net. hostmaster.gandi.net. (
1282917455 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
nicolargo.com. 10080 IN NS a.dns.gandi.net.
nicolargo.com. 10080 IN NS b.dns.gandi.net.
nicolargo.com. 10080 IN NS c.dns.gandi.net.

Une fois la résolution de nom se fait normalement (c’est à dire avec les NS pointant chez Gandi: dns.gandi.net), une fois non (les DNS pointent encore sur panelboxmanager.com, les serveurs DNS de iWeb8).

En regardant de plus près la réponse on peut voir les deux lignes suivantes:

Réponse venant de iWeb8: « 2010072800 ; serial »

Réponse venant de Gandi: « 1282917455 ; serial »

Je commence alors à comprendre d’ou vient le problème: quand le domaine était géré par iWeb8, ces derniers utilisait une gestion standard des numéro de série au format ANNEE-MOIS-JOUR-ID (2010072800), ce qui n’est pas le cas de Gandi qui doit générer dynamiquement ce numéro avec un algorithme interne (1282917455). Dans mon grand malheur, le numéro de série Gandi de la zone DNS nicolargo.com est inférieur à celui chez iWeb8. Il est donc normal que les serveurs DNS ne soit pas mis à jour…

Un petit tour du coté d’un site de validation de zone DNS:

Je viens d’envoyer un mail au support Gandi pour qu’il me change le numéro de série SOA à une valeur > à  2010072800…

Sinon il ne me reste plus qu’a attendre l’expiration de la zone DNS, c’est à dire presque… 6 semaines !!! Heureusement que je ne vie pas de ce blog :). Une autre solution serait de gérer moi même mon propre serveur DNS (c’est possible en mode expert sur les VPS Gandi), mais je n’ai pas vraiment le couple temps/envie de m’en occuper.

L’erreur que j’ai faite est de ne pas avoir modifier la zone DNS chez iWeb avant de clôturer mon compte… Cette aventure est quand même une bonne leçon à retenir pour les administrateurs de domaines DNS (par exemple pour ceux qui doivent installer un BIND): respecter les standards de numérotation des serials SOA !

Update (j+9): Comme le signale Pascal dans son commentaire le serial SOA n’est utile que pour la réplication des zones entre le serveur primaire et le/les serveurs secondaires. Ce sont les TTL des RR qui fixent le temps de rafraîchissement des caches DNS (hébergé chez les FAI). Manifestement les serveurs de caches DNS de Free ne tiennent pas compte de ces TTL (fixés à 48h pour le domaine nicolargo.com) ou sont tout simplement bugués…

Update (j+10): Je n’arrive malheureusement pas à avoir une réaction de la part du support de Free, il me dise que la mise à jour des caches se fait de manière automatique (je veux bien les croire sur ce point…) et qu’ils ne peuvent pas intervenir. Bref 10 jours après la migration, certain utilisateur ne peuvent toujours pas accéder au blog. Si quelqu’un connait un administrateur réseau chez Free je suis preneur !!!!

Update (j+11): Tout semble enfin être rentré dans l’ordre. Les DNS de Free sont enfin à jour. Le blog est donc accessible depuis l’ensemble des lecteurs. Si ce n’est pas le cas, c’est plus un problème de cache local de votre navigateur Web (d’un autre coté vous ne pouvez pas lire ce message :)).

Catégories
Blog Open-source Web

Installation d’un blog WordPress sur un VPS Gandi

Comme vous le savez, je me suis fait hacké mon site pendant les « grandes vacances ». Cette petite contrariété m’a fait faire dans l’urgence une chose que j’avais planifier depuis un certain moment: la migration du Blog de Nicolargo sur un serveur privé virtuel de Gandi.

Nous allons donc voir dans ce billet comment installer, sécuriser et optimiser une blog WordPress sur une serveur privé virtuel !

Catégories
Open-source Systeme

Création d’un serveur chez Gandi

Je connaissais surtout Gandi pour la qualité de son service de réservation de noms de domaines Internet. Depuis maintenant plusieurs mois, ils se sont lancés dans l’hébergement de serveurs virtualisés. J’ai donc décidé de tester ce nouveau service.

Création du serveur

Basée sur la technologie XEN (logiciel libre de virtualisation), l’hébergement est flexible. Il faut donc choisir un nombre de part (valeur allant de 1 à 16) d’un serveur comportant 64 parts. Il est bien sûr possible de faire évoluer le nombre de parts de son serveur sur simple demande.

Ainsi, si vous choisissez l’entrée de gamme à 12 Euros (soit 1 seule part), vous avez les caractéristiques suivantes:

  • 1/64ème des capacités globales du serveur (CPU, …)
  • 1/64ème des 16 Go de mémoire du serveur, soit 256 Mo de RAM garantie (+512 Mo de Swap)
  • 1/64ème des capacités réseau, soit 5 Mbits dédiés
  • 1/64ème du disque réservé au serveur, soit 5 Go de disque data (+3 Go pour le système)

Bref ce n’est pas une bête de course, mais largement suffisant pour héberger un site Web (blog ou autres), un serveur FTP, SVN, Nagios…

Vient ensuite le choix du système. Les OS suivants sont disponibles:

  • Ubuntu 8.04
  • Ubuntu 9.04
  • Debian 4
  • Debian 5
  • OpenSuse 10.3
  • Fedora Core 8
  • Mandriva 2008.0
  • Mandriva 2008.1
  • CentOS 5

Je trouve qu’il manque des OS de type BSD (FreeBSD ou autres) mais ces derniers ne devraient pas tarder à être disponibles.

Je suis pour ma part partie sur une Ubuntu 8.04 et moins de 10 minutes après la validation de la demande, le serveur était prêt à être utilisé avec un bel accès SSH.

Premiers tests

Au niveau réseau, les caractéristiques sont conformes:

  • Premier test IPerf: 4 Mbps.
  • Delaie de transit moyen (depuis la france): 20ms

Localisation du serveur (source). Comme on peut le voir mon serveur est hébérgé dans Paris.

CPU:

$ cat /proc/cpuinfo
processor    : 0
vendor_id    : AuthenticAMD
cpu family    : 15
model        : 65
model name    : Dual-Core AMD Opteron(tm) Processor 8218
stepping    : 3
cpu MHz        : 2593.498
cache size    : 1024 KB
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 1
wp        : yes
flags        : fpu de tsc msr pae cx8 apic cmov pat clflush mmx fxsr sse sse2 ht nx mmxext fxsr_opt 3dnowext 3dnow up pni cmp_legacy cr8legacy ts fid vid ttp tm stc
bogomips    : 5188.66

Mémoire:

$ free
             total       used       free     shared    buffers     cached
Mem:        262288     200888      61400          0      38408     116648
-/+ buffers/cache:      45832     216456
Swap:       634556         64     634492

Espace disque:

$ df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/xvda1             2466700    825500   1641196  34% /
varrun                  131144        56    131088   1% /var/run
varlock                 131144         0    131144   0% /var/lock
udev                    131144        20    131124   1% /dev
devshm                  131144         0    131144   0% /dev/shm
/dev/xvdb              5160576    141440   4756992   3% /srv/

Quelques installations plus tard, j’ai mes services SVN et FTP qui sont opérationnels.

Après 15 jours…

15 jours plus tard, le serveur est fiable (aucune coupure de service, uptime de 15 jours…).


Disponibilité du serveur

A partir de l’interface d’administration Web de Gandi on a accès à des graphes pour la l’occupation CPU, l’utilisation du disque et du réseau:

Conclusion

Le service d’hébergement de Gandi est très simple à installé, quelques minutes suffisent pour disposer de son propre serveur. Je trouve le système de « parts » très flexible et conjugué avec les graphes de supervision, il permet de faire évoluer finement les caractéristiques de son serveur en fonction des besoins.