在centos上默认禁止所有流量,现在配置iptables,允许SSH流(默认端口)
时间: 2024-12-10 16:49:07 浏览: 11
在 CentOS 上,默认情况下,系统可能会对网络访问进行限制,尤其是通过防火墙工具 iptables。如果你想要只允许 SSH (Secure Shell) 流量进入,你可以按照以下步骤操作:
1. **打开终端**:
打开终端,输入 `sudo` 提示输入管理员密码。
2. **查看当前规则**:
首先,检查现有的iptables规则,可以运行命令:
```
sudo iptables -L -n
```
这将列出所有的规则,包括默认规则。
3. **创建一个新的规则链**:
如果还没有专门为 SSH 创建一个链,你可以新建一个:
```
sudo iptables -N INPUT_ssh
```
4. **添加 SSH 入站规则**:
添加一条规则到新链中,允许 SSH 端口(通常是 22)的数据包:
```
sudo iptables -A INPUT_ssh -p tcp --dport 22 -j ACCEPT
```
5. **设置默认策略为拒绝**:
将所有其他流量(除了 SSH)都拒绝,可以设置INPUT链的默认策略为DROP(丢弃非SSH连接请求):
```
sudo iptables -P INPUT DROP
```
6. **把SSH规则链设为主链**:
将 INPUT_ssh 链设为主链,让后续规则应用于此:
```
sudo iptables -A INPUT -j INPUT_ssh
```
7. **保存规则**:
最后,别忘了保存这些更改以永久生效:
```
sudo iptables-save > /etc/sysconfig/iptables
```
或者
```
sudo systemctl restart firewalld
```
8. **验证**:
使用 `sudo iptables-L -n` 再次确认规则是否已生效,只有来自 SSH 端口的流量应该被接受。
阅读全文