Last active
March 26, 2018 12:18
-
-
Save diyism/2bdb568d9780471acc470d2c69cab2d5 to your computer and use it in GitHub Desktop.
vps上部署ftp+xcrc供beyondcompare远程人工备份文件
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sudo apt-get install libssl-dev | |
git clone https://github.com/proftpd/proftpd.git | |
cd proftpd | |
./configure --enable-openssl --with-modules=mod_digest #开启这个模块可以支持xcrc远程快速比较, 参考http://www.proftpd.org/docs/contrib/mod_digest.html#Installation | |
make | |
sudo make install | |
sudo vi /usr/local/etc/proftpd.conf | |
#在"Port 21"下面加上: | |
SocketBindTight on #因为通过kcptun通道走, 不需要监听外网ip, 只要127.0.0.1即可 | |
DefaultAddress 127.0.0.1 | |
PassivePorts 10021 10022 #客户端都在防火墙后的, 只能被动模式, 而被动模式必须开单独的端口, 而且必须开两个以上 | |
#这三行 | |
sudo proftpd | |
#用kcptun把10021, 10022, 21映射到本地, 可以把21改成10210, 被动端口两个改成10211, 10212方便设置防火墙 | |
#用beyond compare里的ftp passive mode连接 | |
#可以用命令行测试ftp服务器: | |
ftp 127.0.0.1 10210 | |
Name (127.0.0.1:malcolm): ubuntu | |
Password: | |
230 User ubuntu logged in | |
ftp> passive | |
ftp> quote xcrc .bashrc | |
250 AB254644 | |
#跟beyondcompare配合需要修改: | |
proftpd/modules/mod_digest.c | |
//pr_response_add(R_250, _("Computing %s digest"), get_algo_name(algo, 0)); | |
hex_digest = get_digest(cmd, algo, path, st.st_mtime, start_pos, len, | |
PR_STR_FL_HEX_USE_UC, digest_progress_cb); | |
if (hex_digest != NULL) { | |
//pr_response_add(R_DUP, "%s", hex_digest); | |
pr_response_add(R_250, "%s", hex_digest); | |
即注释掉一行改掉一行, 因为beyondcompare不接受"250 Computing..."那行而只接受"250 <crc32>"计算结果 | |
beyondcompare里选上文件夹, 右键菜单选"Compare Contents", 然后再选"CRC Comparison", 再点击"Start"就可以快速远程CRC比较了 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment