SecureCRT配置Linux防火墙的正确思路
核心说明
操作步骤
通过 SecureCRT 登录服务器
打开 SecureCRT → 新建会话 → 协议选 SSH2 → 填写主机 IP 与端口(默认 22)→ 连接并登录到远端 Linux。
确认防火墙类型与状态
sudo systemctl status firewalld 查看是否 active;查看规则 sudo firewall-cmd --list-all。sudo iptables -L -n -v 查看现有规则。在 firewalld 上放行端口(示例为 SSH 22)
sudo firewall-cmd --zone=public --add-port=22/tcp --permanentsudo firewall-cmd --reloadsudo firewall-cmd --list-ports(应看到 22/tcp)。在 iptables 上放行端口(示例为 SSH 22)
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPTsudo iptables -A INPUT -i lo -j ACCEPTsudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPTsudo iptables-save > /etc/iptables/rules.v4sudo service iptables save 或 sudo iptables-save > /etc/sysconfig/iptables。验证与回滚
sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent && sudo firewall-cmd --reloadsudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT(按实际规则调整)。常见场景与命令速查
| 场景 | 关键命令 |
|---|---|
| firewalld 放行 22/tcp | firewall-cmd --zone=public --add-port=22/tcp --permanent && firewall-cmd --reload |
| firewalld 放行 80/tcp 与 443/tcp | firewall-cmd --zone=public --add-service=http --permanent && firewall-cmd --zone=public --add-service=https --permanent && firewall-cmd --reload |
| firewalld 查看开放端口 | firewall-cmd --list-ports |
| iptables 放行 22/tcp | iptables -A INPUT -p tcp --dport 22 -j ACCEPT |
| iptables 保存规则 | Debian/Ubuntu: iptables-save > /etc/iptables/rules.v4;RHEL/CentOS: service iptables save 或 iptables-save > /etc/sysconfig/iptables |
| 临时绕过防火墙访问内网服务 | 在 SecureCRT 会话选项 → SSH → Tunnels:添加本地端口转发,例如 Source port 8080,Destination 127.0.0.1:80,保存并重新连接后用 http://localhost:8080 访问。 |
安全与排错要点