麒麟系统V10系统安全加固

news/2025/3/20 16:27:27/文章来源:https://www.cnblogs.com/wutao-007/p/18783343

一、安装clamav杀毒软件

1.在clamav官网下载:https://www.clamav.net/downloads

也可以在github上下载早一点的版本:https://github.com/Cisco-Talos/clamav/releases

我这里安装clamav-1.1.2

rpm -ivh clamav-1.1.2.linux.x86_64.rpm

2.下载病毒库:

https://database.clamav.net/main.cvd

https://database.clamav.net/daily.cvd

https://database.clamav.net/bytecode.cvd

将三个病毒库放在目录中,然后使用nginx代理,

server {listen       80;server_name  localhost;root /project/clamav-mirror;index index.html;location / {autoindex on;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}
}#/project/clamav-mirror/下就是三个病毒库文件

 把/usr/local/etc/下的clamd.conf.sample和freshclam.conf.sample  复制为clamd.conf和freshclam.conf

修改以下内容:

egrep -v "^#|^$" /usr/local/etc/clamd.conf
DatabaseDirectory /var/lib/clamav                    #病毒库存放目录
TCPSocket 3310
TCPAddr 0.0.0.0

修改以下内容:

[root@web1 etc]# egrep -v "^#|^$" /usr/local/etc/freshclam.conf
DatabaseDirectory /var/lib/clamav
DatabaseOwner root
DatabaseMirror 10.110.55.11         #本地病毒库地址,就是上面配置的nginx地址
ScriptedUpdates yes
PrivateMirror 10.110.55.11           #本地病毒库地址,就是上面配置的nginx地址
Checks 12

 

执行:/usr/local/bin/freshclam 加载病毒库

[root@web1 etc]# /usr/local/bin/freshclam
ClamAV update process started at Thu Mar 20 16:16:29 2025
WARNING: DNS Update Info disabled. Falling back to HTTP mode.
Trying to retrieve CVD header from http://10.110.55.11/daily.cld
Time:    0.0s, ETA:    0.0s [========================>]       146B/146B
WARNING: remote_cvdhead: file not found: http://10.110.55.11/daily.cld
Trying to retrieve CVD header from http://10.110.55.11/daily.cvd
Time:    0.0s, ETA:    0.0s [========================>]       512B/512B
OK
daily.cvd database is up-to-date (version: 27580, sigs: 2073246, f-level: 90, builder: raynman)
Trying to retrieve CVD header from http://10.110.55.11/main.cld
Time:    0.0s, ETA:    0.0s [========================>]       146B/146B
WARNING: remote_cvdhead: file not found: http://10.110.55.11/main.cld
Trying to retrieve CVD header from http://10.110.55.11/main.cvd
Time:    0.0s, ETA:    0.0s [========================>]       512B/512B
OK
main.cvd database is up-to-date (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr)
Trying to retrieve CVD header from http://10.110.55.11/bytecode.cld
Time:    0.0s, ETA:    0.0s [========================>]       146B/146B
WARNING: remote_cvdhead: file not found: http://10.110.55.11/bytecode.cld
Trying to retrieve CVD header from http://10.110.55.11/bytecode.cvd
Time:    0.0s, ETA:    0.0s [========================>]       512B/512B
OK
bytecode.cvd database is up-to-date (version: 335, sigs: 86, f-level: 90, builder: raynman)

启动病毒库:clamd --config-file=/usr/local/etc/clamd.conf      #服务端口为3310

 

扫描/project/nginx/conf/Virtaul/目录:

[root@web1 etc]# /usr/local/bin/clamscan -r -i /project/nginx/conf/Virtaul/----------- SCAN SUMMARY -----------
Known viruses: 8705025
Engine version: 1.1.2
Scanned directories: 1
Scanned files: 3
Infected files: 0
Data scanned: 0.01 MB
Data read: 0.00 MB (ratio 2.00:1)
Time: 55.487 sec (0 m 55 s)
Start Date: 2025:03:20 16:17:06
End Date:   2025:03:20 16:18:02

 

二、配置rsyslog服务
1.在日志服务器开启监听514端口,且配置不同客户端主机日志存放路径

添加:
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
if ($fromhost-ip == '10.110.55.106') then /project/client_logs/10.110.55.106.log              #指定10.110.55.106这台主机发过来额日志,存放路径,需要先创建日志所在的目录
/project/client_logs/
& stop if ($fromhost-ip == '10.110.55.105') then /project/client_logs/10.110.55.105.log #同上 & stop if ($fromhost-ip == '10.110.55.104') then /project/client_logs/10.110.55.104.log & stop

2.在客户端服务器上的/etc/rsyslog.conf中添加:

*.* @10.110.55.38:514
*.* @@10.110.55.38:514

3.然后重启systemctl restart rsyslog

 三、修改用户登录策略。

1./etc/security/limits.conf
添加:最大登录两个用户

cat >>/etc/security/limits.conf <<EOF
* hard maxlogins 4
* hard maxsyslogins 2
root hard maxsyslogins 2
root hard maxlogins 2
EOF

2./etc/profile
添加: 不操作超时退出,以及umask改为077

cat >> /etc/profile << EOF
TMOUT=900
export TMOUT
umask 077
EOF

3./etc/pam.d/password-auth
添加:
cat >> /etc/pam.d/password-auth <<EOF
auth required pam_tally2.so deny=3 unlock_time=900
EOF
4./etc/pam.d/system-auth
添加:
cat >> /etc/pam.d/system-auth <<EOF
auth required pam_tally2.so deny=3 unlock_time=900
EOF
5./etc/pam.d/sshd.pam
添加:
cat >> /etc/pam.d/sshd.pam << EOF
auth required pam_limits.so
EOF

6./etc/ssh/sshd_config

sed -i "/^#UsePAM yes/s/#UsePAM yes/UsePAM yes/g" /etc/ssh/sshd_config


7./etc/pam.d/login
cat >> /etc/pam.d/login << EOF
account required pam_limits.so
EOF

 

8./etc/login.defs          #密码过期时间为90天,最小密码长度为16位
修改为:
sed -i "/^PASS_MAX_DAYS/s/99999/90/g" /etc/login.defs
sed -i "/^PASS_MIN_DAYS/s/0/1/g" /etc/login.defs
sed -i "/^PASS_MIN_LEN/s/5/16/g" /etc/login.defs


9./etc/pam.d/sshd


cat >> /etc/pam.d/sshd << EOF
#%PAM-1.0
auth substack password-auth
auth include postlogin
account required pam_sepermit.so
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session optional pam_motd.so
session include password-auth
session include postlogin
EOF

10./etc/security/pwquality.conf    #密码复杂度,必须包含大小写,数字,特殊字符,且最小长度为16位
修改密码策略:
sed -i "/^minlen =/s/minlen = 8/minlen = 16/g" /etc/security/pwquality.conf
sed -i "/^dcredit =/s/dcredit = 0/dcredit = -1/g" /etc/security/pwquality.conf
sed -i "/^ucredit =/s/ucredit = 0/ucredit = -1/g" /etc/security/pwquality.conf
sed -i "/^lcredit =/s/lcredit = 0/lcredit = -1/g" /etc/security/pwquality.conf
sed -i "/^ocredit =/s/ocredit = 0/ocredit = -1/g" /etc/security/pwquality.conf

修改:
sed -i "/^password requisite/s/password requisite pam_pwquality.so try_first_pass local_users_only/password requisite pam_pwquality.so try_first_pass local_users_only retry=3/g" /etc/pam.d/system-auth
sed -i "/^password requisite/s/password requisite pam_pwquality.so try_first_pass local_users_only/password requisite pam_pwquality.so try_first_pass local_users_only retry=3/g" /etc/pam.d/password-auth


11./etc/ssh/sshd_config
设置最大连接用户数为2个:
cat >>/etc/ssh/sshd_config << EOF
MaxSessions 2
MaxStartups 2
EOF

四、三员分类

1.创建三权账号
#新建管理员
useradd sysadmin
echo Clouddeep@admin8890 |passwd --stdin sysadmin

#新建操作员
useradd sysoperator
echo Clouddeep@operator8890 |passwd --stdin sysoperator

#新建审计员
useradd sysaudit
echo Clouddeep@audit8890 |passwd --stdin sysaudit

2.修改visudo配置
visudo

#管理员
Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig, /usr/bin/systemctl start, /usr/bin/systemctl stop, /usr/bin/systemctl reload, /usr/bin/systemctl restart, /usr/bin/systemctl status, /usr/bin/systemctl enable, /usr/bin/systemctl disable
Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount
sysadmin ALL=(root) SOFTWARE,SERVICES,STORAGE

#操作员
Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp
Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
sysoperator ALL=(root) DELEGATING,PROCESSES,NETWORKING

#审计员
sysaudit ALL=(root) NOPASSWD:/usr/bin/cat,/usr/bin/less,/usr/bin/more,/usr/bin/tail ,/usr/bin/head

3.测试配置是否正确
visudo -c

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/902069.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

孤独摇滚 K-ON wallpapers

双厨狂喜 孤独摇滚K-ON

医疗器械行业IPD流程设计:6个关键问题与解决方案

在当今竞争激烈的医疗器械行业,产品的创新与快速上市能力是企业生存和发展的关键。IPD(集成产品开发)流程作为一种先进的产品开发管理模式,正逐渐成为医疗器械企业提升竞争力的重要手段。然而,在实际应用中,许多企业在 IPD 流程设计方面面临着诸多挑战。本文将深入探讨医…

KUKA库卡KR360_R2830机械臂维修减速机卡住了

库卡机器人维修减速机卡死,作为一种常见的机械故障,其成因往往复杂多样,通常可以归结为长时间的高强度工作、外部异物的侵入、安装过程中的疏忽以及润滑系统的失效等多种因素。以下是对这一故障常见原因的详尽阐述,以及一些实用的维修建议:库卡机器人减速机卡死现象的根源…

【原厂】点阵LED数码管驱动/内置显示RAM为8x16位-LED显示驱动芯片VK1640 SOP28

产品品牌:永嘉微电/VINKA 产品型号:VK1640 封装形式:SOP28 概述 VK1640是一种数码管或点阵LED驱动控制专用芯片,内部集成有数据锁存器、LED 驱 动等电路。SEG脚接LED阳极,GRID脚接LED阴极,可支持8SEGx16GRID的点阵LED显示。 适用于小型LED显示屏驱动。采用SOP28的封装形式…

portainer学习笔记1

Portainer是一款非常好用的docker容器管理平台,部署也很easy。# 创建portainer数据卷 docker volume create portainer_data # 拉取镜像启动portainer docker run -d -p 8000:8000 -p 9443:9443 \ --name portainer --restart=always \ -v /var/run/docker.sock:/var/run/dock…

安装Python保姆级教程(Pycharm破解码+解释器安装)

一、进入Python官网首页,下载最新的Python版本 https://www.python.org/downloads/ 选择最新的Python3.10.5,下载64位的版本 二、下载完成后,进行安装 1.双击Python-3.10.5-amd64.exe 3.出现此页面表示安装成功 三、运行Python 1.Win+R打开控制台,输入Python 此时出现了一…

dify知识库

一、概述 知识库功能将 RAG 管线上的各环节可视化,提供了一套简单易用的用户界面来方便应用构建者管理个人或者团队的知识库,并能够快速集成至 AI 应用中。 开发者可以将企业内部文档、FAQ、规范信息等内容上传至知识库进行结构化处理,供后续 LLM 查询。 相比于 AI 大模型内…

DevOps 平台选型对比:功能与价值剖析

在数字化转型加速的当下,高效的软件开发流程成为企业竞争力的关键。DevOps 平台作为整合开发与运维的重要工具,其选型至关重要。Gitee DevOps 是一款在行业内表现出色的平台,能为企业提供从代码管理到部署上线的全流程支持。通过对其功能、价格、用户体验等多方面与市场竞品…

关于如何搭建anythingllm+ollama(deepseekr1、嵌入模型)+milvus的本地知识库语言模型

这里只是对于自己在部署过程中踩到的坑做个记录。 以anythingllm为平台,接入基于ollama运行deepseekr1通用模型、嵌入模型,使用milvus作为向量数据库。其中milvus和anythingllm均在docker desktop中运行。 一、ollama 1.首先在ollama官网下载并安装ollama。 2.然后在官网的mo…

Endnote 修改了参考文献格式后,文献的引用有的上标,有的不是上标

如上图,有的文献引用是正常格式,有的文献引用的的方括号是上标的形式。解决如下: 打开Endnote,找到“编辑”---“输出样式”---“编辑XXXXXX”(XXXXXX表示你正在使用的参考文献格式)---“引用”---“模板”---“Citatian” 将方框中的“Bibliography Number”两边的方括号…

Explain查询Sql效率

Explain分析Sql性能 前言 在我们平时开发中,因为系统可能属于初级阶段,数据库的数据还不是很多,所以自我感觉写的Sql语句上运行起来速度还不错,殊不知,随着时间推移,数据量日益增多,系统的查询效率会在打折扣,所以,Sql性能调优手段还得了解一下下。 Explain是什么?有…

部署mall项目遇到的问题和解决方案

部署mall项目爬坑日记 原作者项目 环境:ubuntu20 docker容器相关的坑 发现容器打印的日志和当前时间有出入,相差了8小时,后面得知容器和宿主机的时区不同导致 !> 解决办法有如下几种:1.在刚开始创建容器的时候,docker run后面加上-v /etc/localtime:/etc/localtime:ro2…