在Linux系统中,使用SFTP(SSH File Transfer Protocol)时,可以通过设置sshd_config
文件来限制用户的传输速率。以下是具体步骤:
打开sshd_config
文件:
sudo nano /etc/ssh/sshd_config
在文件中找到或添加以下行来设置用户的传输速率限制:
Match User <username>
ForceCommand internal-sftp
ChrootDirectory %h
AllowTcpForwarding no
X11Forwarding no
MaxSessions 1
MaxStartups 1:30:100
MaxSessionsPerUser 1
AcceptEnv LANG LC_*
Subsystem sftp internal-sftp
# 设置上传和下载的速率限制(单位:字节/秒)
Match Group sftpusers
LimitBandwidth <bandwidth_limit>
其中,<username>
是要限制的用户,<bandwidth_limit>
是传输速率限制(例如,1048576表示1MB/s)。
创建一个组并添加需要限制速率的用户:
sudo groupadd sftpusers
sudo usermod -aG sftpusers <username>
保存并关闭sshd_config
文件。
重启SSH服务以应用更改:
sudo systemctl restart sshd
通过以上步骤,你可以成功地为特定用户或用户组设置SFTP传输速率限制。请注意,这些设置仅适用于使用SFTP协议的用户,并且需要确保sshd_config
文件的语法正确。