Changes

From SME Server
Jump to navigationJump to search
7,429 bytes added ,  18:30, 22 May 2012
no edit summary
Line 9: Line 9:     
===Comment devenir un site miroir?===
 
===Comment devenir un site miroir?===
{{Incomplete}}
+
====PRéparer votre système====
 +
<ol><li>Créeer un emplacement de stockage pour votre miroir<br/>
 +
<pre>mkdir -p {/path/to/your/data/store/}</pre>
 +
</li><li>Créer un nouvel utilisateur pour faire vos mises à jour de miroir. Si vous utilisez SME server vous pouvez utiliser le server-manager pour cela.
 +
</li><li>Maintenant télécharger le script ftpsync et tous les fichiers requis:
 +
wget http://contribs.org/ftpsync.tgz
 +
</li><li>Extraire l'archive dans le dossier de l'utilisateur
 +
tar zxof ftpsync.tgz
 +
</li><li>Rendre l'utilisateur propriétaire du dossier
 +
chown -R {user} bin etc log .ssh {/path/to/your/data/store/}
 +
</li><li>Nous avons installé tout ce qui est nécessaire. Il reste juste à paramétrer dans le fichier de configuration (etc/ftpsync.conf) le chemin vers les données  (TO) in the config file . Utilisez votre éditeur favori à cette fin (mcedit, vim, vi, pico ...).</li></ol>
 +
 
 +
====Tester votre configuration====
 +
<ol><li>Maintenant c'Est le moment de faire votre synchronisation initiale ( et ainsi tester que le script fait ce qu'il est supposé faire)
 +
<pre>su - {user} -s /bin/bash
 +
~/bin/ftpsync</pre>
 +
</li><li>Vérifiez ensuite les logs pour à la recherche d’erreurs. Comme cette première synchro va prendr eplsuieurs heures, vous pouvez faire ceci dans une autre fenêtre terminal.:
 +
cd ~/log
 +
cat rsync-ftpsync.error.0
 +
</li></ol>
 +
 
 +
====Configurer le serveur web====
 +
Vous devez configurer votre serveur web pour rendre les fichier accessible au public.
 +
 
 +
Pour cela vous devez penser à activer en même temps l'option FollowSymLinks dans la configuration d'Apache.
 +
 
 +
Si votre miroir est hebergé sur un SME server 7.x (ou ultérieur), dans une ibay, vous pouvez faire ceci en utilisant la commande suivante suite à la création de l'ibay:
 +
 
 +
db accounts setprop {ibayname} FollowSymLinks enabled
 +
signal-event ibay-modify {ibayname}
 +
 
 +
====Garder votre miroir à jour====
 +
Le script ftpsync permet deux méthodes de mise à jour : push ou pull.
 +
{{Note box|Nous préférons que vous configuriez votre miroir en mode push car :
 +
* La synchronisation ne démarre que quand il y a des changements
 +
* Les changements sont propagés en temps réel ou presque
 +
* Les changements peuvent être fait par étapes (synchroniser les données d'abord, les repodata ensuite)
 +
* Moins de miroirs hors dates pour yum}}
 +
=====Pourquoi nous préférons push=====
 +
First some background on ssh. Ssh allows people to connect to accounts on different machines in a secure way. Not only are passwords never passed in the clear, once you connect to a machine you are basically guaranteed that future connections will be to the same machine. This prevents many man-in-the-middle attacks.
 +
 
 +
One capability ssh has is the ability for a user to take the public identity key for a user on another machine and add it to a file of authorized keys on your machine. By default, the user on the other machine (who has the private identity key associated with the public identity key given to you) then has login privileges to your account. It is possible, though, to add text to an authorized key restricting the type of access a person accessing your account using that key has.
 +
 
 +
So to protect the downstream mirror, the key provided by the upstream mirror has text added to it to limit it to only give the person accessing your account permission to do one thing — start the program on your machine that updates your mirror. Even if someone (an evil third party) was able to break the key, the most they could do is to start the mirror program on your machine. You do not even have to worry about multiple copies of the program being started as a lockfile is used.
 +
 
 +
On the upstream end, rsync can be configured to restrict who can mirror a given area by username and password. These are totally separate from /etc/passwd so a push server doesn't have to worry about giving others access to their machine. As it is set up, the username and password are passed in the clear. This shouldn't be a problem though, as the worst that can happen is that a third party gains the ability to mirror the SME Server packages from that site.
 +
 
 +
(source: [http://www.debian.org/mirror/push_mirroring Debian: Push mirroring])
 +
 
 +
=====Comment push fonctionne=====
 +
Voici une description courte du processus de push:
 +
# Le miroir maitre met à jour le fichier timestamp
 +
# Le miroir maitre initie le miroir tiers 1 pour commencer l'étape 1 de synchronisation (wait)
 +
# Le miroir tiers 1 rsync tout sauf les repodata des cibles désignées  (n'efface rien)
 +
# Le miroir tiers 1 initie le miroir tiers 2 pour commencer l'étape 1 de synchronisation (wait)
 +
# Répétions des étapes précédentes pour toutes les miroirs tiers en dessous du niveau 2
 +
# Le miroir maitre initie le miroir tiers 1 pour commencer l'étape 2 de synchronisation
 +
# Le miroir tiers 1 rsync tout des cibles désignées  (avec effacement)
 +
# Le miroir tiers 1 initie le miroir tiers 2 pour commencer l'étape 2 de synchronisation
 +
# Répétions des 3 étapes précédentes pour toutes les miroirs tiers en dessous du niveau 2
 +
# Le miroir maitre verifie la mise à jour des miroirs et génère une liste des miroirs à jour
 +
 
 +
=====Configurer pour push=====
 +
Le système push utilise une paire de clefs SSH publique et privée pour la communication, pour cela vous devez exécuter quelques commandes de configuration supplémentaires:
 +
<ol><li>D’abord vous devez avoir SSH de configuré et en service sur votre serveur. Si vous utilisez SME server poru votre miroir vous devrez autorisé l’accès à distance par le server-manager.  </li><li>Vous devrez aussi autoriser bash comme shell pour l'utilisateur pour la synchronisation du miroir.<br /> Si vous utilisez SME server, vous pouvez le faire ainsi :
 +
db accounts setprop {user} Shell /bin/bash
 +
signal-event user-modify {user}
 +
</li><li>Vous devrez aussi ajouter la clef dans le fichier  authorized_keys file de cet utilisateur
 +
su - {user} -s /bin/bash
 +
cat .ssh/pushmirror-*.pub >> .ssh/authorized_keys
 +
</li></ol>
 +
 
 +
=====Configurer pour pull=====
 +
{{Note box|Nous préférons que vous configuriez votre miroir en mode push, mais si vous ne pouvez le faire ou avez d'Autres raisons pour ne pas le faire, vous pouvez configurer votre miroir en mode pull.}}
 +
Configurer un miroir en mode pull est simple. Il suffit de mettre en place un tâche cron toutes les 2 heures qui fasse la même commande que vous avez fait la première fois, vous pouvez ajouter une ligne comme ceci:
 +
 
 +
1 */2  * * *  {user} ~/bin/ftpsync
 +
 
 +
Attention d’utiliser les templates-custom pour /etc/crontab si vous utilisez SME Server.
 +
 
 +
====Advertising your mirror====
 +
Après que votre miroir soit synchronisé, faites le nous savoir, en remplissant un formulaire de bogue sur bugs.contribs.org dans la catégorie site SME "SME Website",  ou simplement en cliquant sur  {{BugzillaFileBug|product=SME%20web%20site|component=Mirrors|comment=I%20would%20like%20to%20host%20a%20mirror%20for%20contribs.org.%0D%0DName%20of%20site:%0DPrimary%20contact%20(name):%0DPrimary%20contact%20(email):%0DLocation%20(country):%0DBandwidth%20available:%0DSite%20URL%20(for%20releases%20dir):%0D%0DHostname%20(for%20ssh):%0DUsername%20(for%20ssh):%0DPort%20(for%20ssh):|title=<b>ce lien link</b>}}.
 +
Merci de fournir les renseignements suivant:
 +
* nom du site
 +
* contact principal nom/email
 +
* localisation/pays
 +
* bande passante disponible pour le miroir
 +
* URL pointant vers le site (pour tester les mises à jour et pour yum)
 +
* hôte pour se connecter (pour ssh)
 +
* port de connexion (pour ssh)
 +
* utilisateur pour se connecter (pour ssh)
 +
 
 +
===Options de Configuration===
 +
Le fichier de configuration ftpsync est dans ~/etc/ftpsync.conf. Le fichier de configuration ftpsync a un nombre d'options que vous pouvez modifier. Vous devez en avoir vu certaines en modifiant le dossier de stockage des données.
 +
Le fichier de configuration est bien documenté.
 +
 
   −
Après aue votre miroir soit synchronisé, faites le nous savoir, en remplissant un formulaire de bogue sur bugs.contribs.org dans la catégorie site SME "SME Website",  ou simplement en cliquant sur  {{BugzillaFileBug|product=SME%20web%20site|component=Unknown|comment=I%20would%20like%20to%20host%20a%20mirror%20for%20contribs.org.%20The%20root%20address%20of%20my%20mirror%20is:|summary=New%20mirror%20location|title=ce lien}}. Merci!
      
===Important===
 
===Important===
Super Admin, Wiki & Docs Team, Bureaucrats, Interface administrators, Administrators
3,228

edits

Navigation menu