![无需提供系统凭据即可从 Windows 桌面将文件上传到 Linux 服务器(针对服务器)](https://linux22.com/image/1582752/%E6%97%A0%E9%9C%80%E6%8F%90%E4%BE%9B%E7%B3%BB%E7%BB%9F%E5%87%AD%E6%8D%AE%E5%8D%B3%E5%8F%AF%E4%BB%8E%20Windows%20%E6%A1%8C%E9%9D%A2%E5%B0%86%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E5%88%B0%20Linux%20%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%88%E9%92%88%E5%AF%B9%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%89.png)
我想定期将数据从台式电脑上传到 Linux 服务器(我有 root 访问权限)。它们不在同一个网络上(服务器有公共静态 IP,客户端是同步宽带)我想将文件夹上传到 /home/userX/sync,但我不希望台式电脑拥有 userX 凭据(因为这台台式电脑只能访问该同步文件夹,而不能拥有 userX 的全部权限)。这就是我不使用 SCP 而不是 SSH 的原因(但也许有一种方法可以用 SCP 做到这一点?)。
最初,我想使用 Linux 服务器上的 rsync 守护程序来创建非系统帐户,但我很快意识到 rsyncd 没有加密(这是行不通的,因为数据很敏感并且通过互联网传输)。
最好的方法是什么?谢谢
答案1
如果您将其用于私人网络,我建议您选择file share protocol
类似smb
或ftp
。
我建议您选择smb protocol
从 转移window
到linux
或反之亦然,您需要安装samba server
[检查依赖项] - 您可以使用特定用户USERX
并设置权限并为该特定用户提供单独的密码,而无需使用 smbpassword 命令触碰用户的 shell 部分。
# smbpassword -a USERX
答案2
使用 Rsyncd 而不是 stunnel 解决方案。也许有更好的解决方案,但尚未找到。使 rsync 仅在环回上侦听 + 对其进行防火墙保护(因此无法直接连接到 rsyncd),然后使用 PSK 身份验证将 stunnel 作为服务运行。