我在 Windows Server 2019 机器上设置了 OpenSSH,现在我可以从我的 Windows 10 客户端通过 ssh 访问该机器。
然后,我在 Windows Server 上创建了一个文件夹,其中包含指向其他本地和远程路径的多个符号链接,并将用户设置为用户的 chrootdirectory。当我通过 sftp 与用户一起访问文件夹时,我可以打开符号链接(指向本地和远程路径)并查看符号链接目标处的所有文件夹和文件。但是,当我尝试读取文件时,我收到以下错误:open for read: permission denied
奇怪的是,我能够在符号链接目标处创建新文件,但无法读取刚刚创建的文件。
我在 Windows 服务器上为所有方向启用了 symlinkevaluation:
fsutil behavior query symlinkevaluation
Local to local symbolic links are enabled.
Local to remote symbolic links are enabled.
Remote to local symbolic links are enabled.
Remote to remote symbolic links are enabled.
真正让我困扰的是,如果我使用与 sftp 相同的用户通过 putty 中的 ssh 连接到服务器,我可以毫无问题地读取同一个文件。在这种情况下,我无法使用“dir”列出文件夹内容:
user@server e:\sftp\symlink>more test.txt
This is a testfile.
user@server e:\sftp\symlink>dir
Access is denied.
有人能告诉我下一步该尝试什么吗?
谨致问候约翰内斯