在Ubuntu系统上配置SFTP服务器时,可以通过修改sshd_config
文件来设置文件传输大小限制。以下是具体的步骤:
打开配置文件:
使用文本编辑器打开/etc/ssh/sshd_config
文件。例如,可以使用nano
命令:
sudo nano /etc/ssh/sshd_config
添加或修改配置:
在文件的末尾添加或修改以下配置项:
Match Group sftp
ForceCommand internal-sftp
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
MaxSessions 10
MaxLoginAttempts 3
AllowAgentForwarding no
PermitTunnel no
GatewayPorts no
PasswordAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
Subsystem sftp internal-sftp
LimitFileSize 100M # 限制每个文件的大小,可以设置为字节、KB、MB或GB
# 如果需要限制文件传输速率,可以使用以下配置:
# LimitRate 100k # 每秒传输的字节数,例如100k即每秒传输的字节数为100KB
在上述示例中,LimitFileSize
设置为100M,表示每个文件的最大大小为100MB。如果需要限制文件传输速率,可以使用LimitRate
选项,并设置相应的值。
保存并关闭文件:
保存对sshd_config
文件的修改并关闭文本编辑器。
重新加载SSH配置:
重新加载SSH配置文件以使更改生效。如果你使用的是使用systemd的系统(如Ubuntu 16.04及更高版本),可以使用以下命令:
sudo systemctl reload ssh
如果你使用的是其他类型的系统,可以使用以下命令:
sudo service ssh restart
请注意,以上配置仅适用于通过Match Group
指令定义的sftp
用户组。如果你需要为所有SFTP用户设置文件传输大小限制,可以在sshd_config
文件中没有Match
指令的情况下添加LimitFileSize
配置项。
此外,如果你使用的是第三方SFTP服务器软件(如OpenSSH以外的软件),可能需要查阅相应软件的文档来了解如何设置文件传输大小限制。