Je cherche un moyen simple mais direct de transférer un fichier de toute nature et de toute taille entre deux personnes. Si possible, ne disposant que d'un navigateur Web, sans avoir entre-temps le fichier stocké sur une troisième machine.
Je souhaite le faire sans obliger les utilisateurs finaux à se connecter à un troisième serveur, car de cette façon, les données circuleront à travers la machine xyz.com
, ce qui pourrait ralentir le transfert et poser des risques de sécurité.
Je voudrais éviter de configurer un serveur FTP entier juste pour des transferts de fichiers occasionnels. Jusqu'à présent, j'ai découvert JetBytes , Click2Copy et PipeBytes . Ces services Web devraient faciliter le transfert. Cependant, le trafic passe par leurs serveurs, ils ne sont donc pas bons pour ce que je veux.
Je veux que le transfert soit direct entre le client et moi. Le cryptage serait une fonctionnalité supplémentaire intéressante.
Je sais que ce faisant, je dois ouvrir un port sur mon ordinateur et configurer une redirection de port bit sur mon routeur. Cependant, la traversée NAT serait également un ajout intéressant.
Ma question est:
Existe-t-il un moyen simple pour un seul transfert de fichier direct de bout en bout entre deux ordinateurs, en évitant les tiers? (si possible, avec chiffrement et traversée NAT)
la source
Réponses:
La façon la plus sale si vous utilisez * nix est d'utiliser netcat (
nc
) pour envoyer le fichier à l'hôte distant. Mais si vous voulez un chiffrement, vous pouvez aussi utiliser SCP / SSH.Vous devez comprendre que si l'une des parties est derrière un NAT et que vous ne souhaitez pas configurer la redirection de port, il est impossible d'établir une connexion directe sans vous connecter à un serveur tiers au préalable. Le serveur n'a pas nécessairement à relayer le trafic (voir http://en.wikipedia.org/wiki/UDP_hole_punching ) et la plupart d'entre eux ne le font pas car la bande passante est coûteuse.
Par exemple, Skype essaiera d'utiliser de nombreuses méthodes de traversée NAT pour établir une connexion directe avant de retomber sur le relais du trafic via leurs super nœuds. (Skype est un réseau très P2P.)
Quant au problème de compte. Je suppose que c'est inévitable. Toutes les méthodes nécessiteront une sorte de configuration ou d'installation qui sont généralement plus difficiles que l'enregistrement d'un compte.
la source
Les solutions basées sur WebRTC donnent ce dont vous avez besoin, peut-être sous la forme la plus simple. Vous vous connectez à un site Web tiers, mais uniquement pour connecter les pairs et non pour la partie de transfert de fichiers.
Exemples de services:
https://www.justbeamit.com/
https://www.sharedrop.io/
EDIT: Je comprends que cela ne répond pas à toutes les exigences de l'OP mais il existe une autre solution très utilisable: Firefox Send . En utilisant cela, vous téléchargez votre fichier sur un serveur tiers sous une forme cryptée. Le service vous donne une URL que vous pouvez partager avec d'autres. L'URL contient également la clé pour déchiffrer le fichier. Ils peuvent ensuite télécharger le fichier. Le fichier est automatiquement supprimé après un nombre défini de téléchargements ou après 24 heures. Le serveur ne voit jamais la clé et ne peut donc pas décrypter le fichier. L'avantage de l'utilisation d'un serveur tiers est que la partie de partage et la partie de téléchargement n'ont pas besoin d'être en ligne simultanément.
la source
Vous pouvez synchroniser des fichiers entre des ordinateurs distants à l'aide d'un rsync. Cet utilitaire est disponible pour Windows dans cygwin , ou vous pouvez l'installer avec le cwRsync préemballé .
Je laisserai ma réponse précédente ici intacte, mais compte tenu des récentes révélations sur la NSA, je ne recommanderais plus Skype pour les transferts de fichiers sécurisés.
Vous pouvez envoyer un fichier directement à une autre personne à l'aide de Skype . Skype fonctionne parfois même lorsque les deux utilisateurs sont derrière NAT. Si vous êtes suffisamment sûr pour ouvrir un port sur votre routeur, cela augmentera les chances de négocier une connexion directe.
Plus largement, de nombreux programmes de chat incluent un mécanisme de partage / envoi de fichiers. La plupart ne fournissent pas de cryptage par défaut comme Skype. Mais tant que vous et votre destinataire avez le même client de chat, vous disposez d'un "outil simple" pour partager des fichiers.
la source
Si votre ssh Linux / unix en cours d'exécution est un moyen sûr de transmettre des fichiers dans un modèle client-serveur. port vers l'avant nécessaire sur les connexions entrantes si derrière NAT cependant.
la source
FTP. Il existe depuis des lustres. C'est aussi dangereux que ça. Et c'est simple.
Téléchargez Filezilla, qui peut fonctionner à la fois comme serveur et comme client. Assurez-vous que votre pare-feu est configuré pour lui permettre de sortir. Demandez à votre destination de télécharger Filezilla et de vous connecter à votre serveur Filezilla. Transférer le fichier.
Juste comme ça, tous vos morceaux sont jetés sur Internet pour que tous les voient comme autant de linge qui flotte dans la brise dans l'arrière-cour.
la source
J'ai écrit une fois un article de blog sur le transfert de fichiers avec le serveur HTTP intégré de Python . En bref, installez Python, ouvrez une invite de commande,
cd
dans le répertoire contenant les fichiers à partager et à exécuterpython -m SimpleHTTPServer
. Très pratique si vous êtes sous Linux ou OS X car Python est installé par défaut (il est également facile à installer sous Windows).Si vous êtes derrière un NAT, vous devez configurer la redirection de port sur votre routeur ou quelque chose (que je suppose que vous connaissez déjà).
la source
Un serveur Web qui peut effectuer une traversée UPnP NAT fonctionnerait, le récepteur n'aurait besoin que d'un navigateur Web. Comme un cryptage bonus est facile avec un serveur Web, utilisez simplement https.
Voici un exemple (payware 99USD) RaidenHTTPD
la source
La synchronisation Bit Torrent synchronise les dossiers sur le Web. Les fichiers sont également cryptés. Vérifiez-le.
http://www.bittorrent.com/sync
la source
Vous devriez vérifier http://filesovermiles.com Il semble faire exactement ce que vous voulez. Transfert P2P direct via navigateur (flash).
la source
Vous pouvez essayer Folder Transfer depuis http://www.foldertransfer.com , qui peut diriger le transfert d'un fichier entre deux ordinateurs sur Internet. Il peut pleinement répondre à vos besoins.
la source
Pourquoi personne ne mentionne le transfert IRC DCC? https://en.wikipedia.org/wiki/Direct_Client-to-Client , vous obtenez votre client HexChat, l'installez sur les deux ordinateurs, vous entrez disons Freenode puis créez un canal pour les deux à rejoindre, puis faites un clic droit sur le autre "contact / PC" et envoyer le fichier. Ancienne technologie qui fonctionne toujours, à part Hyperterminal pour la connexion directe par ligne commutée, vers 1995-1998, DCC était le moyen le plus courant pour télécharger de la musique et des films.
la source
Magic Wormhole peut être utilisé pour cela. Sur Ubuntu, vous pouvez installer via apt-get (il est également disponible via Python pip):
Pour envoyer un fichier, vous dites simplement quoi envoyer
Cela générera la ligne de commande que vous devez exécuter sur l'extrémité de réception. Cela comprend une clé secrète (qui est telle que vous pouvez également la lire par téléphone). Vous ne spécifiez aucun nom d'ordinateur ni aucune adresse IP. Wormhole établit automatiquement la connexion et chiffre les fichiers à transférer.
https://magic-wormhole.readthedocs.io/en/latest/welcome.html
la source