案例一:将 SFTP 用户的家目录作为 SFTP 用户的 SFTP 目录,让 SFTP 用户通过 SFTP 登录时被限制在自己的家目录里,并使用 2200 端口
# vim /etc/ssh/sshd_config
将以下内容:
......
Subsystem sftp ......
......
修改为:
......
# Subsystem sftp ......
......
并添加以下内容:
......
Subsystem sftp internal-sftp
Match LocalPort 2200
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory %h
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
(补充:这里以将 /etc/ssh/sshd_config 最为 SFTP 的配置文件为例)
(注意:SFTP 目录的所属主必须是 root,权限最高只能是 755,否则就算此目录的所属主是此 SFTP 用户也会报错)
案例二:将根目录下以和 SFTP 用户名同名的目录作为此 SFTP 用户的 SFTP 目录,让此 SFTP 用户通过 SFTP 登录时被限制在根目录下以和自己用户名同名的目录里,但是此设置只适用于组是 sftpuser 的用户
# vim /etc/ssh/sshd_config
将以下内容:
......
Subsystem sftp ......
......
修改为:
......
# Subsystem sftp ......
......
并添加以下内容:
......
Subsystem sftp internal-sftp
Match Group sftpuser
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /%u
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
(补充:这里以将 /etc/ssh/sshd_config 最为 SFTP 的配置文件为例)
(注意:SFTP 目录的所属主必须是 root,权限最高只能是 755,否则就算此目录的所属主是此 SFTP 用户也会报错)
案例三:将根目录下以和 SFTP 用户名同名的目录作为此 SFTP 用户的 SFTP 目录,让此 SFTP 用户通过 SFTP 登录时被限制在根目录下以和自己用户名同名的目录里,但是此设置只适用于用户 sftpuser
# vim /etc/ssh/sshd_config
将以下内容:
......
Subsystem sftp ......
......
修改为:
......
# Subsystem sftp ......
......
并添加以下内容:
......
Subsystem sftp internal-sftp
Match User sftpuser
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /%u
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
(补充:这里以将 /etc/ssh/sshd_config 最为 SFTP 的配置文件为例)
(注意:SFTP 目录的所属主必须是 root,权限最高只能是 755,否则就算此目录的所属主是此 SFTP 用户也会报错)