当前位置:   article > 正文

麒麟桌面系统安全中心介绍_麒麟2203 kysec

麒麟2203 kysec

麒麟桌面系统安全中心介绍

  • 图形界面操作非常简单,请自行学习,本博客只介绍命令行相关操作。

1. 概况

1.1. 查看kysec状态

kylin@kylin-vm:~$ getstatus 
KySec status: enabled

exec control: off    #应用程序执行控制(应用程序控制与保护模块)
net control : off    #应用程序联网控制(网络保护模块)
file protect: on     #文件防篡改(应用程序控制与保护模块)
kmod protect: on     #内核模块防卸载(应用程序控制与保护模块)
three admin : off    #三权分立
process protect: on  #进程防杀死(应用程序控制与保护模块)
device control: off  #设备管控(2203版本以上才有)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

1.2. 设置kysec状态

#语法
setstatus -f < exectl | netctl > < off | enforcing | warning > [-p]
setstatus -f < ppro | kmod | fpro | devctl > < off | on >

参数说明:
    -f:指定要设置的模块
    -p:永久生效
    off:关闭 | enforcing:强制模式 | warning:警告模式(弹出提示授权窗口)
    off:关闭 | on:开启
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2. 账户安全

2.1. 密码强度

配置文件:/etc/security/pwquality.conf

#最小密码长度
minlen = 8

#正值:密码中最多数字个数,负值:密码中最少数字个数。
dcredit = 0

#正值:密码中最多大写字母个数,负值:密码中最少大写字母个数。
ucredit = 0

#正值:密码中最多小写字母个数,负值:密码中最少小写字母个数。
lcredit = 0

#正值:密码中最多特殊字符个数,负值:密码中最少特殊字符个数。
ocredit = 0

#密码中最少字符种类(数字、大写字母、小写字母、特殊字符)。
# minclass = 2

#0:关闭字典检查,1:开启字典检查。
dictcheck = 0

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

2.2. 密码有效期

对于新建密码,配置文件:/etc/login.defs

#密码最长有效期,99999表示永久有效。
PASS_MAX_DAYS   99999

#密码最短有效期,0表示不限制
PASS_MIN_DAYS   0

#密码过期前多久警告。
PASS_WARN_AGE   7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

对于已有用户密码

kylin@kylin-vm:~$ chage --help
用法:chage [选项] 登录名

选项:
  -d, --lastday 最近日期        将最近一次密码设置时间设为“最近日期”
  -E, --expiredate 过期日期     将帐户过期时间设为“过期日期”
  -h, --help                    显示此帮助信息并退出
  -i, --iso8601                 use YYYY-MM-DD when printing dates
  -I, --inactive INACITVE       过期 INACTIVE 天数后,设定密码为失效状态
  -l, --list                    显示帐户年龄信息
  -m, --mindays 最小天数        将两次改变密码之间相距的最小天数设为“最小天数”
  -M, --maxdays MAX_DAYS        set maximum number of days before password
                                change to MAX_DAYS
  -R, --root CHROOT_DIR         chroot 到的目录
  -W, --warndays 警告天数       将过期警告天数设为“警告天数”

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

2.3. 账户锁定

配置文件:/etc/pam.d/common-auth

#连续输错5次,锁定3分钟。
auth    [success=1 default=ignore]      pam_unix.so nullok_secure try_first_pass deny=5 unlock_time=180 root_unlock_time=180

参数说明:
    deny:密码连续输错次数
    unlock_time:普通用户锁定后所需解锁时间
    root_unlock_time:root用户锁定后所需解锁时间
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3. 网络保护

3.1. 防火墙

配置文件:/etc/kylin-firewall/kylin-firewall.conf

#当前网络模式
Zone=public | work | custom | trusted

#之前网络模式
PreZone=public | work | custom | trusted

参数说明:
    public:公共模式
    work:工作模式
    custom:自定义模式
    trusted:信任模式

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

3.2. 应用程序联网

语法:
setstatus -f netctl < off | enforcing | warning > [-p]

参数说明:同1.2节
  • 1
  • 2
  • 3
  • 4

4. 应用控制与保护

4.1. 应用程序来源检查

系统暂不支持命令行设置。安装 kylin-signtool、libkylin-signtool 这两个依赖包之后就可以使用命令行进行配置了。

#查看应用程序来源检查状态
kylin@kylin-vm:~$ getsignstatus 
麒麟签名状态:关闭

#设置应用程序来源检查状态
kylin@kylin-vm:~$ setsignstatus --help
用法:setsignstatus [选项]
选项:
	off,		设置安装deb包的状态为关闭
	warning,	设置安装deb包的状态为警告
	on,		    设置安装deb包的状态为开启(需要提权)
	 --help,	命令提示帮助

 例子:
	 setsignstatus on
	 setsignstatus off

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

4.2. 应用程序执行控制

语法:
setstatus -f exectl < off | enforcing | warning > [-p]

参数说明:同1.2节
  • 1
  • 2
  • 3
  • 4

4.3. 应用程序防护

4.3.1. 进程防杀死

关键进程状态监控:进程退出状态为DEAD、ZOMBIE或者进程主动退出时,会调用关机、注销、锁屏操作。配置文件 /etc/kysec/ppro/ppro.conf 中配置防护动作,poweroff为关机,logout为注销,lock为锁屏。

配置文件:
/sys/kernel/security/kysec/ppro:进程防护状态(1开启,0关闭)
/sys/kernel/security/kysec/ppro_info:各类型防护进程数量
/etc/kysec/ppro/ppro.xml:进程防护列表

语法:

#设置进程防护模块状态。
setstatus -f ppro < off | on >

参数说明:同1.2节

#设置单个进程状态。(v10可用)
kysec_ppro < -a | -u | -d > < process > < subs | key >

参数说明:
    -a:加入进程防护列表 | -u:更新进程防护列表 | -d:从防护进程中移除
    subs:进程防杀死 | key:关键进程状态监控
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
4.3.2. 内核模块防卸载
#设置内核模块防卸载模块状态。
setstatus -f kmod < off | on >

参数说明:同1.2节。

#将模块加入防卸载白名单
kysec_set -n exectl -v < original | verified | trusted |kysoft >  <MODULEFILE>

#将模块从防卸载名单移除
kysec_set -n exectl -v unknown <MODULEIFLE>

参数说明:同4.3.3节。

#设置单个模块状态。(V10可用)
kysec_kmod < -a | -d > < MODULEFILE>

参数说明:
    -a:开启防卸载保护 | -d:关闭防卸载保护
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
4.3.3. 文件防篡改
#设置文件防篡改模块状态。
setstatus -f fpro < off | on >

参数说明:同1.2节。
  • 1
  • 2
  • 3
  • 4

文件标记类型

  • userid(文件身份标记):用于对执行文件的用户进行限制。
    secadm:只能安全管理员执行
    audadm:只能审计管理员执行
    none:所有用户都可执行

  • protect(文件保护标记):用于对文件进行保护和检测。
    verify:执行前检查文件是否发生变化,如果发生变化禁止执行。
    readonly:文件只读,禁止对文件进行写入、移动、重命名和属性修改。
    none:无文件保护标记。

  • exectl(执行控制标记):用于对文件是否可执行进行控制。
    unknown:未知、被篡改文件标记。
    original:系统原始文件标记。
    verified:认证标记。
    kysoft:麒麟软件标记。
    trusted:信任标记,拥有该标记的程序对文件进行修改时,文件的标记不变。
    parent:dpkg类标记。

#查看文件标记
kylin@kylin-vm:~$ kysec_get /usr/bin/cat
/usr/bin/cat: none:none:original

#设置文件标记
kysec_set [-r] -n < userid | protect | exectl > -v <标记符号> <PATH>

参数说明:
    -r:递归,用于目录。
    -n:指定标记类型。
    -v:指定标记符号。
    PATH:需要更新到白名单列表的文件路径,该文件必须为可执行文件、shell脚本、python脚本、so动态链接库、ko内核模块。
    
示例:
#将test.sh加入文件保护列表
kysec_set -n protect -v readonly ~/桌面/test.sh

#将test.sh移出文件保护列表
kysec_set -n protect -v none ~/桌面/test.sh

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/146594
推荐阅读
相关标签
  

闽ICP备14008679号