[Résolu] NTP Client sur serveur Debian

NTP Client sur serveur Debian [Résolu] - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 27-04-2012 à 11:34:16    

Bonjour à tous,
 
j'ai des serveurs Debian que je souhaite garder à l'heure ;)
 
Aujourd'hui, j'utilise ntpdate-debian, qui est lancé via cron tous les jours:
 

@reboot /usr/sbin/ntpdate-debian
00 01 * * * /usr/sbin/ntpdate-debian


 
Je trouve pas ça hyper propre, et j'ai lu je ne sais plus où qu'il vallait mieux utiliser le démon ntp, et ne lancer ntpdate-debian qu'au démarrage.
 
Comment faites-vous, de votre côté, pour avoir des machines à l'heure ?
 
Merci !  :hello:


Message édité par remi_ le 29-04-2012 à 11:57:45
Reply

Marsh Posté le 27-04-2012 à 11:34:16   

Reply

Marsh Posté le 27-04-2012 à 11:50:31    

« If it works, don't break it. »


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 27-04-2012 à 12:00:38    

daemon ntp en background.
 
http://www.isalo.org/wiki.debian-f [...] ?title=NTP


---------------
Blood is rushing into your muscles and that's what we call The Pump. Your muscles get a really tight feeling, like your skin is going to explode any minute ...
Reply

Marsh Posté le 27-04-2012 à 18:51:41    

cron / ntpdate-debian aussi [:spamatounet] ça fait un démon en moins qui tourne.


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 27-04-2012 à 22:51:12    

Surtout pas cron pour Ntp ...

Reply

Marsh Posté le 27-04-2012 à 23:15:46    

bardiel a écrit :

cron / ntpdate-debian aussi [:spamatounet] ça fait un démon en moins qui tourne.


 
daemon ntp (et j'ai fait 2 serveurs ntp en strate 2 pour mes autres serveurs).
Perso j'ai ma config ntp aux petits oignons et j'installe la même sur tous tes serveurs pour synchroniser leurs horloges.
 
Le problème de ntpdate, c'est qu'à chaque fois que tu le lances, ça te fait un décalage brutal de l'horloge. Et ça, en cas de retour en arrière de l'heure, ça va faire des problèmes de cohérence sur toutes les dates de ton système (genre tes systèmes de fichiers).  
Même si c'est minime, ça peut créer des effets de bords pénibles, par exemple pour un processus de réplication ldap, une synchronisation de fichiers, etc.
 
Le démon ntp n'utilise aucune resource système et va corriger l'heure tout doucement par petit pas sans incohérence.  
Et la logique qu'il y a derrière le démon ntp fait que la précision est excellente, même si ton horloge système est imprécise.

Reply

Marsh Posté le 28-04-2012 à 07:42:48    

trictrac a écrit :

Surtout pas cron pour Ntp ...


Sauf à avoir un serveur en carton qui perd tout le temps l'heure, en pratique tu as quoi ? 1-2 secondes de différence par jour ?
 
C'est sûr que sur une machine qui ne dispose pas de sauvegarde d'horloge interne (NAS, caméra IP, ...) la différence brutale peut amener des problèmes.
Pour du serveur et pour peu que la pile du BIOS ne soit pas flinguée, le cron t'évitera de lancer un service en plus.


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 28-04-2012 à 14:35:37    

il tombe bien ce topic, j'étais prêt à mettre un rdate dans un cron pour mon petit serveur personnel mais l'histoire du démon qui corrige en continu, ça me séduit.

 

la pendule de la carte-mère dérive assez sérieusement, dix minutes de décalage sur quelques mois. un démon qui ne fait aucune I/O et qui règle le pb une fois pour toute ça me paraît mieux.
le PC est très puissant pour l'usage (VIA C7 1.8GHz, 1Go ddr2, disque 1To 7200 tours) donc un démon de plus ne change rien, si j'avais 32 ou 64Mo de RAM je ferais peut-être le cron.

 

de plus, je pourrai synchro mon desktop sur le démon.


Message édité par blazkowicz le 28-04-2012 à 14:38:08
Reply

Marsh Posté le 29-04-2012 à 11:57:14    

Salut,
 
merci pour vos réponses.
 
Je vais donc basculer sur ntp en mode démon, qui se synchronise lentement mais surement ;)

Reply

Marsh Posté le 29-04-2012 à 20:51:32    

bardiel a écrit :


Sauf à avoir un serveur en carton qui perd tout le temps l'heure, en pratique tu as quoi ? 1-2 secondes de différence par jour ?
 
C'est sûr que sur une machine qui ne dispose pas de sauvegarde d'horloge interne (NAS, caméra IP, ...) la différence brutale peut amener des problèmes.
Pour du serveur et pour peu que la pile du BIOS ne soit pas flinguée, le cron t'évitera de lancer un service en plus.


C'est pas pour ça, c'est parce qu'un démon se synchronisé de manière aléatoire, alors que le cron, pour les pool Ntp, c'est autant de million de requête à la même mille seconde, puis plus rien ...

Reply

Marsh Posté le 29-04-2012 à 20:51:32   

Reply

Marsh Posté le 30-04-2012 à 10:39:30    

Si tu passes par du script d'installation, tu peux introduire une notion d'aléatoire dans l'horaire.
Pour les téléchargements d'ISO "lourdes pour le réseau" chez nous on a du script du genre :

Citation :

#!/bin/sh
 
# ROOT ou pas ROOT ??
id | grep -c uid=0 >/dev/null
if [ $? -gt 0 ]; then
 echo ""
 echo "Vous devez être root pour executer ce script..."
        exit 1
fi
 
cat > /tmp/download.sh << "EOF"
#!/bin/sh
(mon script download.sh)
 
EOF
 
chmod u+x /tmp/download.sh
 
hour=$(expr $(perl -l -e "print int(rand(7))" ) + 19)
min=$(perl -l -e "print int(rand(60))" )
 
if [ $min -lt 10 ];then
 min=0$min
fi
 
if [ $hour -ge 24 ];then
        hour=$(expr $hour - 24)
fi
 
at $hour:$min -f /tmp/download.sh


Bon j'en ai coupé de gros morceaux, mais c'est une base...
Rien ne t'empêche de modifier le at $hour:$min par une routine qui va t'inclure ton cron à un horaire "aléatoire", là entre 19h et 6h du matin.
Voire il faut penser à inclure plusieurs fois le ntpdate-debian dans la journée si la machine est en carton et que le décalage est continu.
 
Autre chose à penser : avoir son serveur NTP... à l'heure :o


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 30-04-2012 à 11:30:16    

bardiel a écrit :

Si tu passes par du script d'installation, tu peux introduire une notion d'aléatoire dans l'horaire.
Pour les téléchargements d'ISO "lourdes pour le réseau" chez nous on a du script du genre :

Citation :

#!/bin/sh
 
# ROOT ou pas ROOT ??
id | grep -c uid=0 >/dev/null
if [ $? -gt 0 ]; then
 echo ""
 echo "Vous devez être root pour executer ce script..."
        exit 1
fi
 
cat > /tmp/download.sh << "EOF"
#!/bin/sh
(mon script download.sh)
 
EOF
 
chmod u+x /tmp/download.sh
 
hour=$(expr $(perl -l -e "print int(rand(7))" ) + 19)
min=$(perl -l -e "print int(rand(60))" )
 
if [ $min -lt 10 ];then
 min=0$min
fi
 
if [ $hour -ge 24 ];then
        hour=$(expr $hour - 24)
fi
 
at $hour:$min -f /tmp/download.sh


Bon j'en ai coupé de gros morceaux, mais c'est une base...
Rien ne t'empêche de modifier le at $hour:$min par une routine qui va t'inclure ton cron à un horaire "aléatoire", là entre 19h et 6h du matin.
Voire il faut penser à inclure plusieurs fois le ntpdate-debian dans la journée si la machine est en carton et que le décalage est continu.
 
Autre chose à penser : avoir son serveur NTP... à l'heure :o


 
Du coup, tu as un script perso, un démon atd pour pouvoir lancer ntpdate (qui est deprecated) aléatoirement dans le but d'éviter d'avoir un démon ntp en plus.  :whistle: Joli, pas trop compliqué.
 
Sinon t'installe le paquet ntp, et tu te fais une bonne conf que tu recopies à l'identique sur tes serveurs :whistle:  
Comme dit avant, ntpd garde continuellement ton heure à jour.  
A partir du moment où tu le lances, tu dois attendre 30 minutes que ça se stabilise, et tu arrives à une très bonne précision (largement inférieur à 1ms avec des bons serveurs de référence).
 
C'est nécessaire dès que tu as des opérations sensibles basées sur le temps (réplication, synchronisation, etc), alors autant uniformiser la conf et utiliser ntpd partout non ?

Reply

Marsh Posté le 30-04-2012 à 13:44:43    

Bah chacun fait comme il l'entend [:spamatounet]  
Perso (enfin au boulot) ça tourne sur du cron avec ntpdate-debian réglé pour se mettre à jour entre 23h50 et 23h59. En précision on tourne dans les 10ms donc bon c'est pas "critique" mais amplement suffisant.
 
En fait on a beaucoup plus de mal à maintenir une heure correcte sur le réseau sur les machines Windows (vieillissantes et bon changer la pile du BIOS n'apporte pas grand chose) que sur les serveurs Debian.
 
Pour les machines clientes Ubuntu, c'est du ntpd mais j'ai remarqué que parfois j'avais plus de décalage horaire qu'au niveau des serveurs (allant jusqu'à 1 minute). La question a été posé à Canonical (à qui on paye un support technique), pas de réponse pour le moment...
 
Donc bon pour du serveur, je préfère rester "à l'ancienne" avec du ntpdate-debian, à défaut d'avoir un récepteur MSF (mais là c'est la solution riche ou de grand bricoleur)


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 30-04-2012 à 16:41:01    

la solution de bricoleur, j'ai vu ça dans un magazine.
ils se sont contentés d'utiliser un récepteur GPS branché sur un "micro-contrôleur", le genre de micro-contrôleur avec de l'ethernet et de l'USB.
 
et hop, un tout petit serveur de temps pour tout le réseau, moins de 100 euros avec un joli boîtier compris.

Reply

Marsh Posté le 30-04-2012 à 20:21:40    

bardiel a écrit :

Pour les machines clientes Ubuntu, c'est du ntpd mais j'ai remarqué que parfois j'avais plus de décalage horaire qu'au niveau des serveurs (allant jusqu'à 1 minute). La question a été posé à Canonical (à qui on paye un support technique), pas de réponse pour le moment...


 
Tu as fixé ta configuration et la liste de serveurs, ou tu as laissé le défaut avec les "pools" ?
Aussi, si dans la liste des serveurs, tu as ton horloge locale, et qu'elle déconne à plein tube, ntpd pense que c'est les serveurs de temps qui sont faux, et il arrête de synchroniser. J'ai remarqué ça sur des machines virtuelles.
On peut voir tout ça avec la commande "ntpdc -p 0" et "ntpq -p".

Reply

Marsh Posté le 30-04-2012 à 21:33:14    

Il n'y a pas l'horloge locale.
Les serveurs NTP sont des serveurs 2003 dédiée à cette tâche au niveau national, synchronisé avec un récepteur MSF.


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed