麒麟操作系统安全基线配置操作手册_第1页
麒麟操作系统安全基线配置操作手册_第2页
麒麟操作系统安全基线配置操作手册_第3页
麒麟操作系统安全基线配置操作手册_第4页
麒麟操作系统安全基线配置操作手册_第5页
已阅读5页,还剩291页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

麒麟操作系统安全基线配置操作手册文件编号:KYLIN-KYOSER-V1.0声明本手册中所列举的配置参数为麒麟操作系统初全参考。在实际使用过程中,用户方应在充分考虑部署环境前言性和可靠性至关重要。银河麒麟操作系统已广泛应用关键行业领域。为贯彻落实国家网络安全等级保护制作系统的部署与配置,有效防范和抵御潜在的安全威平,在国家工业信息安全发展研究中心和工业和信息化部网络安本手册旨在为系统管理员、安全运维人员和技性强的安全配置指南。手册内容基于国内外安规范,结合银河麒麟操作系统的技术特性,详细阐通过遵循本手册的指导进行系统配置,可以显著访问控制能力,确保数据保密性与完整性,并建业务系统的具体需求、性能要求及面临的独参编单位麒麟操作系统安全基线配置操作手册I 2 2 5 8 453.1修改snmp默认团体字 47麒麟操作系统安全基线配置操作手册 49 51 54 65 67 685.7检查是否安装入侵检测工具AIDE 73 81 83 6.9设置守护进程的umask值 麒麟操作系统安全基线配置操作手册 99 麒麟操作系统安全基线配置操作手册1◆分类:用于表示当前加固项所属的大类(安全服务、内核参数统审计、系统设置、潜在风险、文件权限、风险账户、密码强度V4、中标麒麟高级服务器操作系统V7、银河麒麟高级服务器操作系统V10、银河麒麟高级服务器操作系统V10SPX、银河麒麟桌面操作系统V10SP1";◆说明:用于说明该规则的要求、背景;◆检查方法:用于表示在系统中通过什么方式检查该规则是否满足;还原方法用于表示在系统中通过什么方式将加固过后的系◆修改影响:用于说明系统如果按照该规则进行配置,对系统或业务造成的影响,如果没有▪V7/V10/V10SPX安装软件包▪V4安装软件包:使用deb/kylin/KYLIN-ALL10.0main▪V4执行手册中的命令需要使用sudo权限。麒麟操作系统安全基线配置操作手册21.1禁用不必要的系统服务银河麒麟高级服务器操作系统V10服务器禁用不必要的系统服务:cups{cups.service,cups-lpd.socket}、sendmail{sendmail.service}、nfs{nfs.service,nfs-server.service}、ident{auth.socket}、ntalk{ntalk.socket,ntalk.service}、bootps{dhcpd.service}、ypbind{ypbind.service}、nfs-lock{nfs-lock.service}、tftp{tftp.service,tftp.socket}、rsync{rsyncd.service}、vsftp{vsftpd.service}。rsync{rsync.service}、vsftp{vsftpd.service}。[root@localhost~]#systemctlis-enabled<服务名>麒麟操作系统安全基线配置操作手册3disabled[root@localhost~]#systemctlis-active<服务名>inactive结果为diable代表禁止服务自启动;结果为inactive、unknow代表服务处于[root@localhost~]#systemctldisable<服务名>[root@localhost~]#systemctlstop<服务名>[root@localhost~]#systemctlenable<服务名>[root@localhost~]#systemctlstart<服务名>cups{cups.service,cups-lpd.socket}、sendmail{sendmail.service}、nfs{nfs.service,nfs-server.service}、ident{auth.socket}、ntalk{ntalk.socket,ntalk.service}、bootps{dhcpd.service}、ypbind{ypbind.service}、nfs-lock{nfs-lock.service}、tftp{tftp.service,tftp.socket}、rsync{rsyncd.service}、vsftp{vsftpd.service},加固项功能如麒麟操作系统安全基线配置操作手册4服务功能cupsCUPS服务支持本地打印机、网络打印机,并能够共享打印机。sendmailSendmail服务是一种电子邮件传输代理程序,它允许用户在本地和远程主机之间发送和接收邮件。nfsNFS(NetworkFileSystem)是一种分布式文件系统协议,它允许用户在客户端和服务器之间共享文件和目录。。identIndent服务是一种认证机制,它允许用户通过网络协议(如SSH)访问服务器上的资源。ntalkNtalk是一种基于文本的聊天服务,它允许用户通过网络协议(如TCP/IP)进行实时通信。bootpsBOOTP是一种用于网络设备自动配置的协议,它允许无盘工作站从网络上获取IP地址、子网掩码、默认网关等信息。。ypbindypbind(YellowPagesBind)是NIS(NetworkInformationService)的客户端守护进程。nfs-lockNFS-Lock服务是NetworkFileSystem(NFS)的一部分,它负责在客户端和服务器之间协调文件锁定。tftpTFTP(TrivialFileTransferProtocol)是一种简单的文件传输协议,它允许用户在客户端和服务器之间上传或下载文件。rsyncRSync服务是一种文件同步工具,它允许用户在本地和远程主机之间进行快速、安全的数据备份和迁移。vsftpVSFTP(也称为VSFTPD,代表“VerySecureFTPDaemon”)是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,其全称是VerySecureFTP麒麟操作系统安全基线配置操作手册51.2设置ssh登录前警告Banner银河麒麟高级服务器操作系统V10检查系统openssh安全配置,设置ssh登录前警告Banner。通过如下命令检查/etc/ssh/sshd_config文件中Banner后路径是否为/etc/:[root@localhost~]#grep"^Banner"/etc/ssh/sshd_configBanner/etc/检查/etc/文件中是否包含如下行:Authorizedusersonly.Allactivitiesmaybemonitoredandreported.结果为Banner后路径为/etc/;/etc/文件存在上述行,满6编辑/etc/ssh/sshd_config文件,如果存在Banner在行首添加"#"进行注释,在注释行之后添加以下内容,不存在Banner行Banner/etc/[root@localhost~]#echo"Authorizedusersonly.Allactivitiesmaybemonitoredandreported.">/etc/[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件将加固时新增的行删除,如果文件默认存在未注banner行,去掉Banner行的注释,恢复/etc/文件。[root@localhost~]#systemctlrestartsshd检查系统openssh安全配置,设置ssh登录前警告Banner。通过如下命令检查/etc/ssh/sshd_config文件中Banner后路径是否为/etc/:kylin@Kylin:~$sudogrep"^Banner"/etc/ssh/sshd_config7Banner/etc/检查/etc/文件中是否包含如下行(默认值为KylinV10SP1Authorizedusersonly.Allactivitiesmaybemonitoredandreported.结果为Banner后路径为/etc/;/etc/文件存在上述行,满编辑/etc/ssh/sshd_config文件,如果存在Banner在行首添加"#"进行注释,在注释行之后添加以下内容,不存在Banner行Banner/etc/kylin@Kylin:~$sudobash-c'echo"Authorizedusersonly.Allactivitiesmaybemonitoredandreported.">/etc/'kylin@Kylin:~$sudosystemctlrestartsshd编辑/etc/ssh/sshd_config文件将加固时新增的行删除,如果文件默认存在未注banner行,去掉Banner行的注释,恢复/etc/文件(KylinV10SP1)。kylin@Kylin:~$sudosystemctlrestartsshd81.3设置ssh成功登录后Banner信息银河麒麟高级服务器操作系统V10检查系统openssh安全配置,设置ssh登录后警告Banner。通过如下命令验证SSH服务是否应用pam_motd.so模块:[root@localhost~]#grep"pam_motd.so"/etc/pam.d/sshd|grep"session"|grep"optional"sessionoptionalpam_motd.so通过如下命令检查/etc/motd文件是否包含如下内容:[root@localhost~]#cat/etc/motdLoginsuccess.Allactivitywillbemonitoredandreported.结果为/etc/pam.d/sshd存在上述行;/etc/motd文件存在上述行,满足基线要求,无需加固,否则建议执行加固方法,加固前先记录一下/etc/motd文件的默认内9编辑/etc/pam.d/sshd文件,添加如下行确保ssh应用pam_motd.so模块:sessionoptionalpam_motd.so[root@localhost~]#echo"Loginsuccess.Allactivitywillbemonitoredandreported.">/etc/motd编辑/etc/pam.d/sshd文件将加固时新增的行删除:sessionoptionalpam_motd.so编辑/etc/motd文件恢复默认内容,删除添加的信息:Loginsuccess.Allactivitywillbemonitoredandreported.检查系统openssh安全配置,设置ssh登录后警告Banner。通过如下命令验证SSH服务是否应用pam_motd.so模块:kylin@Kylin:~$sudogrep"pam_motd.so"/etc/pam.d/sshd|grep"session"|grep"optional"sessionoptionalpam_motd.somotd=/run/motd.dynamicsessionoptionalpam_motd.sonoupdate通过如下命令检查/etc/update-motd.d/00-header文件是否包含如下内容:kylin@Kylin:~$sudocat/etc/update-motd.d/00-header|grep'Loginsuccess'printf'Authorizedusersonly.Allactivitiesmaybemonitoredandreported.'结果为/etc/pam.d/sshd存在上述行;/etc/motd文件存在上述行,满足基线要求,无需加固,否则建议执行加固方法,加固前先记录一下/etc/motd文件的默认内编辑/etc/pam.d/sshd文件,添加如下行确保ssh应用pam_motd.so模块:sessionoptionalpam_motd.so通过如下命令在/etc/update-motd.d/00-header设置相关警告信息:kylin@Kylin:~$echo"printf'Loginsuccess.Allactivitiesmaybemonitoredandreported.'"|sudotee-a/etc/update-motd.d/00-header>/dev/null编辑/etc/pam.d/sshd文件将加固时新增的行删除:sessionoptionalpam_motd.so编辑/etc/motd文件恢复默认内容,删除添加的信息:printf'Loginsuccess.Allactivitiesmaybemonitoredandreported.'1.4禁止root用户登录SSH银河麒麟高级服务器操作系统V10检查系统openssh安全配置,禁止root用户通过ssh登录。通过如下命令验证是否已配置ssh禁止root登录,配置PermitRootLogin为[root@localhost~]#grep"^PermitRootLogin"/etc/ssh/sshd_configPermitRootLoginno结果为PermitRootLoginno满足基线要求,无需编辑/etc/ssh/sshd_config文件,如果存在未注释的PermitRootLogin行,在行首添加"#"进行注释,在注释行之后添加以下内容,不存在PermitRootLogin参数PermitRootLoginno[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件将加固时新增的行删除,恢复文件默认内容,重[root@localhost~]#systemctlrestartsshdroot用户无法通过ssh服务远程登录本服务器。银河麒麟高级服务器操作系统V10检查系统openssh安全配置,ssh服务使用安全的协议版本。麒麟操作系统安全基线配置操作手册SSH1:SSH1是最初的版本,主要由TatuYlönen在1995年开发。它并未严格遵循IETF(InternetEngin包括公钥认证机制。RFC4253:定义了SSH传输层协议,用于加密和压缩会话数RFC4255:定义了SSH公钥指纹格式。它们在安全性和功能上有显著的区别:弱的加密算法,并且在密钥交换和会话完整性保护方面不如S麒麟操作系统安全基线配置操作手册[root@localhost~]#grep"^Protocol"/etc/ssh/sshd_configProtocol2编辑/etc/ssh/sshd_config文件,如果存在未注释的Protocol行在首添加"#"进Protocol2[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件把加固时新增的行删除,恢复文件默认内容,然后重启sshd服务:[root@localhost~]#systemctlrestartsshd银河麒麟高级服务器操作系统V10[root@localhost~]#grep"^LogLevel"/etc/ssh/sshd_configLogLevelINFO编辑/etc/ssh/sshd_config文件找到LogLevel所在行,如果存在未注释的Loglevel在行首添加"#"进行注释,在注释行之后添加以下内容不,不存在参数在文LogLevelINFO[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件把加固时新增的行删除,再去掉查找到的LogLevel所在行的行首的"#",然后重启ssh服务:[root@localhost~]#systemctlrestartsshd1.7设置ssh失败尝试次数检查系统openssh安全配置,设置SSH失败尝试次数。MaxAuthTries控制在断开连接之前客户端尝试身份验证的最大次数。[root@localhost~]#grep"^MaxAuthTries"/etc/ssh/sshd_configMaxAuthTries4结果为MaxAuthTries4或小于4满足基线要求,无需加固,否则编辑/etc/ssh/sshd_config文件找到MaxAuthTries所在行,如果存在未注释的MaxAuthTries在行首添加"#"进行注释,在注释行之后添加以下内容,不存在参数MaxAuthTries4[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件把加固时新增的行删除,恢复文件默认内容,然后重启sshd服务:[root@localhost~]#systemctlrestartsshd银河麒麟高级服务器操作系统V10[root@localhost~]#grep"^PermitEmptyPasswords"/etc/ssh/sshd_configPermitEmptyPasswordsno结果为PermitEmptyPasswordsno满足基线要求,无需加固,否则建议执行编辑/etc/ssh/sshd_config文件找到PermitEmptyPasswords所在行,如果存在未注释的PermitEmptyPasswords行,在行首添加"#"进行注释,在注释行之后添加以下内容:PermitEmptyPasswordsno然后重启sshd服务:[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件把加固时新增的行删除,如果存在未注释的[root@localhost~]#systemctlrestartsshd银河麒麟高级服务器操作系统V10检查系统openssh安全配置,禁用SSH环境启用PermitUserEnvironment可能会带来一些安全风险,因为攻击者可能尝试通过修改用户的~/.ssh/environment文件来注入恶意环境变量。[root@localhost~]#grep"^PermitUserEnvironment"/etc/ssh/sshd_configPermitUserEnvironmentno结果为PermitUserEnvironmentno满足基线要求,无需加固,否则建议执行编辑/etc/ssh/sshd_config文件,如果存在未注释的PermitUserEnvironment末添加以下内容:PermitUserEnvironmentno然后重启sshd服务:[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件把加固时新增的行全部删除,恢复文件默认内容,然后重启sshd服务:[root@localhost~]#systemctlrestartsshd用户在~/.ssh/environment文件中定义的环境变量不会生效。1.10开启ssh强加密算法银河麒麟高级服务器操作系统V10检查系统openssh安全配置,启用强加密算法。1987年设计的一种流密码算法。MD5:尽管MD5在哈希领域广泛使用,但由于其通过如下命令检查系统加密算法中不包含弱加密算法arcfour、3des、md5、[root@localhost~]#cat/etc/ssh/sshd_config|grep-v'^#'|grepCiphersCiphersaes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@,aes256-gcm@,chacha20-poly1305@编辑/etc/ssh/sshd_config文件Ciphers所在行,在行首添加"#"进行注释,在Ciphersaes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc[root@localhost~]#systemctlrestartsshd编辑/etc/ssh/sshd_config文件把以下加固时新增的行全部删除,再去掉查找到的Ciphers所在行的行首的"#":Ciphersaes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc[root@localhost~]#systemctlrestartsshd强加密算法通常具有更高的加密强度和更复杂的加密过程,这使得数据在传输过1.11开启ssh服务自启动银河麒麟高级服务器操作系统V10[root@localhost~]#systemctlis-enabledsshd.serviceenable[root@localhost~]#systemctlis-activesshd.serviceactive结果为enable代表禁止服务自启动;结果为active代表服务处于非活跃的状态,[root@localhost~]#systemctlenablesshd.service[root@localhost~]#systemctlstartsshd.service[root@localhost~]#systemctldisablesshd.service[root@localhost~]#systemctlstopsshd.service启动sshd.service意味着系统开启了SecureShell(SSH)服务,允许其他用户或管理员通过网络使用加密的连接方式登录到这台服务器。这意味着你可以在本地主银河麒麟高级服务器操作系统V10禁用telnet服务通常是为了增强系统的安全性,因为telnet协议以明文方式传通过如下命令验证telnet服务是否已关闭:[root@localhost~]#systemctlis-enabledtelnet.socketdisabled[root@localhost~]#systemctlis-activetelnet.socketin-active结果为diable代表禁止服务自启动;结果为inactive、unknow代表服务处于通过如下命令关闭telnet服务:麒麟操作系统安全基线配置操作手册[root@localhost~]#systemctldisabletelnet.socket[root@localhost~]#systemctlstoptelnet.socket通过如下命令开启telnet服务:[root@localhost~]#systemctlenabletelnet.socket[root@localhost~]#systemctlstarttelnet.socket关闭Telnet服务器以阻止远程连接到此计算机的Telnet服务。银河麒麟高级服务器操作系统V10stream、daytime-dgram、eklogin、echo-stream、echo-dgram、tcpmux-server、discard-dgram、discard-stream、klogin、krb5-telnet、ekrb5-telnet、麒麟操作系统安全基线配置操作手册[root@localhost~]#chkconfig--list运行结果(以部分xinetd的服务为例chargen-dgram:关chargen-stream:关cvs:关daytime-dgram:关daytime-stream:关discard-dgram:关discard-stream:关echo-dgram:关echo-stream:关tcpmux-server:关time-dgram:关time-stream:关通过如下命令禁用chargen-dgram、chargen-stream、daytime-dgram、daytime-stream、eklogin、echo-dgram、echo-stream、tcpmux-server、discard-dgram、discard-stream、klogin、krb5-telnet、ekrb5-telnet、cvs、麒麟操作系统安全基线配置操作手册[root@localhost~]#chkconfig<服务名>off通过如下命令将加固时设置为off的服务启用:[root@localhost~]#chkconfig<服务名>on加固后无法使用所示的服务:chargen-dgram、chargen-stream、daytime-dgram、daytime-stream、eklogin、echo-dgram、echo-stream、tcpmux-server、discard-dgram、discard-stream、klogin、krb5-telnet、ekrb5-telnet、cvs、kshell、time-dgram、time-stream、lpd、gssftp。服务功能chargen-dgram产生随机字符序列的网络服务。chargen-stream连续发送生成的随机字符序列的网络服务。daytime-dgram返回当前日期时间的服务,使用UDP协议。daytime-stream返回当前日期时间的服务,使用TCP协议。eklogineklogin服务通常是指在AIX系统(IBM的Unix操作系统)中的一个组件,它是AIXEnhancedKerberos登录(EKA)功能的一部分。EKA提供了基于Kerberosv5协议的身份验证和安全远程登录功能。echo-dgram回显客户端发来的消息的服务,使用UDP协议。echo-stream回显客户端发来的消息的服务,使用TCP协议。tcpmux-serverTCP服务多路复用器,为多个不同的服务提供统一端口号。discard-dgram丢弃接收到的数据包的服务,使用UDP协议。麒麟操作系统安全基线配置操作手册服务功能discard-stream丢弃接收到的数据包的服务,使用TCP协议。klogin远程登录KerberosV5安全shell。krb5-telnet支持KerberosV5的Telnet协议。ekrb5-telnet加密的KerberosV5Telnet协议,旨在提供更安全的数据传输。cvsCVS(ConcurrentVersionsSystem)有一些潜在的风险,比如容易遭受拒绝服务攻击和非授权访问等问题kshellkshell服务是指KShell守护进程。time-dgram返回当前日期时间的服务,使用UDP协议。time-stream返回当前日期时间的服务,使用TCP协议。lpd一种网络打印协议。gssftp基于KerberosV5的FTP协议,支持文件传输。1.14关闭系统不必要的端口银河麒麟高级服务器操作系统V10麒麟操作系统安全基线配置操作手册关闭高危端口。以22端口为例。[root@localhost~]#firewall-cmd--query-port=22/tcpno[root@localhost~]#firewall-cmd--query-port=22/udpno通过如下命令检查所有端口是否已关闭SCTP传输:[root@localhost~]#firewall-cmd--query-port=22/sctpno通过如下命令禁止端口TCP传输:[root@localhost~]#firewall-cmd--remove-port=22/tcpsuccess[root@localhost~]#firewall-cmd--remove-port=22/udpsuccess通过如下命令禁止端口SCTP传输:[root@localhost~]#firewall-cmd--remove-port=22/sctpsuccess[root@localhost~]#firewall-cmd--runtime-to-permanentsuccess[root@localhost~]#firewall-cmd--add-port=22/tcpsuccess[root@localhost~]#firewall-cmd--add-port=22/udpsuccess[root@localhost~]#firewall-cmd--add-port=22/sctpsuccess[root@localhost~]#firewall-cmd--runtime-to-permanentsuccess关闭高危端口。以22端口为例。通过如下命令检查端口是否已设置关闭规则,若未设置则kylin@Kylin:~$sudoufwstatusverbose|grep22kylin@Kylin:~$sudoufwdeny22kylin@Kylin:~$sudoufwallow22银河麒麟高级服务器操作系统V10通过/etc/hosts.allow和/etc/hosts.deny文件实现对ssh访问源的限制通,可通过如下命令检查文件/etc/hosts.allow中是否已配置允许/24[root@localhost~]#cat/etc/hosts.allow|grep"192.168.201.*"sshd:192.168.201.*:allow通过如下命令检查文件/etc/hosts.deny中内容是否已配置禁止所有网段访问:[root@localhost~]#grep'sshd'/etc/hosts.denysshd:ALL将目标网段按格式加入/etc/hosts.allow;/etc/hosts.deny里禁止所有网段,满如果文件不存在先创建该文件再编辑,如果文件存在直接编辑/etc/hosts.allowsshd:192.168.201.*:allow如果文件不存在先创建该文件再编辑,如果文件存在直接编辑/etc/hosts.denysshd:ALL[root@localhost~]#systemctlrestartsshd如果文件默认不存在删除该文件,如果文件默认存在编辑/etc/hosts.allow文件sshd:192.168.201.*:allow如果文件默认不存在删除该文件,如果文件默认存在编辑/etc/hosts.deny文件sshd:ALL[root@localhost~]#systemctlrestartsshd通过pam.d模块实现对ssh访问源的限制通,可以使S通过如下命令检测ssh服务是否已启用pam.d模块:[root@localhost~]#cat/etc/pam.d/sshd|grepaccount|greprequired|greppam_access.soaccountrequiredpam_access.so通过如下命令检查文件/etc/security/access.conf中是否已配置允许/24网段访问:[root@localhost~]#cat/etc/security/access.conf|grep+|grepALL|grep"/24"+:ALL:192.168.201.0/24通过如下命令检查文件/etc/security/access.conf中内容是否已配置禁止所有网[root@localhost~]#grep':\bALL:ALL\b'/etc/security/access.conf-:ALL:ALL检查/etc/security/access.conf文件中-:ALL:ALL所在行要在所有+:ALL:ip段/24所在行的后面。启用pam模块,将目标网段按上述格式加入/etc/security/access.conf;将禁止所有网段按上述格式加入/etc/security/access.conf,满足基线要求,无需加固,编辑/etc/pam.d/sshd文件添加如下内容:accountrequiredpam_access.so编辑/etc/security/access.conf文件添加内容,-:ALL:ALL要在所有+:ALL:ip段/24行之后:+:ALL:192.168.201.0/24-:ALL:-ALL编辑/etc/pam.d/sshd文件删除加固时添加的内容:accountrequiredpam_access.so编辑/etc/security/access.conf文件删除加固时添加的内容:+:ALL:192.168.201.0/24-:ALL:-ALL1.16设置登录后系统提示信息银河麒麟高级服务器操作系统V10检查系统openssh安全配置,用户成功登录时显示上次登录的信息。[root@localhost~]#grep"^PrintLastLog"/etc/ssh/sshd_configPrintLastLogyes结果为PrintLastLogyes或不存在该参数均满足基线要求,无需加固,否则建议编辑/etc/ssh/sshd_config文件,如果存在未注释的PrintLastLog参数,在行PrintLastLogyes[root@localhost~]#systemctlrestartsshd把加固时新增的行全部删除,如果默认存在未注释[root@localhost~]#systemctlrestartsshd2.1禁止icmp重定向报文银河麒麟高级服务器操作系统V10net.ipv4.conf.all.accept_redirects和net.ipv6.conf.all.accept_redirects设置net.ipv4.conf.all.secure_redirects和net.ipv4.conf.default.send_redirects设通过如下命令验证是否禁止icmp重定向:[root@localhost~]#sysctlnet.ipv4.conf.all.accept_redirectsnet.ipv4.conf.all.accept_redirects=0[root@localhost~]#sysctlnet.ipv4.conf.default.accept_redirectsnet.ipv4.conf.default.accept_redirects=0[root@localhost~]#grep"^net.ipv4.conf.all.accept_redirects"/etc/sysctl.confnet.ipv4.conf.all.accept_redirects=0[root@localhost~]#grep"^net.ipv4.conf.default.accept_redirects"/etc/sysctl.confnet.ipv4.conf.default.accept_redirects=0结果命令和文件存在net.ipv4.conf.all.accept_redirects=0、net.ipv4.conf.default.accept_redirects=0,满足基线要求,无需加固,否则建编辑/etc/sysctl.conf文件,如果查到关键行,在行首添加"#"进行注释,在注释net.ipv4.conf.all.accept_redirects=0net.ipv4.conf.default.accept_redirects=0通过如下命令载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p编辑/etc/sysctl.conf文件把加固时新增的行删除,恢复文件默认内容,通过如下命令以载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p关闭accept_redirects参数后,内核将不再接收ICMP重定向报文,可能导致网银河麒麟高级服务器操作系统V10检查系统内核参数配置,检查send_redirects配置。send_redirects是Linux系统中的一个配置选项,用于控制网络栈是否允许发送重定向包。当send_redirect通过如下命令验证是否禁止send_redirects发送定向:[root@localhost~]#sysctlnet.ipv4.conf.all.send_redirectsnet.ipv4.conf.all.send_redirects=0[root@localhost~]#sysctlnet.ipv4.conf.default.send_redirectsnet.ipv4.conf.default.send_redirects=0[root@localhost~]#grep"^net.ipv4.conf.all.send_redirects"/etc/sysctl.confnet.ipv4.conf.all.send_redirects=0[root@localhost~]#grep"^net.ipv4.conf.default.send_redirects"/etc/sysctl.confnet.ipv4.conf.default.send_redirects=0结果命令和文件存在net.ipv4.conf.all.send_redirects=0、net.ipv4.conf.default.send_redirects=0,满足基线要求,无需加固,否则建议编辑/etc/sysctl.conf文件,如果查到关键行,在行首添加"#"进行注释,在注释net.ipv4.conf.all.send_redirects=0net.ipv4.conf.default.send_redirects=0通过如下命令载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p40编辑/etc/sysctl.conf文件把加固时新增的行删除,恢复文件默认内容,通过如下命令以载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p银河麒麟高级服务器操作系统V1041echo报文给受害者(被伪造地址的设备)。通过如下命令验证是否忽略icmpecho请求广播:[root@localhost~]#sysctlnet.ipv4.icmp_echo_ignore_broadcastsnet.ipv4.icmp_echo_ignore_broadcasts=1[root@localhost~]#grep"^net.ipv4.icmp_echo_ignore_broadcasts"/etc/sysctl.confnet.ipv4.icmp_echo_ignore_broadcasts=1结果命令和文件存在net.ipv4.icmp_echo_ignore_broadcasts=1,满足基编辑/etc/sysctl.conf文件,如果查到关键行,在行首添加"#"进行注释,在注释net.ipv4.icmp_echo_ignore_broadcasts=1通过如下命令载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p编辑/etc/sysctl.conf文件把加固时新增的行删除,恢复文件默认内容,通过如下命令以载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p禁用icmp_echo_ignore_broadcasts参数后,内核将不再响应来自广播地址的42银河麒麟高级服务器操作系统V10通过如下命令验证是否禁止icmp源路由:[root@localhost~]#sysctlnet.ipv4.conf.all.accept_source_routenet.ipv4.conf.all.accept_source_route=043[root@localhost~]#sysctlnet.ipv4.conf.default.accept_source_routenet.ipv4.conf.default.accept_source_route=0[root@localhost~]#grep"^net.ipv4.conf.all.accept_source_route"/etc/sysctl.confnet.ipv4.conf.all.accept_source_route=0[root@localhost~]#grep"^net.ipv4.conf.default.accept_source_route"/etc/sysctl.confnet.ipv4.conf.default.accept_source_route=0结果命令和文件存在net.ipv4.conf.all.accept_source_route=0、net.ipv4.conf.default.accept_source_route=0,满足基线要求,无需加固,否编辑/etc/sysctl.conf文件,如果查到关键行,在行首添加"#"进行注释,在注释net.ipv4.conf.all.accept_source_route=0net.ipv4.conf.default.accept_source_route=0通过如下命令载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p编辑/etc/sysctl.conf文件把加固时新增的行删除,如果原文件未注释再去掉加固时注释行首的"#",通过如下命令以载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p禁用accept_source_route参数后,内核将不再接受含有源路由信息的IP数据44银河麒麟高级服务器操作系统V10检查系统内核参数配置,检查ip_forward配置。说明net.ipv4.ip_forward参数是Linux系统中的一个网络参数,用于控制内核通过如下命令验证是否禁止ip_forward数据包转发:[root@localhost~]#sysctlnet.ipv4.ip_forwardnet.ipv4.ip_forward=0[root@localhost~]#grep"^net.ipv4.ip_forward"/etc/sysctl.confnet.ipv4.ip_forward=0结果命令和文件存在net.ipv4.ip_forward=0,满足基线要求,无需加固,否45编辑/etc/sysctl.conf文件把查找到的行在行首添加"#"进行注释,在注释行之后net.ipv4.ip_forward=0通过如下命令以载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p编辑/etc/sysctl.conf文件把加固时新增的行删除,如果原文件未注释再去掉加固时注释行首的"#",通过如下命令以载入sysctl配置文件,并设置活动内核参数:[root@localhost~]#sysctl-p3.1修改snmp默认团体字46银河麒麟高级服务器操作系统V10检查是否修改snmp默认团体字。通过如下命令验证snmp是否存在默认public团体字:[root@localhost~]#cat/etc/snmp/snmpd.conf|grep"public"|grep"default"|grep-v"^#"com2secnotConfigUserdefaultpublic通过如下命令验证snmp是否存在默认private团体字:[root@localhost~]#cat/etc/snmp/snmpd.conf|grep"private"|grep"default"|grep-v"^#"com2secnotConfigUserdefaultprivate结果存在默认public团体字、结果存在默认private团体字需要加固,建议执行编辑/etc/snmp/snmpd.conf文件把查找到的行在行首添加"#"进行注释,如果存在public或public的行把注释行的public改成:security_snmp1,private改成:security_snmp2并去除default关键字,添加在注释行的下面:com2seccom2secnotConfigUsernotConfigUsersecurity_snmp1security_snmp2重启snmp服务:47[root@localhost~]#systemctlrestartsnmpd编辑/etc/snmp/snmpd.conf文件把加固时新增的行删除,如果默认存在注释行再去掉查找到的行的行首的"#",重启snmp服务:[root@localhost~]#systemctlrestartsnmpd禁用使用"public"和"private"共同体字符串的SNMP访问,使用这些共同体字符串的SNMP请求将无法通过身份验证。可使用security_snmp1、security_snmp2团体字。4系统命令银河麒麟高级服务器操作系统V10启用sudo日志可以审计用户在使用sudo时执行了什么命令等相关信息。48查询文件/etc/sudoers是否包含如下参数,不包含则需加固:[root@localhost~]#vim/etc/sudoersDefaultslogfile=/var/log/sudo.log查询文件/etc/rsyslog.conf是否包含如下参数,不包含则需加固:[root@localhost~]#cat/etc/rsyslog.conflocal2.debug/var/log/sudo.log结果/etc/sudoers、/etc/rsyslog.conf文件存在上述内容,满足基线要求,无需注意空白处用"Tab"键补齐,不可以用空格创建sudo.log文件:[root@localhost~]#touch/var/log/sudo.log[root@localhost~]#chownroot:root/var/log/sudo.log修改rsyslog配置文件,添加以下内容:[root@localhost~]#vim/etc/rsyslog.conflocal2.debug/var/log/sudo.log重启rsyslog服务:[root@localhost~]#systemctlrestartrsyslog[root@localhost~]#visudoDefaultslogfile=/var/log/sudo.log49删除sudo.log文件:[root@localhost~]#rm/var/log/sudo.log修改rsyslog配置文件,删除以下内容:[root@localhost~]#vim/etc/rsyslog.conflocal2.debug/var/log/sudo.log重启rsyslog服务:[root@localhost~]#systemctlrestartrsyslog[root@localhost~]#visudoDefaultslogfile=/var/log/sudo.log配置将这些日志消息定向到/var/log/sudo.log文件。所有匹配local2.debug4.2设置sudo命令使用伪终端执行银河麒麟高级服务器操作系统V10在Linux系统中,sudo命令允许授权用户以其他用户(通常是root)的身份运端(pseudo-terminal,简称为pty)。伪终端是一种模拟的终端设备,常用于需要查询文件/etc/sudoers是否存在以下行:[root@localhost~]#grep"use_pty"/etc/sudoersDefaultsuse_pty结果/etc/sudoers文件存在上述内容,满足基线要求,无需加固,否则建议执行[root@localhost~]#visudoDefaultsuse_pty[root@localhost~]#visudoDefaultsuse_pty启用伪终端(Pseudo-Terminal,PTY):Defaultsuse_pty这一行指令告诉sudo在执行命令时使用一个伪终端。伪终端是一种模拟真实终端设备的软件机制,认证绕过攻击。通过使用PTY,sudo能够更准确地模拟终端环境,使得4.3设置使用指定用户sudo提权需输入指定用户的密码银河麒麟高级服务器操作系统V10该用户自己的密码,而不是超级用户的密码。这是sudo查询文件/etc/sudoers是否存在以下行:Defaultstargetpw结果/etc/sudoers文件存在上述内容,满足基线要求,无需加固,否则建议执行[root@localhost~]#visudoDefaultstargetpw[root@localhost~]#visudoDefaultstargetpw密码提示:Defaultstargetpw这一行指令告诉sudo在用户以其他用户身份们也需要知道目标用户的密码才能以该用户的身份执行命令。这可以4.4配置su命令使用情况记录银河麒麟高级服务器操作系统V10检查/etc/rsyslog.conf文件是否配置了如下行:[root@localhost~]#cat/etc/rsyslog.confauthpriv.*/var/log/secure结果/etc/rsyslog.con文件存在上述内容,满足基线要求,无需加固,否则建议编辑/etc/rsyslog.conf文件,添加如下行:authpriv.*/var/log/secure编辑/etc/rsyslog.conf文件,删除添加的行:authpriv.*/var/log/securesu命令使用的日志消息都会被写入到/var/log/secure文件中。检查/etc/rsyslog.conf文件是否配置了如下行:[root@localhost~]#cat/etc/rsyslog.confauthpriv.*/var/log/auth.log结果/etc/rsyslog.con文件存在上述内容,满足基线要求,无需加固,否则建议编辑/etc/rsyslog.conf文件,添加如下行:authpriv.*/var/log/auth.log编辑/etc/rsyslog.conf文件,删除添加的行:authpriv.*/var/log/auth.logsu命令使用的日志消息都会被写入到/var/log/auth.log文件中。4.5限制输出和保留历史命令的条数银河麒麟高级服务器操作系统V10通过如下命令验证查看保留历史命令的条数条数设置为5条以下:[root@localhost~]#grep"^HISTSIZE"/etc/profile5通过如下命令验证查看保留历史命令的记录文件大小条数设置为5条以下:[root@localhost~]#grep"^HISTFILESIZE"/etc/profile5结果/etc/profile文件HISTSIZE参数设置为5条以下、HISTFILESIZE参数设置编辑/etc/profile文件,将查找到的行在行首添加"#"进行注释,在注释行下添加HISTSIZE=5[root@localhost~]#source/etc/profile编辑/etc/profile文件,查找HISTSIZE所在的行,在行首去掉"#"注释,删除加HISTSIZE=5[root@localhost~]#source/etc/profile配置后只能输出和保留最近的5条历史命令。5系统审计5.1开启审计机制银河麒麟高级服务器操作系统V10x86_64架构为例。通过如下命令检查auditd服务是否开启:[root@localhost~]#systemctlis-enabledauditd.serviceenabled[root@localhost~]#systemctlis-activeauditd.serviceactive结果为enable代表服务自启动;结果为active代表服务处于活跃的状态,满足设置auditd服务自启动:[root@localhost~]#systemctlenableauditd.service[root@localhost~]#systemctlstartauditd.service注意:V4需要先安装auditd包kylin@Kylin:~$sudoaptinstallauditd禁止auditd服务自启动:[root@localhost~]#systemctldisableauditd.service停止auditd服务:[root@localhost~]#systemctlstopauditd.service查看系统引导参数,包含"audit=0"参数,说明内核审计已关闭,否则添加"audit=0",然后重启系统:Boot引导方式下:[root@localhost~]#cat-n/boot/grub2/grub.cfg|grep"vmlinuz"|grep[架构]linux/vmlinuz-4.19.90-83.1.v2307.ky10.x86_64root=/dev/mapper/klas-rootroresume=/dev/mapper/klas-swaprd.lvm.lv=klas/rootrd.lvm.lv=klas/swaprhgbquietcrashkernel=1024M,highaudit=0security=nonelsm=noneUEFI引导方式下:[root@localhost~]#cat-n/boot/efi/EFI/kylin/grub.cfg|grep"vmlinuz"|grep[架构]linux/vmlinuz-4.19.90-83.1.v2307.ky10.x86_64root=/dev/mapper/klas-rootroresume=/dev/mapper/klas-swaprd.lvm.lv=klas/rootrd.lvm.lv=klas/swaprhgbquietcrashkernel=1024M,highaudit=0security=nonelsm=none系统性能overhead:启动audit服务会增加系统的负载,因为它需要监控和记录系统的各种活动。这包括文件访问、系统调用、用户登录注销安全性增强:audit服务的主要目的是跟踪和记录用户的操作,这对于安全分析和入侵检测非常有用。审计日志存储需求增加:audit服务生成的审计日志需要存储空间。随着系统活动的增加,审计日志的大小也会增长。如果不合理管理审计日志,例如设置适当的日志rotate策x86_64架构为例。[root@localhost~]#archx86_64·系统是bios引导,检查/boot/grub2/grub.cfg文件,匹配"vmlinuz"参数,匹配上一步arch命令查出的"[架构]"参数,检查audit是否已开启,1开启,0未开启:[root@localhost~]#cat-n/boot/grub2/grub.cfg|grep"vmlinuz"|grep[架构]linux/vmlinuz-4.19.90-83.1.v2307.ky10.x86_64root=/dev/mapper/klas-rootroresume=/dev/mapper/klas-swaprd.lvm.lv=klas/rootrd.lvm.lv=klas/swaprhgbquietcrashkernel=1024M,highaudit=0security=nonelsm=none系统是uefi引导,检查/boot/efi/EFI/kylin/grub.cfg文件中内容,匹配"vmlinuz"参数,匹配上一步arch命令查出的"[架构]"参数,检查audit是否已开启,通过如下命令检查auditd服务是否开启:[root@localhost~]#systemctlis-enabledauditd.serviceenabled[root@localhost~]#systemctlis-activeauditd.serviceactive结果为enable代表服务自启动;结果为active代表服务处于活跃的状态;grub.cfg文件中,满足基线要求,无需加固,否则建议执行加固方法。根据检查方法,确认要更改的文件,如果目标行无audit

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论