![通过便携式程序在没有管理员权限的情况下通过网络访问文件的最佳方法是什么?](https://linux22.com/image/1520329/%E9%80%9A%E8%BF%87%E4%BE%BF%E6%90%BA%E5%BC%8F%E7%A8%8B%E5%BA%8F%E5%9C%A8%E6%B2%A1%E6%9C%89%E7%AE%A1%E7%90%86%E5%91%98%E6%9D%83%E9%99%90%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E9%80%9A%E8%BF%87%E7%BD%91%E7%BB%9C%E8%AE%BF%E9%97%AE%E6%96%87%E4%BB%B6%E7%9A%84%E6%9C%80%E4%BD%B3%E6%96%B9%E6%B3%95%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
因此,在学校编程课上,我一直使用 USB 闪存盘来存储我的所有资料,包括我花了几个小时完成的个人项目。所以今天我想,如果我丢失了闪存盘,我就会失去我为之努力的一切。所以我在想,如果我可以把所有文件留在电脑上,然后从任何地方访问它们,而无需管理权限,只需使用可以放在闪存盘上的便携式程序,会怎么样?实现这一点的最佳方式是什么,VPN、FTP 等?
此外,如果可能的话,这些文件是否可以像闪存驱动器有自己的字母一样分配给系统?(E:)
答案1
您可以使用虚拟网络计算机例如通过雇用超VNC对于此类任务,您所需要的只是vncviewer.exe
,以及加密密钥。 (为了安全起见,请确保在家用计算机上使用 AES 加密而不是额外的插件。)您还需要在家中使用静态 IP 或使用一些动态 DNS 提供商来连接到您家里的 IP,在路由器上,您需要将 VNC 端口转发到您想要访问的计算机(出于安全原因,请勿使用默认 VNC 端口,请选择一些更高范围的 TCP 端口)。 UltraVNC 支持文件传输,因此您可以来回移动文件,但您无法像使用闪存驱动器那样安装家里的驱动器。
如果你唯一需要的是传输文件,你可以在家里使用 FTP 服务器,最简单的可能是档案FTP 服务器,但要求与 VNC 相同(使用加密、静态 IP 或动态 DNS、端口转发。)
FTP 是一种需要打开多个端口的协议,它可以在两种模式下工作,一种是使用 21 端口进行连接,使用 20 端口进行数据传输,端口 21 需要转发到您的 PC,路由器应该支持 FTP 协助。更好的解决方案是使用被动 FTP 模式,但您需要打开和转发端口 21 和一些额外的范围或端口(例如 60000-60100)。
我的建议是不要使用默认端口,因为它总是被陌生人扫描。其次,使用 FTPS(加密连接)防止密码泄露。作为 FTP 客户端,您可以使用便携式温SCP或者只需使用 Windows 资源管理器即可。
另一个(可能是最简单的)方法是使用文件同步,例如同步在闪存驱动器上以便携模式运行,并在家中独立安装。这样,您就不需要在家里搞乱端口转发和动态 DNS。两台计算机将通过外部中继进行通信,无需您的帮助即可找到对方。所有连接都经过加密,因此不会向任何第三方提供商泄露隐私。
在闪存驱动器上,您可以使用简单的 bat 文件自动正确启动syncthing
@echo off
%~d0
cd "%~d0%~p0"
IF %ERRORLEVEL%==0 GOTO PATH_IS_OK
exit
:PATH_IS_OK
rem set AppData=D:\Data\syncthing\
set AppData=%~d0%~p0
set LocalAppData=%AppData%
start "syncthing" /B /LOW syncthing.exe
该解决方案的额外优点是 - 您可以在中设置文件版本控制syncthing
,这样您就可以对工作文件进行多次备份,而无需向工作目录发送垃圾邮件。
顺便说一句,大多数 K12 学校对于传出连接都有相当严格的规定,所以你的“外部”连接可能会被阻止。
答案2
为什么你需要把文件留在学校或某台特定的电脑上?你的文件有多大?免费云存储很容易获得,可以自动从你的电脑同步到云端。如果你担心安全问题,你可以使用 Boxcryptor 等工具自动加密
Google Drive 15GB 免费 https://www.google.com/drive/
Microsoft OneDrive 5GB 免费存储空间 https://onedrive.live.com/about/en-us/
pCloud。20GB 免费云存储 https://www.pcloud.com/