Linux SFTP中如何设置传输限制

作者:袖梨 2026-06-17

在Linux SFTP中设置传输限制,可以通过配置SSH服务器来实现。以下是一些常见的方法:

如何在Linux SFTP中设置传输限制

方法一:使用sshd_config文件

  1. 编辑sshd_config文件:打开SSH服务器的配置文件/etc/ssh/sshd_config

    sudo nano /etc/ssh/sshd_config
  2. 设置传输限制:在文件中添加或修改以下配置项:

    • 限制用户带宽:

      Match User <username>Bandwidth <limit_in_kbps>

      例如,限制用户john的带宽为100kbps:

      Match User johnBandwidth 100
    • 限制用户连接数:

      MaxSessions <number_of_sessions>

      例如,限制用户john最多同时连接3个会话:

      Match User johnMaxSessions 3
    • 限制用户传输速率:

      Match User <username>ForceCommand internal-sftp -l INFOChrootDirectory %hAllowTcpForwarding noX11Forwarding noPermitTunnel noMaxSessions <number_of_sessions>Bandwidth <limit_in_kbps>
  3. 重启SSH服务:保存并关闭文件后,重启SSH服务以应用更改。

    sudo systemctl restart sshd

方法二:使用pam_limits.conf文件

  1. 编辑pam_limits.conf文件:打开PAM(Pluggable Authentication Modules)配置文件/etc/security/limits.conf

    sudo nano /etc/security/limits.conf
  2. 设置传输限制:在文件中添加以下配置项:

    • 限制用户带宽:

      <username> hard bandwidth <limit_in_kbps>

      例如,限制用户john的带宽为100kbps:

      john hard bandwidth 100
    • 限制用户连接数:

      <username> hard maxlogins <number_of_sessions>

      例如,限制用户john最多同时连接3个会话:

      john hard maxlogins 3
  3. 保存并关闭文件:保存更改并关闭文件。

方法三:使用fail2ban

fail2ban可以用来限制失败的登录尝试,间接地限制恶意用户的访问。

  1. 安装fail2ban

    sudo apt-get install fail2ban
  2. 配置fail2ban:编辑fail2ban的配置文件/etc/fail2ban/jail.local

    sudo nano /etc/fail2ban/jail.local
  3. 添加自定义jail:添加以下内容来限制特定用户的访问:

    [DEFAULT]bantime = 600findtime = 600maxretry = 3[sftp-user]enabled = truefilter = sftp-useraction = iptables-multiport[name=SFTP, port="sftp", protocol=tcp]logpath = /var/log/auth.logbantime = 3600findtime = 600maxretry = 3
  4. 创建过滤器:编辑过滤器文件/etc/fail2ban/filter.d/sftp-user.conf

    sudo nano /etc/fail2ban/filter.d/sftp-user.conf

    添加以下内容:

    [Definition]failregex = ^%(__prefix_line)s(?:error: PAM: )?Authentication failure for invalid user <username> from <ip>ignoreregex =
  5. 重启fail2ban服务:

    sudo systemctl restart fail2ban

通过以上方法,你可以在Linux SFTP中设置传输限制,以保护服务器资源并提高安全性。

相关文章

精彩推荐