两台电脑之间该如何传送档案,其实方法有超多种的,像是 FTP 或透过 SSH 方式来传送档案,但是这些方法步骤都有点复杂,FTP 需要搭建 FTP 服务,SSH 要学习 SCP 指令,那有没有更好的方式从单一电脑点对点传送档案到另一台呢?
传送过程需要快速又要安全,本文将介绍一套用 Go 语言写的工具叫 Croc。
工具特点及优势
-
用 Relay 方式让任意两台电脑传送档案 -
点对点加密 (使用 PAKE) -
跨平台传送文件 ( Windows
,Linux
,Mac
) -
一次可以传送多个文件或整个目录 -
支持断点续传 -
不需要自行搭建服务器或使用 port-forwarding 相关技术 -
优先使用 IPv6
,而IPv4
当作备用 -
可以使用 Socks5 proxy
Croc 项目地址:https://github.com/schollz/croc
使用方式
使用方式如同底下这张图所表示
传送端只需要执行 croc sendfile.txt 即可
$ croc send ~/Downloads/data.csv
Sending 'data.csv' (632.9 kB)
Code is: cabinet-rodeo-mayday
On the other computer run
croc cabinet-rodeo-mayday
上面可以看到会自动产生一个 secret code,接着在另外一台电脑执行底下指令
$ croc cabinet-rodeo-mayday
Accept 'data.csv' (632.9 kB)? (y/n) y
Receiving (<-111.243.108.9:51032)
當然你可以自訂 secret code
croc send --code appleboy ~/Downloads/data.csv
由于此工具是透过relay server方式来进行传送,所以指令会预设连到官方所架设的服务器
// DEFAULT_RELAY is the default relay used (can be set using --relay)
var (
DEFAULT_RELAY = "croc.schollz.com"
DEFAULT_RELAY6 = "croc6.schollz.com"
DEFAULT_PORT = "9009"
DEFAULT_PASSPHRASE = "pass123"
)
假设你想要自己架设relay server呢?很简单,这工具也让开发者很快架设一台relay server,只要执行底下
$ croc relay
[info] 2021/02/16 11:38:59 starting croc relay version v8.6.7-05640cd
[info] 2021/02/16 11:38:59 starting TCP server on 9010
[info] 2021/02/16 11:38:59 starting TCP server on 9012
[info] 2021/02/16 11:38:59 starting TCP server on 9009
[info] 2021/02/16 11:38:59 starting TCP server on 9013
[info] 2021/02/16 11:38:59 starting TCP server on 9011
可以指定单一 port:
$ croc relay --ports 3001
[info] 2021/02/16 11:39:22 starting croc relay version v8.6.7-05640cd
[info] 2021/02/16 11:39:22 starting TCP server on 3001
接着在传送档案也要跟着换掉relay server
$ croc --relay 127.0.0.1:3001 send ~/Downloads/data.csv
Sending 'data.csv' (632.9 kB)
Code is: saddle-origin-horizon
On the other computer run
croc --relay 127.0.0.1:3001 saddle-origin-horizon
可以看到需要加上 –relay 127.0.0.1:3001 就可以完成了,所以很简单的架设relay server,这样官方服务挂了,你也可以在任意一台电脑装上relay server了。
心得
croc工具强调的就是:简单+安全+快速,三大优势,让大家可以更容易点对点传送档案,加上CLI工具在任何平台都可以下载(Windows,Mac,及Linux),只需要一个指令就可以装好此工具,跟其他朋友传送档案。未来会再多介绍一些好用工具给大家。