centos

CentOS SSH如何配置防火墙

小樊
43
2025-03-31 14:03:18
栏目: 智能运维

在CentOS系统中,配置SSH防火墙主要涉及两个步骤:允许SSH连接和配置防火墙规则。以下是详细的步骤:

1. 允许SSH连接

首先,确保你的SSH服务正在运行,并且监听在默认的22端口上。你可以通过以下命令检查SSH服务状态:

sudo systemctl status sshd

如果SSH服务没有运行,可以使用以下命令启动它:

sudo systemctl start sshd

2. 配置防火墙规则

CentOS 7及以上版本使用firewalld作为默认的防火墙管理工具。以下是如何配置firewalld以允许SSH连接的步骤:

2.1 启用firewalld服务

如果firewalld服务没有运行,可以使用以下命令启动它:

sudo systemctl start firewalld

2.2 允许SSH连接

使用以下命令允许SSH连接:

sudo firewall-cmd --permanent --add-service=ssh

--permanent选项表示永久生效,即使重启系统也不会丢失配置。

2.3 重新加载防火墙规则

为了使新的规则生效,需要重新加载防火墙配置:

sudo firewall-cmd --reload

2.4 验证SSH端口是否开放

你可以使用以下命令检查SSH端口是否已经开放:

sudo firewall-cmd --list-all

在输出中,你应该能看到services部分包含ssh

3. 配置SELinux(可选)

如果你的系统启用了SELinux,可能还需要配置SELinux策略以允许SSH连接。以下是一些常见的SELinux配置:

3.1 检查SELinux状态

使用以下命令检查SELinux的状态:

sestatus

如果SELinux处于enforcing模式,你可能需要调整相关策略。

3.2 临时设置SELinux为permissive模式(仅用于测试)

如果你只是想测试SSH连接,可以临时将SELinux设置为permissive模式:

sudo setenforce 0

3.3 配置SELinux策略

如果你需要永久更改SELinux策略,可以编辑/etc/selinux/config文件:

sudo vi /etc/selinux/config

SELINUX=enforcing改为SELINUX=permissive,然后保存并退出。

4. 测试SSH连接

最后,确保你可以从外部网络连接到你的CentOS服务器:

ssh username@your_server_ip

如果一切配置正确,你应该能够成功登录。

通过以上步骤,你应该能够在CentOS系统上成功配置SSH防火墙。

0
看了该问题的人还看了