Comment puis-je exécuter une SCP d'une machine distante à une machine locale lorsque je suis en dehors de mon réseau domestique?

57

Bien que je comprenne comment scp des fichiers vers et depuis mon serveur depuis mon réseau domestique, comment puis-je scp un fichier de mon serveur vers ma machine locale lorsque je suis à l'extérieur, par exemple chez Starbucks?

Bien que je puisse passer de la machine locale au serveur dans ce scénario, je n’ai pas trouvé comment récupérer un fichier chez moi à l’aide de la ligne de commande. Aucune suggestion?

utilisateur98496
la source

Réponses:

86

La façon dont la question est posée est assez déroutante, mais si vous pouvez copier de votre ordinateur local vers le serveur, inversez simplement l'ordre de la ligne de commande.

son scp [de] [à]

scp utilisateur @ homeip: / chemin / vers / fichier / local / chemin /
Sirex
la source
Merci, je vais essayer et confirmer si cela a fonctionné pour moi.
user98496
1
Je pense que la question concerne davantage la configuration de dyndns et la redirection de port ... il ne savait tout simplement pas quoi demander.
RobotHumans
1
C'est vrai, je ne sais probablement pas quoi demander. Je continue d'apprendre. Si vous pouviez donner davantage d'explications sur les ports que je dois transférer (et sur les informations dont j'ai besoin concernant dyndns) afin d'atteindre mon objectif, je vous en serais reconnaissant :-)
user98496
La suggestion en première réponse n'a pas fonctionné. Normalement, lorsque je tape: "scp -r somedir [email protected]: / home / me / Desktop", cela fonctionne bien. Cependant, si j'essaie de le faire depuis une connexion WIFI publique, par exemple Starbucks (et pas à la maison), cela ne fonctionne pas. Qu'est-ce que je fais mal?
user98496
6
RESOLU: La commande qui fonctionne pour moi est la suivante: scp remoteusername @ host: fileiwanttocopy / my / local / comp
user98496
37

Copiez le fichier "foobar.txt" d'un hôte distant sur l'hôte local:

$ scp [email protected]:foobar.txt /some/local/directory

Copiez le fichier "foobar.txt" de l'hôte local vers un hôte distant:

$ scp foobar.txt [email protected]:/some/remote/directory

Copiez le répertoire "foo" de l'hôte local dans le répertoire "bar" d'un hôte distant:

$ scp -r foo [email protected]:/some/remote/directory/bar

Copiez le fichier "foobar.txt" de l'hôte distant "rh1.edu" sur l'hôte distant "rh2.edu":

$ scp [email protected]:/some/remote/directory/foobar.txt [email protected]:/some/remote/directory/

Copier les fichiers "foo.txt" et "bar.txt" de l'hôte local dans votre répertoire de base sur l'hôte distant:

$ scp foo.txt bar.txt [email protected]:~

Copiez le fichier "foobar.txt" de l'hôte local vers un hôte distant à l'aide du port 2264:

$ scp -P 2264 foobar.txt [email protected]:/some/remote/directory

Copiez plusieurs fichiers de l'hôte distant dans votre répertoire actuel sur l'hôte local:

$ scp [email protected]:/some/remote/directory/\{a,b,c\} .

$ scp [email protected]:~/\{foo.txt,bar.txt\} .

Pour plus d'informations: Copie sécurisée

azeemigi
la source
Et tout cela nécessite que vous sshdcourriez - tout le monde le sait, hein ... ou pas.
Hannu
0

Si vous souhaitez sécuriser la copie sur un emplacement distant tel que Dropbox ou GoogleDrive, créez un compte avec https://couchdrop.io, puis associez votre fournisseur de stockage.

À partir de là simplement,

scp <filename> [email protected]:/Dropbox etc, si vous voulez ensuite extraire un fichier du nuage, inversez simplement les deux instructions de la sorte;

scp [email protected]:/Dropbox/filename ~/ - cela fera descendre le fichier dans le répertoire choisi

Jayden
la source