Un moyen simple de transférer des fichiers (ou n'importe quel type de données) entre deux ordinateurs connectés par un réseau IP est d'utiliser netcat.
Version simple:
recipient$ nc -l -p $RECIPIENT_PORT > $FILE
sender$ cat $FILE | nc -q0 $RECIPIENT_ADDRESS $RECIPIENT_PORT
Plusieurs fichiers avec compression:
recipient$ nc -l -p $RECIPIENT_PORT | gzip -c -d | tar -x
sender$ tar -c $FILES | gzip -c | nc -q0 $RECIPIENT_ADDRESS $RECIPIENT_PORT
gzip peut très bien être remplacé par bzip2 avec les même options. On peut aussi utiliser l'option -z (ou -j) de tar à la place de gzip (bzip2) mais il parait que c'est moins portable.
Plusieurs fichiers de manière "sécurisée":
recipient$ nc -l -p $RECIPIENT_PORT | gpg --decrypt | tar -x
sender$ tar -c $FILES | gpg -s -e -r $RECIPIENT | nc -q0 $RECIPIENT_ADDRESS $RECIPIENT_PORT
À noter que gpg compresse déjà les données donc faire passer le tout par gzip avant ou après est normalement inutile. Pour contrôler la compression, mieux vaut utiliser directement les options de gpg. Les données peuvent quand même être corrompue pendant le transfert et on ne s'en rendra compte qu'à la fin donc évitez d'utiliser cette méthode pour transférer des gros fichiers via des réseaux pas trop fiables (à moins d'avoir envie de recommencer plusieurs fois). Un snc (secure netcat) serait plus adapté pour ce genre d'utilisation mais je sais pas si ça existe déjà.
Remplacez $RECIPIENT_ADDRESS par l'adresse IP (ou le nom DNS) du destinataire, $RECIPIENT_PORT par le port, $FILE(S) par le(s) nom(s) de fichier(s) à transférer et $RECIPIENT par le nom du destinataire.
On peut aussi inverser qui "écoute" et qui se connecte pour que le destinataire établisse la connexion (de manière à passer outre certains firewalls):
recipient$ nc -q0 $SENDER_ADDRESS $SENDER_PORT > $FILE
sender$ cat $FILE | nc -l -p $SENDER_PORT
Normalement cette astuce devrait aussi fonctionner sous Windows mais j'ai pas testé (est-ce que le shell Windows permet les redirections de flux ?).
# ssh aussi
Posté par vic (site web personnel) . Évalué à 1.
Exemple : sftp fichier user@machine:/home/user/temp
On peut transférer des répertoires avec l'option -r
Moyennant une autre astuce le transfert peut se faire sans mot de passe ce qui permet par exemple d'automatiser un transfert. Je vous laise consulter le man pour ca.
[^] # Re: ssh aussi
Posté par Krunch (site web personnel) . Évalué à 2.
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
# ILLISIBLE
Posté par Julien Hamard . Évalué à 2.
Ca donne pas trop envie de lire.
En utilisant SSH il y a aussi SCP
http://people.via.ecp.fr/~alexis/formation-linux/ssh.html#AEN7749(...)
[^] # Re: ILLISIBLE
Posté par Krunch (site web personnel) . Évalué à 2.
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.