返回主页内容

 

话题: 个人云盘(文件传输)解决方案 (阅读187次) 上一个话题 - 下一个话题
0 成员和2 游客正在查看这个话题。
个人云盘(文件传输)解决方案
无聊的帖子总需要音乐来做伴。


咱不是标题党哦!( ̄▽ ̄) 这篇帖子距离搭建个人云盘只有一步之遥了。
因为本贴更侧重于局域网内的共享(文件传输),所以并没有写签发TLS证书,启用0RTT和配置HTTP/3那些玩意儿。
             
下文的linux代指Debian GNU/Linux
如果命令执行失败,那么请输
代码: [选择]
sudo su - 
切换到root账号。
Q: sudo是什么呢?
A: 你可以看一下别人的twitter

---------------------
文件传输有多种方式。

对于win10来说,最简单、靠谱的是系统自带的SMB;对于GNU/Linux来说,则可能是SFTP。
最不靠谱的是通过QQ、Wechat等聊天工具来传输。因为你的数据经过第三方服务器,文件有可能会经过审核。
最安全的可能是SSH文件传输(SFTP),但是速度可能也是最慢的。

注:1、SSH为了安全,而牺牲了速度。
2、SCP也是借助ssh来传输,但是我觉得它的功能比SFTP弱一些。
虽然有可能存在比ssh更安全的东西,但是我不怎么想去了解。
--------------
传输速度比较快的是FTP、WebDAV和SMB。
WebDAV 和FTP都可以用多线程来提高传输速率。
---------------------
SMB

不同版本号的SMB之间有明显的差距。
以最显而易见的传输速率为例,旧版v1.0有点慢,新版就快很多了。
我记得几年前在手机上用ES文件浏览器传输局域网文件,在802.11ac WiFi网络环境下,SMB(貌似是1.0)传输速率从来都不超过10MiB/sec。
------------------
FTP

实测套了TLS加密的FTPS/FTPES(显/隐式)的协议比FTP慢很多
注:SFTP和FTPS是不同的!

速率并不是越快越好,你还要考虑到文件传输过程中的断点续传,多媒体文件播放等问题

尽管FTP非常快,但是我觉得它并不适合流媒体传输。
就比说我在看视频时,拖动进程条可能会有很严重的延迟。
相比之下,WebDAV 大概是这三者中最适合用于看视频的了。

-----------------
WebDAV

...

Guests must Login or Register to view full posts.

回复:个人云盘(文件传输)解决方案
回复 #1
FileZilla是FTP+FTPS,没有SFTP
FTPS在一定程度上也可以保证安全。

一般情况下,sftp和ssh绑定在一起,要是密码被破解就非常非常糟糕了,因此我比较推荐用ed25519密钥来验证。

关于SFTP服务端的话,我比较推荐用系统自带的。

win10可以用可选功能中自带的OpenSSH Server,需手动勾选安装。

win10设置---应用---可选功能---添加功能


安装完成后,以管理员身份打开powershell,然后输
代码: [选择]
Set-Location C:\ProgramData\ssh
Remove-Item -Force ssh_host*
ssh-keygen -t ed25519
#根据提示创建完成后,接着把它添加到管理员的authorized_keys里。
Copy-Item ${HOME}\.ssh\id_ed25519.pub administrators_authorized_keys
#你也可以把公钥添加至当前用户的authorized_keys里
Set-Location ${HOME}\.ssh
Copy-Item id_ed25519.pub authorized_keys
#之所以用复制,而不是追加写入,是因为powershell默认不是UTF-8编码,Get-Content再>>会导致authorized_keys乱码。就算是手动-encoding UTF8也不是标准的utf8。若需要添加多行公钥的话,那还是手动追加写入比较好。
代码: [选择]
#修改sshd配置文件
notepad sshd_config
一定要改的是端口号,删掉Port前的"#"号,并将22改成其他端口号。
默认22端口很容易被攻击

sftp默认应该会自动加载


保存完配置文件后,添加指定TCP端口的防火墙入站规则。


所有步骤都配置完成后,重启sshd服务。
以管理员身份打开powershell
代码: [选择]
Restart-Service sshd
之后就不用管了,sshd默认应该会开机自启。

你可以试着连接一下ssh,以普通用户身份打开powershell,输
代码: [选择]
ssh -p 4998 -i ~/.ssh/id_ed25519 localhost
也可以试着连接sftp,下处"-P"为大写
代码: [选择]
sftp -P 4998 -i...


Guests must Login or Register to view full posts.

 

  快速回复

:
:
验证: