在麒麟KylinOS上通过命令行配置KYSEC的防火墙

本文将详细介绍如何在麒麟KylinOS上使用命令行配置KYSEC防火墙,确保SSH连接的安全性与可用性。我们将从图形界面操作开始,然后演示如何使用命令行完成相同的配置。这将帮助您理解防火墙设置的原理,为后期定制镜像做准备。

1. 查看麒麟系统信息

首先,使用以下命令查看当前系统的信息,以确认您使用的Kylin版本:

secops998@secops998-pc:~/桌面$ cat /etc/.kyinfo 

2. 安装SSH服务

在进行防火墙配置之前,我们需要确保已安装SSH服务。使用以下命令安装SSH:

root@secops998-pc:~# apt install ssh -y

确认安装状态,确保SSH服务已启动:

root@secops998-pc:~# systemctl status ssh

在这里插入图片描述
在这里插入图片描述

3. 查看IP地址

使用以下命令查看机器的IP地址,以便进行SSH连接:

root@secops998-pc:~# ip a

找到输出中的inet地址,例如:

inet 10.1.5.4/24

在这里插入图片描述

4. 使用远程连接,发现连接失败

在另一台机器上尝试SSH连接,确认连接失败:

roc@ROC ~ % ssh secops998@10.1.5.4

输出示例:

ssh: connect to host 10.1.5.4 port 22: Connection refused

在这里插入图片描述

5. 在安全中心中添加22端口放开的防火墙

为了允许SSH连接,需要在安全中心的高级配置中放开22端口。虽然我们后续会通过命令行完成相同操作,但可以通过图形界面直观地查看设置。
在这里插入图片描述

6. 添加防火墙规则(命令行方式)

进入防火墙配置目录

使用命令行进行防火墙配置,首先进入防火墙配置目录:

secops998@secops998-pc:~/桌面$ sudo -i
root@secops998-pc:~# cd /etc/kylin-firewall/

在这里插入图片描述

编辑自定义规则

进入custom_rules目录,复制现有的icmp.xml文件为sshport.xml

root@secops998-pc:/etc/kylin-firewall# cd custom_rules/
root@secops998-pc:/etc/kylin-firewall/custom_rules# cp icmp.xml sshport.xml

编辑sshport.xml文件

使用编辑器打开并编辑sshport.xml文件,设置SSH规则:

root@secops998-pc:/etc/kylin-firewall/custom_rules# vi sshport.xml

文件内容示例:

<?xml version="1.0" encoding="utf-8"?>
<rule>
    <policy direction="all" action="allow" mode="all" status="on"/>
    <filter program="all" protocol="ssh" local_ip="all" local_ports="all" remote_ip="all" remote_ports="all"/>
</rule>

编辑防火墙模式

接下来,我们需要在modes目录中添加刚创建的SSH规则到防火墙模式中:

root@secops998-pc:/etc/kylin-firewall# cd modes/
root@secops998-pc:/etc/kylin-firewall/modes# vi private.xml

在现有规则中添加<rule name="sshport"/>,示例:

<mode inpolicy="deny" outpolicy="allow">
    <KSC/>
    <rule name="System-Activation"/>
    <rule name="icmp"/>
    <rule name="Default-Rule1"/>
    <rule name="Default-Rule2"/>
    <rule name="Default-Rule3"/>
    <rule name="Wireless-Projection"/>
    <rule name="Kylin-Connectivity"/>
    <rule name="Remote-Desktop"/>
    <rule name="apt-p2p"/>
    <rule name="sshport"/>
</mode>

同样,编辑public.xml,添加<rule name="sshport"/>

root@secops998-pc:/etc/kylin-firewall/modes# vi public.xml

root@secops998-pc:/etc/kylin-firewall/modes# cat public.xml 
<?xml version="1.0" encoding="utf-8"?>
<mode inpolicy="deny" outpolicy="allow"><KSC/><rule name="System-Activation"/><rule name="Wireless-Projection"/><rule name="Kylin-Connectivity"/><rule name="apt-p2p"/><rule name="sshport"/></mode>
root@secops998-pc:/etc/kylin-firewall/modes# 

7. 重启系统

完成所有配置后,重启系统以使新规则生效:

root@secops998-pc:/etc/kylin-firewall# reboot

在这里插入图片描述

8. 验证防火墙配置

重启后,您可以通过SSH连接验证防火墙配置是否成功:

roc@ROC ~ % ssh secops998@10.211.55.49

如果连接成功,说明防火墙规则配置正确!
在这里插入图片描述

9. 删除防火墙配置

如果需要删除防火墙配置,可以进入相应目录并删除sshport.xml文件,或移除相关的规则。

root@secops998-pc:/etc/kylin-firewall/custom_rules# rm sshport.xml

再次尝试SSH连接将会失败。
在这里插入图片描述
在这里插入图片描述


通过以上步骤,您已经成功在麒麟KylinOS上通过命令行配置KYSEC的防火墙,确保SSH连接的可用性和安全性。这些知识不仅有助于您日常的系统管理,也为后期定制镜像提供了基础。希望本篇文章对您有所帮助!如果有任何疑问,欢迎随时提问。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐