Communications client-serveur lors de l'installation » Historique » Version 4
Christophe Martin, 20/09/2010 17:09
1 | 1 | Christophe Martin | h1. Communications client-serveur lors de l'installation |
---|---|---|---|
2 | |||
3 | Dans le principe : |
||
4 | |||
5 | 4 | Christophe Martin | Tout démarre sur le client. |
6 | 2 | Christophe Martin | |
7 | 4 | Christophe Martin | L'application, le script de setup, le paquet contient une clef secrete appelée @register-key@ |
8 | 1 | Christophe Martin | |
9 | 4 | Christophe Martin | Le script obtient le logon dans l'annuaire LDAP de l'utilisateur principal de l'ordinateur. |
10 | |||
11 | Le script fait une connexion ssh |
||
12 | * au serveur de sauvegarde, |
||
13 | * en utilisant le clef secrete @register-key@ |
||
14 | * vers le compte @backuppc@ |
||
15 | * demande l'exécution d'une hypothétique commande de la forme OS:logon |
||
16 | |||
17 | Le serveur exécute alors une commande spéciale associée à la clef secrete, sous le compte backuppc. |
||
18 | |||
19 | Cette commande récupère par la variable d'environnement SSH_ORIGINAL_COMMANDE passée par sshd le paramètre OS:logon |
||
20 | |||
21 | Cette commande effectue alors toute une série de vérifications sur le client, l'OS demandé et le logon, etc... et si tout va bien répond : |
||
22 | |||
23 | 1 | Christophe Martin | <pre> |
24 | success |
||
25 | </pre> |
||
26 | 4 | Christophe Martin | Sur la première ligne. |
27 | 3 | Christophe Martin | |
28 | 4 | Christophe Martin | NB Tout autre réponse du serveur doit être considérée comme un message d'erreur. L'ensemble de cette ligne et les suivantes constituent alors le message d'erreur. |
29 | |||
30 | Quand la première ligne est « @success@ » viennent ensuite dans un ordre non spécifié des lignes de la forme @mot-clef:valeur@. pour l'instant sont définis les mots-clef suivants : |
||
31 | * @key@ Il s'agit de la clef publique correspondant à la clef privée utilisée par le serveur pour effectuer les sauvegardes. Cette clef devra être utilisée dans le fichier @~bckpciuem/authorized_keys@ pour affecter les connexions du serveur à la commande de backup/restauration « @rsyncsend.sh@ » |
||
32 | 3 | Christophe Martin | * @url@ L'URL que l'utilisateur doit visiter pour personnaliser ses sauvegardes. |
33 | 4 | Christophe Martin | |
34 | Le client analyse la réponse du serveur et prend les mesures qui s'imposent. |
||
35 | 3 | Christophe Martin | |
36 | 2 | Christophe Martin | h1. exemple de commande et dialogue |
37 | 3 | Christophe Martin | |
38 | <pre> |
||
39 | su bckpciuem -c "env SSH_AUTH_SOCK= ssh -x -a -i register-key -l backuppc dugong mac:cmartin" >"/tmp/resultat.$$" 2>&1 |
||
40 | </pre> |
||
41 | Le serveur répond |
||
42 | <pre> |
||
43 | success |
||
44 | url: http://dugong.univ-brest.fr/backuppc/?host=dormeur |
||
45 | key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDEBV4umLQWumkHBgznsLNaNZn9pxkLpmPWO09Sqft7OFX/HUcfOF040nscxu7MyMI4Y8TzhMGDtMertYo+PdGTEfg1qyjPgUrH4xLoyiBJ6ygsZiw6YK7IsBPgmGXlHMgBciJnJMaNAyOvLIPxua34Nxp1QmY3i0hiqO/qU5jtIp4nXSFIIvd+1ql/kvO4GDKtSGsiEpgmduOxWX1Z9cYa/F0TAPScJ5cHIO6FmeePC8xIaBEsaunFQt3XfFydVCnap97YUY9gbN6tnUhmb3T9/W9LMkgm8CfR1cbZTSX6xcjs+Za/ALKizMvV6750eqczXqg+nUIjb5Rnf2F7W/0z backuppc server to client dormeur ssh key" |
||
46 | 1 | Christophe Martin | </pre> |