Signed-off-by: Dengfeng Liu <liu_df@qq.com>
What is xfrpc and why start xfrps
xfrpc is xfrps client implemented by c for OpenWRT and LEDE system
The motivation to start xfrp project is that we are OpenWRTer, and openwrt usually ran in device which has little ROM and RAM space, however golang always need more space and memory; therefore we start xfrp project.
Compile
xfrp need libevent openssl-dev and json-c support
Before compile xfrp, please install libevent openssl-dev and json-c in your system.
Install json-c in ubuntu 20.04 LTS
sudo apt-get install -y libjson-c-dev
git clone https://github.com/liudf0716/xfrpc.git
cd xfrp
mkdir build
cmake ..
make
Quick start
before using xfrpc, you should have built the proxy server: xfrps, It's no difference with frp at usage, but support FTP and more embedded-client-friendly for linux.
Run in debug mode :
xfrpc -c frpc_mini.ini -f -d 7
Run in release mode :
xfrpc -c frpc_mini.ini -d 0
FTP support
xfrpc support ftp proxy after version 0.07.451. Hypothesize you have built xfrps succeed!
Configure ftp in frpc.ini
[common]
server_addr = 111.112.113.114
server_port = 7001
[router_ftp_example]
type = ftp
local_port = 21
remote_port = 30621
remote_data_port = 30622
remote_port is the reporxy port of FTP command tunnel, and remote_data_port is FTP-DATA port reporxy.
Use -p (PASV Mode) of ftp command to connect to proxy ftp server:
ftp -p 111.112.113.114 30621
Todo list
- support compression
- support encrypt
How to contribute our project
See CONTRIBUTING for details on submitting patches and the contribution workflow.
Contact
QQ群 : 331230369
