为 sftp 用户实现 chroot 目录

为 sftp 用户实现 chroot 目录

我在 Windows 2012 环境中运行 OpenSSH64。OpenSSH64 正在运行,我可以访问服务器。我修改了文件,sshd_config但没有成功。

我做了以下更改:

Subsystem sftp C:\OpenSSH-Win64\sftp-server.exe 

Match User sftponly-user 
X11Forwarding no 
AllowTcpForwarding no 
ForceCommand internal-sftp 
ChrootDirectory %h 

我也尝试过

ChrootDirectory C:\User_Specific_Directory\ 

我们正在尝试生成日志以验证我们在文件中所做的更改sshd_config是否已应用。但是,我们在日志中收到以下错误:

3784 11:00:17 087 error: accept: The operation completed successfully. 

chrooting有没有人有用户进入特定目录的实际示例?

答案1

该功能尚未在 Windows 版 OpenSSH 中实现(主要是因为它很难):https://github.com/PowerShell/Win32-OpenSSH/issues/190

答案2

默认 OpenSSH 配置文件位置:目录:\ProgramData\ssh

文件名:ssh_配置

Match User <windows_login_user_name>
    ChrootDirectory C:\0-Websites\myapp.com
    X11Forwarding no
    PermitTTY no
    AllowTcpForwarding no
    ForceCommand sftp-server.exe

注意:所有用户名都应该小写。

相关内容