ASR1 - Déroulement TD n 3 Semestre 1 Département Informatique IUT Bordeaux 1 17 octobre 2011 Résumé Commandes Geany Transfert de fichiers : FTP, ssh et dérivés (sftp, scp), rsync. Table des matières 1 Commandes Geany 2 2 Travailler à distance 3 2.1 Autrefois.............. 3 2.2 SSH................ 4 2.3 ssh................. 4 2.4 Génération de clés, utilisation.. 4 3 Transferts de fichiers 4 3.1 FTP................ 5 3.2 Sftp, scp : commandes basées sur ssh.............. 5 3.2.1 scp............. 5 3.2.2 sftp............ 5 3.3 rsync................ 5 1
1 Commandes Geany Il y a différentes catégories d utilisateurs : occasionnels (grand public) professionnels Pour les utilisateurs occasionnels, les logiciels doivent paraître simples, ne pas nécessiter de mémoriser des commandes, être utilisable sans apprentissage. Pour les professionnels, l objectif est d avoir un outil pour travailler efficacement. Ca nécessite généralement un apprentissage, un investissement dans la prise en mains de l outil. Cet apprentissage est rentabilisé par des centaines d usages quotidiens. Par exemple, avec l éditeur Geany, pour duplique la ligne courante vous pouvez utiliser la souris pour amener le pointeur en début de ligne, presser la bouton gauche et déplacer la souris jusqu en fin de ligne, puis aller dans le menu Editer la commande copier, puis la commande coller. faire le même mouvement de souris, puis control-c controle-v, parce que vous connaissez ces deux raccourcis courants. faire directement contrôle-d La dernière solution fait appel à votre mémoire, et a demandé un apprentissage. Mais vous gagnez plusieurs secondes à chaque utilisation, ça va beaucoup plus vite ça ne vous fait pas perdre le fil de ce que vous étiez en train de faire (lire les sous-menus et viser le bon mobilise votre attention visuelle). Il est donc extrêmement important d apprendre (et d utiliser systématiquement) les raccourcis pour les commandes principales, pour les logiciels que vous utilisez constamment. La différence entre un étudiant efficace et un qui ne l est pas, c est que pour faire le même travail, il y en a un qui a aussi le temps de sortir le soir. Ou de terminer le sujet de l épreuve de programmation en temps limité. voir feuille mémo Geany Pour connaitre (et changer) les raccourcis de Geany : Menu Editer > Préférences > Raccourcis 2
Action Raccourci Fichier Nouveau ctrl-n Ouvrir ctrl-o Enregistrer ctrl-s Fermer ctrl-w Éditeur Annuler ctrl-z Refaire ctrl-y Couper ctrl-x Copier ctrl-c Coller ctrl-v Effacer ligne(s) courante(s) ctrl-k Couper ligne shift-ctrl-x Copier ligne shift-ctrl-c Dupliquer ligne ou sélection ctrl-d Effacer fin de ligne shift-ctrl-delete Sélection Tout sélectionner ctrl-a Sélectionner mot shift-alt-w Sélectionner ligne shift-alt-l Sélectionner paragraphe shift-alt-p Format Commenter/Décommenter ligne ctrl-e Augmenter indentation ctrl-i Diminuer indentation ctrl-u Reformater ligne/bloc ctrl-j Rechercher Rechercher ctrl-f Rechercher suivant ctrl-g Rechercher précédent shift-ctrl-g Remplacer ctrl-h Naviguer Début, fin de ligne Home, End Ligne suivante ctrl-l Aller à l accolade correspondante ctrl-b Onglet suivant / précédent Alt-pgup / Alt-pgdwn Construire Compiler F8 Construire F9 Make all shift-f9 Make target shift-ctrl-f9 Exécuter F5 2 Travailler à distance Objectifs : lancer des commandes sur une machine distante où on a un compte ouvrir une session interactive 2.1 Autrefois On utilisait des commandes comme telnet, rlogin, rsh etc. Ces commandes ne sont pas sécurisées, on ne les emploie plus ici. 3
2.2 SSH SSH = Secure Shell. C est en fait un protocole de communication sécurisé, qui établit un canal de communication sûr au travers d un réseau qui ne l est pas, notamment par l usage de clés. Il repose sur la cryptographie asymétrique : La cryptographie asymétrique, ou cryptographie à clé publique, est une méthode de chiffrement qui s oppose à la cryptographie symétrique. Elle repose sur l utilisation d une clé publique (qui est diffusée) et d une clé privée (gardée secrète), l une permettant de coder le message et l autre de le décoder. Ainsi, l expéditeur peut utiliser la clé publique du destinataire pour coder un message que seul le destinataire (en possession de la clé privée) peut décoder, garantissant la confidentialité du contenu. Inversement, l expéditeur peut utiliser sa propre clé privée pour coder un message que le destinataire peut décoder avec la clé publique ; c est le mécanisme utilisé par la signature numérique pour authentifier l auteur d un message. (Wikipedia) La magie sera expliquée en cours de maths (cryptographie) et de réseau. Version SSH-1 en 1995, découverte vulnérable aux attaques en 1998, obsolète. SSH-2 en 2006. Les deux versions sont incompatibles. 2.3 ssh La commande ssh permet d ouvrir une session à distance sur une autre machine $ ssh billaud@ssh.labri.fr Password:... Depuis votre domicile (ou n importe où) vous pouvez travailler sur une machine du département info-ssh1.iut.u-bordeaux1.fr. Note : sous windows, utilisez putty pour ouvrir une session ssh. 2.4 Génération de clés, utilisation Pour générer les clés RSA et DSA, choisir d abord une pass phrase (qui peut être vide) et lancer les commandes ssh-keygen -t rsa ssh-keygen -t dsa qui créent les clés dans le répertoire.ssh ou.ssh2? Les commandes précédentes fabrique deux clés chacune : une clé publique (suffixe id_rsa.pub, id_dsa.pub, et une clé privée (sans suffixe). La clé publique peut être ajoutée dans le fichier authorized_keys d une machine distante, ce qui permettra de s y connecter sans donner de mot de passe (si la passphrase est vide). 3 Transferts de fichiers Nécessité de transférer des fichiers d une machine à l autre (hors répertoires partagés), ou de télécharger des logiciels etc. Serveurs anonymes, accès par compte etc. 4
3.1 FTP Vu au TP précédent. FTP, File Transfer Protocol, est un protocole de transfert de fichier. Par métonymie, FTP désigne aussi une famille de logiciels qui respectent se protocole. ftp historique, interactif, avec les commandes de base put, get, cd, ls, mput, mget etc. des versions interactives améliorées (ncftp, avec complétion, historique, signets etc). des versions interactives graphiques (gftp, filezilla, navigateurs...) des outils non interactifs. Exemple ncftpget ftp://truc.org/pub/readme.txt Le protocole FTP est également connu par les navigateurs Web (transfert en lecture seulement), avec des URL du type ftp://ftp.labri.fr 3.2 Sftp, scp : commandes basées sur ssh SSH (Secure Shell) est un protocole de communication sécurisée, sur lequel se basent plusieurs outils. 3.2.1 scp Secure Copy, ressemble à la commande cp. On peut préciser le nom de la machine (et le compte) où se trouve un fichier ou un répertoire. Exemple $ scp -r billaud@ssh.labri.fr:cours/usi-2010 ~/COURS 3.2.2 sftp SSH FTP : dispose de commandes semblables à celle de FTP. Les outils graphiques (FileZilla, etc) permettent souvent d utiliser SFTP. Depuis l extérieur, passer par le serveur info-ssh1.iut.u-bordeaux1.fr. Attention, le nom sftp est utilisé pour désigner plusieurs protocoles de transfert de fichiers. Ici il désigne SSH File Transfer Protocol il y a aussi Secure File Transfer Protocol et Simple File Transfer Protocol La page de manuel de la commande sftp indique par erreur secure ftp. 3.3 rsync Enfin, plusieurs outils permettent de synchroniser efficacement des répertoires d une machine à une autre, en ne transférant que les fichiers modifiés. Exemple, rsync qui passe par ssh : $ rsync -avz --delete COURS billaud@ssh.labri.fr:archives Copie le répertoire COURS dans le répertoire ARCHIVES du compte indiqué. option -a : récursivement, en mettant les copies à la même date de dernière modification (mode archivage). option -v : en affichant les noms des fichiers transférés au fur et à mesure option -z : en compressant les données pour les tranférer plus rapidement. option delete : en détruisant les fichiers d ARCHIVES qui ne sont plus dans COURS. 5