SFTP配置中如何使用防火墙
导读:SFTP与防火墙配置要点 基础概念与端口 SFTP 是 SSH 的文件传输子系统,默认通过 TCP 22 端口工作。防火墙只需放行 SSH 的端口,SFTP 即可正常使用;若修改了 SSH 端口,防火墙需同步放行新端口。为降低暴力扫描风险...
SFTP与防火墙配置要点
基础概念与端口
- SFTP 是 SSH 的文件传输子系统,默认通过 TCP 22 端口工作。防火墙只需放行 SSH 的端口,SFTP 即可正常使用;若修改了 SSH 端口,防火墙需同步放行新端口。为降低暴力扫描风险,可将 SSH/SFTP 端口改为 1024–65535 范围内的自定义端口(如 2222),并同步更新防火墙与系统策略。
常用防火墙配置示例
- 下表给出在不同工具下的常用做法(均以放行 TCP 22 为例;若自定义端口,将端口号替换为你的实际端口,如 2222)。
| 系统与工具 | 允许 SFTP/SSH | 仅允许指定来源 IP | 持久化与验证 |
|---|---|---|---|
| Ubuntu/Debian(UFW) | sudo ufw allow 22/tcp 或 sudo ufw allow ssh |
sudo ufw allow from 203.0.113.10 to any port 22 |
sudo ufw enable;sudo ufw status |
| CentOS/RHEL(firewalld) | sudo firewall-cmd --permanent --add-service=ssh &
&
sudo firewall-cmd --reload |
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="203.0.113.10" port port="22" protocol="tcp" accept' &
&
sudo firewall-cmd --reload |
sudo firewall-cmd --list-all |
| Linux 通用(iptables) | sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT |
sudo iptables -A INPUT -p tcp --dport 22 -s 203.0.113.10 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT |
Debian/Ubuntu:sudo iptables-save >
/etc/iptables/rules.v4;CentOS/RHEL:sudo service iptables save 或 sudo systemctl enable iptables &
&
sudo systemctl start iptables;查看:sudo iptables -L -v -n |
修改默认端口时的防火墙与系统联动
- 修改 /etc/ssh/sshd_config,添加或调整端口:
Port 2222(可同时保留 22 以便过渡)。 - 防火墙放行新端口:
- UFW:
sudo ufw allow 2222/tcp - firewalld:
sudo firewall-cmd --permanent --add-port=2222/tcp & & sudo firewall-cmd --reload - iptables:
sudo iptables -A INPUT -p tcp --dport 2222 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
- UFW:
- 若启用 SELinux(CentOS/RHEL 常见),允许新端口作为 SSH 端口:
sudo semanage port -a -t ssh_port_t -p tcp 2222 - 重启 SSH 服务并验证监听:
sudo systemctl restart sshd(或ssh);ss -an | grep 2222 - 客户端连接测试:
sftp -P 2222 user@host。
安全加固建议
- 限制来源 IP:仅对受控网段或跳板机放行 22/自定义端口(firewalld 用 rich rule,UFW/iptables 按源地址限制)。
- 禁用不必要功能:在 /etc/ssh/sshd_config 中对 SFTP 用户使用
ForceCommand internal-sftp、ChrootDirectory %h、AllowTcpForwarding no、X11Forwarding no,并考虑PermitRootLogin no;重启sshd生效。 - 采用密钥认证、禁用密码登录,并定期审计防火墙规则与监听端口。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: SFTP配置中如何使用防火墙
本文地址: https://pptw.com/jishu/761023.html
