croc-文件传输工具
前言
croc是一款用go语言开发的命令行文件传输工具,该工具允许两台计算机设备以一种简单和安全的方式来传输文件。
环境信息
IP | 系统版本 | croc版本 | 说明 |
---|---|---|---|
192.168.0.10 | CentOS 7 | 9.6.4 | 中继服务 |
192.168.0.11 | CentOS 7 | 9.6.4 | 模拟发送端 |
192.168.0.12 | CentOS 7 | 9.6.4 | 模拟接收端 |
安装
从release下载二进制文件即可运行。
私有化relay
默认情况下使用croc自己的relay服务,可能会有网络问题,而且也不太安全。
./croc relay --host 0.0.0.0
如果不想公开自己的中继服务器,可以为中继服务设置密码,这里用脚本启动。
#!/bin/bash
set -u
export CROC_PASS='yL1dG6'
./croc relay --host 0.0.0.0
发送文件
发送文件时如果不加--code
,则会自动生成一段code,所以最好还是自己加上。
# 使用默认的中继服务器发送文件test.txt
./croc send --code 123456 test.txt
# 使用自建的中继服务器发送文件
./croc --relay 192.168.0.10:9009 send --code 123456 test.txt
# 使用自建中继器并指定中继服务器的密码
./croc --relay 192.168.0.10:9009 --pass 'yL1dG6' send --code 123456 test.txt
接收文件
--yes
表示免交互确认,--overwrite
表示直接覆盖已有文件
# 使用默认的中继服务器接收文件, code需要对应上
./croc 123456
# 使用自建的中继服务器接收文件
./croc --relay 192.168.0.10:9009 123456
# 使用自建中继器并指定中继服务器的密码
./croc --relay 192.168.0.10:9009 --pass 'yL1dG6' --yes --overwrite 123456
补充
如果服务器之间禁用了SCP,只需要临时拷贝一个文件,但是不想从github下载个二进制包再传到服务器,可以用python临时起一个http服务,另一端使用wget或curl接收。
# 假设需要传输服务端当前目录下的test.txt文件
# 服务端起http服务,python2的方式,监听12345端口
python -m SimpleHTTPServer 12345
# 如果较新的linux发行版默认没有python2,用python3也行
python3 -m http.server 12345
# 客户端使用wget请求文件
wget http://<server ip>:12345/test.txt
# 或者用curl
curl -O http://<server ip>:12345/test.txt
本文来自博客园,作者:花酒锄作田,转载请注明原文链接:https://www.cnblogs.com/XY-Heruo/p/17376229.html