What's the best way of scp'ing from a remote server connection to local machine, if the local machine isn't externally accessible (e.g. isn't running SSH)?
e.g.
local$ ssh remote
remote$ # do some stuff
remote$ echo "Text" > file.txt
remote$ # oh, I need to copy file.txt back to my local host
remote$ #?
If you can't do what another poster suggested and do the transfer the other way around... uploading the file to AWS S3 from the CLI works pretty well. Though unlike the solution in this post does require installing heavier software.
Also, alternatively... pipe it to `mail` and send it over email.
> What's the best way of scp'ing from a remote server connection to local machine, if the local machine isn't externally accessible (e.g. isn't running SSH)?
If by "not externally accessible" you mean the local machine is not running an SSH server, but has an SSH client available and the machine is connected to the network, and the remote machine is running an SSH server, then:
I have no idea where the claim "Easiest way to copy over SSH" is coming from. The site itself is titled "termbin.com - terminal pastebin", which is a much better description, since there is no SSH involved.
I think people confuse terminal with ssh, or even netcat with SSH.
Netcat doesn't use SSH, it uses raw TCP pretty much.
There are versions of Netcat which can use SSL/TLS it should still work with this if you download those builds.
That said I can't recommend using a service that uploads your data to some random site, and worse basically tells you to just "download" some data that will be input into your terminal from some random site.
This whole thing looks like a social experiment of how many secrets can I get from people who should know better...
Copying a long piece of text from a SSH session is how I found the service. I felt that this particular use-case could more beneficial compared to a terminal pastebin. I agree that SCP is more useful towards copying files but when you just want to copy the output of some command, it makes sense to use this service (provided that the output isn't sensitive information).
If you use Windows, you can do yourself a favor and install Kitty - it integrates nicely with WinSCP, and basically you just need to press Sift+F3 to copy any file you need, whether text or binary, using a familiar interface.
If you want encryption when sharing via termbin, I put together a gist [1] some time ago that helped me. Obvious caveat applies: don't do this if you're really concerned about the privacy of your data.
13 comments
[ 2.6 ms ] story [ 45.2 ms ] thread$ scp (source path) (destination URI):(destination path)
For a stream between systems instead of a file, do it this way:
$ cat localfile | ssh user@host "cat > remotefile"
-- or --
$ ssh user@host "cat > remotefile" < localfile
e.g.
Also, alternatively... pipe it to `mail` and send it over email.
If by "not externally accessible" you mean the local machine is not running an SSH server, but has an SSH client available and the machine is connected to the network, and the remote machine is running an SSH server, then:
$ scp remoteuser@remotehost:remotepath/remotefile localfile
If you want to copy something over ssh, try scp.
Netcat doesn't use SSH, it uses raw TCP pretty much.
There are versions of Netcat which can use SSL/TLS it should still work with this if you download those builds.
That said I can't recommend using a service that uploads your data to some random site, and worse basically tells you to just "download" some data that will be input into your terminal from some random site. This whole thing looks like a social experiment of how many secrets can I get from people who should know better...
The easiest way to copy over SSH is using `scp`.
[1] https://gist.github.com/schmich/f2ef5c85030863d630a97ec91c1b...
Seems to capture stderr: