Solaris 系统安全基线 安全加固操作

本文档涵盖Solaris操作系统在账号认证、日志、协议、补丁升级、文件系统管理等方面的43项安全配置要求,对系统的安全配置审计和加固操作具有指导意义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

目录

账号管理、认证授权  ELK-Solaris-01-01-01

日志配置ELK-Solaris-02-01-01

通信协议 ELK-Solaris-03-01-01

设备其他安全要求 补丁管理 ELK-Solaris-04-01-01


 

本文档是Solaris 操作系统的对于Solaris操作系统设备账号认证、日志、协议、补丁升级、文件系统管理等方面的43项安全配置要求,对系统的安全配置审计、加固操作起到指导性作用。

账号管理、认证授权  ELK-Solaris-01-01-01

编号

ELK-Solaris-01-01-01

名称

为不同的管理员分配不同的账号

实施目的

根据不同类型用途设置不同的帐户账号,提高系统安全。

问题影响

账号混淆,权限不明确,存在用户越权使用的可能。

系统当前状态

cat /etc/passwd 记录当前用户列表

实施步骤

1、参考配置操作

为用户创建账号:

#useradd username  #创建账号

#passwd username   #设置密码

修改权限:

#chmod 750 directory  #其中755为设置的权限,可根据实际情况设置相应的权限,directory是要更改权限的目录)

使用该命令为不同的用户分配不同的账号,设置不同的口令及权限信息等。

回退方案

删除新增加的帐户

判断依据

标记用户用途,定期建立用户列表,比较是否有非法用户

实施风险

重要等级

★★★

备注

 

 ELK-Solaris-01-01-02

编号

ELK-Solaris-01-01-02

名称

删除或锁定无效账号

实施目的

删除或锁定无效的账号,减少系统安全隐患。

问题影响

允许非法利用系统默认账号

系统当前状态

cat /etc/passwd 记录当前用户列表, cat /etc/shadow 记录当前密码配置

实施步骤

1、参考配置操作

删除用户:#userdel username;

锁定用户:

1) 修改/etc/shadow文件,用户名后加*LK*

2) 将/etc/passwd文件中的shell域设置成/bin/false

3) #passwd -l username

只有具备超级用户权限的使用者方可使用,#passwd -l username锁定用户,用#passwd –d username解锁后原有密码失效,登录需输入新密码,修改/etc/shadow能保留原有密码。

2、补充操作说明

需要锁定的用户:

Listen    Gdm    Webservd    Nobody    nobody4    noaccess。

首先对不确定的用户锁定,待确认之后删除

回退方案

passwd –d username解锁

或者重新建立用户

判断依据

如上述用户不需要,则锁定。

实施风险

重要等级

★★★

备注

 

 

ELK-Solaris-01-01-03

编号

ELK-Solaris-01-01-03

名称

限制超级管理员远程登录

实施目的

限制具备超级管理员权限的用户远程登录。远程执行管理员权限操作,应先以普通权限用户远程登录后,再切换到超级管理员权限账。

问题影响

允许root远程非法登陆

系统当前状态

cat /etc/default/login并记录当前配置

cat /etc/ssh/sshd_config并记录当前配置

cat /usr/local/etc 并记录当前配置

实施步骤

1、参考配置操作

编辑/etc/default/login,加上:

CONSOLE=/dev/console # If CONSOLE is set, root can only login on that device.

此项只能限制root用户远程使用telnet登录。用ssh登录,修改此项不会看到效果的

2、补充操作说明

如果限制root从远程ssh登录,修改/etc/ssh/sshd_config文件,将PermitRootLogin yes改为PermitRootLogin no,重启sshd服务。

Solaris 8上没有该路径

/usr/local/etc下有该文件

Solaris 9上有该路径/文件

回退方案

还原配置文件

/etc/default/login

/etc/ssh/sshd_config

/usr/local/etc

判断依据

/etc/default/login 中 CONSOLE=/dev/console 不被注释

/etc/ssh/sshd_config 中 PermitRootLogin no

实施风险

重要等级

★★★

备注

 

 

ELK-Solaris-01-01-04

编号

ELK-Solaris-01-01-04

名称

对系统账号进行登录限制

实施目的

对系统账号进行登录限制,确保系统账号仅被守护进程和服务使用。

问题影响

可能利用系统进程默认账号登陆,账号越权使用

系统当前状态

cat /etc/shadow查看各账号状态。

实施步骤

1、参考配置操作

禁止账号交互式登录:

修改/etc/shadow文件,用户名后密码列为NP;

删除账号:#userdel username;

2、补充操作说明

禁止交互登录的系统账号,比如daemon,bin,sys、adm、lp、uucp、nuucp、smmsp等等

回退方案

还原/etc/shadow文件配置

判断依据

/etc/shadow中上述账号,如果无特殊情况,密码列为NP

实施风险

重要等级

备注

 

 

 ELK-Solaris-01-01-05

编号

ELK-Solaris-01-01-05

名称

为空口令用户设置密码

实施目的

禁止空口令用户,存在空口令是很危险的,用户不用口令认证就能进入系统。

问题影响

用户被非法利用

系统当前状态

cat /etc/passwd

awk –F: ‘($2 == “”){print $1}’ /etc/passwd

实施步骤

用root用户登陆Soaris系统,执行passwd命令,给用户增加口令。

例如:passwd test test。

回退方案

Root身份设置用户口令,取消口令

如做了口令策略则失败

判断依据

登陆系统判断

Cat /etc/passwd

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-01-02-01

编号

ELK-Solaris-01-02-01

名称

缺省密码长度限制

实施目的

防止系统弱口令的存在,减少安全隐患。对于采用静态口令认证技术的设备,口令长度至少6位。

问题影响

增加密码被暴力破解的成功率

系统当前状态

运行 cat /etc/default/passwd  查看状态,并记录。

实施步骤

1、参考配置操作

vi /etc/default/passwd ,修改设置如下

PASSLENGTH = 6 #设定最小用户密码长度为6位

当用root帐户给用户设定口令的时候不受任何限制,只要不超长。

2、补充操作说明

NIS系统无法生效,非NIS系统或NIS+系统能够生效。

回退方案

vi /etc/default/passwd ,修改设置到系统加固前状态。

判断依据

PASSLENGTH 值为6或更高

实施风险

重要等级

★★★

备注

 

 

​​​​​​​ ELK-Solaris-01-02-02

编号

ELK-Solaris-01-02-02

名称

缺省密码复杂度限制

实施目的

防止系统弱口令的存在,减少安全隐患。对于采用静态口令认证技术的设备,包括数字、小写字母、大写字母和特殊符号4类中至少2类。

问题影响

增加密码被暴力破解的成功率

系统当前状态

运行 cat /etc/default/passwd  查看状态,并记录。

实施步骤

1、参考配置操作

vi /etc/default/passwd ,修改设置如下

MINALPHA=2;MINNONALPHA=1 #表示至少包括两个字母和一个非字母;具体设置可以参看补充说明。

当用root帐户给用户设定口令的时候不受任何限制,只要不超长。

2、补充操作说明

Solaris10默认如下各行都被注释掉,并且数值设置和解释如下:

MINDIFF=3 # Minimum differences required between an old and a new password.

MINALPHA=2 # Minimum number of alpha character required.

MINNONALPHA=1 # Minimum number of non-alpha (including numeric and special) required.

MINUPPER=0 # Minimum number of upper case letters required.

MINLOWER=0 # Minimum number of lower case letters required.

MAXREPEATS=0 # Maximum number of allowable consecutive repeating characters.

MINSPECIAL=0 # Minimum number of special (non-alpha and non-digit) characters required.

MINDIGIT=0 # Minimum number of digits required.

WHITESPACE=YES

Solaris8默认没有这部分的数值设置需要手工添加

NIS系统无法生效,非NIS系统或NIS+系统能够生效。

回退方案

vi /etc/default/passwd ,修改设置到系统加固前状态。

判断依据

MINALPHA=2 或更高

MINNONALPHA=1 或更高

solaris9 需要添加

solaris10 默认为注释

实施风险

重要等级

★★★

备注

 

 

​​​​​​​ELK-Solaris-01-02-03

编号

ELK-Solaris-01-02-03

名称

缺省密码生存周期限制

实施目的

对于采用静态口令认证技术的设备,帐户口令的生存期不长于90天,减少口令安全隐患。

问题影响

密码被非法利用,并且难以管理

系统当前状态

运行 cat /etc/default/passwd  查看状态,并记录。

实施步骤

1、参考配置操作

vi /etc/default/passwd文件:

MAXWEEKS=13密码的最大生存周期为13周;(Solaris 8&10)

PWMAX= 90 #密码的最大生存周期;(Solaris 其它版本)

2、补充操作说明

对于Solaris 8以前的版本,PWMIN对应MINWEEKS,PWMAX对应MAXWEEKS等,需根据/etc/default/passwd文件说明确定。

NIS系统无法生效,非NIS系统或NIS+系统能够生效。

回退方案

vi /etc/default/passwd ,修改设置到系统加固前状态。

判断依据

MAXWEEKS=13 

实施风险

重要等级

★★★

备注

 

 

​​​​​​​ ELK-Solaris-01-02-04

编号

ELK-Solaris-01-02-04

名称

密码重复使用限制

实施目的

对于采用静态口令认证技术的设备,应配置设备,使用户不能重复使用最近5次(含5次)内已使用的口令。

问题影响

密码破解的几率增加

系统当前状态

运行 cat /etc/default/passwd  查看状态,并记录。

实施步骤

1、参考配置操作

vi /etc/default/passwd ,修改设置如下

HISTORY=5

2、补充操作说明

#HISTORY sets the number of prior password changes to keep and

# check for a user when changing passwords.  Setting the HISTORY

# value to zero (0), or removing/commenting out the flag will

# cause all users' prior password history to be discarded at the

# next password change by any user.  No password history will

# be checked if the flag is not present or has zero value.

# The maximum value of HISTORY is 26.

NIS系统无法生效,非NIS系统或NIS+系统能够生效。

回退方案

vi /etc/default/passwd ,修改设置到系统加固前状态。

判断依据

HISTORY=5

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-01-02-05

编号

ELK-Solaris-01-02-05

名称

密码重试限制

实施目的

对于采用静态口令认证技术的设备,应配置当用户连续认证失败次数超过6次(不含6次),锁定该用户使用的账号。

问题影响

允许暴力破解密码

系统当前状态

运行 cat /etc/default/login  

cat /etc/user_attr

     cat /etc/security/policy.conf 查看状态,并记录。

实施步骤

1、参考配置操作

指定当本地用户登陆失败次数等于或者大于允许的重试次数则账号被锁定:

vi  /etc/user_attr

vi /etc/security/policy.conf

设置LOCK_AFTER_RETRIES=YES

设置重试的次数:

vi /etc/default/login

在文件中将RETRIES行前的#去掉,并将其值修改为RETRIES=7。

保存文件退出。

2、补充操作说明

默认值为:

LOCK_AFTER_RETRIES=NO

lock_after-retries=no

RETRIES= 5,即等于或大于5次时被锁定。

root账号也在锁定的限制范围内,一旦root被锁定,就需要光盘引导,因此该配置要慎用。

NIS系统无法生效,非NIS系统或NIS+系统能够生效。

回退方案

vi /etc/user_attr

vi /etc/security/policy.conf

vi /etc/default/login ,修改设置到系统加固前状态。

判断依据

/etc/default/login 中RETRIES=7

/etc/security/policy.conf 中LOCK_AFTER_RETRIES=YES

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-01-03-01

编号

ELK-Solaris-01-03-01

名称

设置关键目录的权限

实施目的

在设备权限配置能力内,根据用户的业务需要,配置其所需的最小权限。

问题影响

非法访问文件

系统当前状态

运行ls –al /etc/* 记录关键目录的权限

ls –al /var/*

实施步骤

1、参考配置操作

通过chmod命令对目录的权限进行实际设置。

2、补充操作说明

使用如下命令设置:

chmod 644 /etc/passwd

chmod 600 /etc/shadow

chmod 644 /etc/group

chmod 600 /etc/inetd.conf

chmod 600 /etc/inet/inetd.conf

chmod 644 /var/adm/wtm

chmod 644 /var/adm/utmp 

chmod 644 /var/adm/utmpx

chmod 644 /etc/services

chmod 644 /etc/inet/services

chmod 600 /var/log/*

如果是有写权限,就需移去组及其它用户对/etc的写权限(特殊情况除外)

执行命令#chmod -R go-w /etc

 

回退方案

通过chmod命令还原目录权限到加固前状态。

判断依据

chmod 644 /etc/passwd

chmod 600 /etc/shadow

chmod 644 /etc/group

chmod 600 /etc/inetd.conf

chmod 600 /etc/inet/inetd.conf

chmod 644 /var/adm/wtm

chmod 644 /var/adm/utmp 

chmod 644 /var/adm/utmpx

chmod 644 /etc/services

chmod 644 /etc/inet/services

chmod 600 var/log/*

实施风险

重要等级

★★★

备注

 

 

​​​​​​​ ELK-Solaris-01-03-02

编号

ELK-Solaris-01-03-02

名称

修改umask值

实施目的

控制用户缺省访问权限,当在创建新文件或目录时,屏蔽掉新文件或目录不应有的访问允许权限。防止同属于该组的其它用户及别的组的用户修改该用户的文件或更高限制。

问题影响

非法访问目录

系统当前状态

运行 cat /etc/default/login 记录当前配置

Umask 查看umask的当前值

实施步骤

1、参考配置操作

设置默认权限:

vi /etc/default/login在末尾增加umask 027

修改文件或目录的权限,操作举例如下:

#chmod 444 dir ; #修改目录dir的权限为所有人都为只读。

根据实际情况设置权限;

2、补充操作说明

如果用户需要使用一个不同于默认全局系统设置的umask,可以在需要的时候通过命令行设置,或者在用户的shell启动文件中配置

3、补充说明

umask的默认设置一般为022,这给新创建的文件默认权限755(777-022=755),这会给文件所有者读、写权限,但只给组成员和其他用户读权限。

umask的计算:

umask是使用八进制数据代码设置的,对于目录,该值等于八进制数据代码777减去需要的默认权限对应的八进制数据代码值;对于文件,该值等于八进制数据代码666减去需要的默认权限对应的八进制数据代码值。

 

回退方案

修改/etc/default/login文件到加固前状态。

判断依据

umask 027

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-01-03-03

编号

ELK-Solaris-01-03-03

名称

FTP用户及服务安全

实施目的

控制FTP进程缺省访问权限,当通过FTP服务创建新文件或目录时应屏蔽掉新文件或目录不应有的访问允许权限。

问题影响

非法FTP登陆操作

非法访问目录

系统当前状态

#cat /etc/passwd

#cat /etc/ftpusers        #Solaris 8

#cat /etc/ftpaccess       #Solaris 8

#cat /etc/ftpd/ftpusers   #Solaris 10

#cat /etc/ftpd/ftpaccess  #Solaris 10

实施步骤

1、参考配置操作

a. 限制某些系统帐户不准ftp登录:

通过修改ftpusers文件,增加帐户

#vi /etc/ftpusers       #Solaris 8

#vi /etc/ftpd/ftpusers  #Solaris 10

b. 限制用户可使用FTP不能用Telnet,假如用户为ftpxll

创建一个/etc/shells文件, 添加一行 /bin/true;

修改/etc/passwd文件,ftpxll:x:119:1::/home/ftpxll:/bin/true

注:还需要把真实存在的shell目录加入/etc/shells文件,否则没有用户能够登录ftp

c. 限制ftp用户登陆后在自己当前目录下活动

编辑ftpaccess,加入如下一行restricted-uid *(限制所有),

restricted-uid username(特定用户)

ftpaccess文件与ftpusers文件在同一目录

 d. 设置ftp用户登录后对文件目录的存取权限,可编辑/etc/ftpd/ftpaccess。

chmod      no guest,anonymous

delete     no guest,anonymous

overwrite  no guest,anonymous

rename     no guest,anonymous

umask      no anonymous

 

2、补充操作说明

查看# cat ftpusers

说明:  在这个列表里边的用户名是不允许ftp登陆的。

root

daemon

bin

sys

adm

lp

uucp

nuucp

listen

nobody

noaccess

nobody4

回退方案

 

vi /etc/ftpusers; vi /etc/ftpd/ftpaccess; vi /etc/passwd ,修改设置到系统加固前状态。

判断依据

查看# cat /etc/ftpusers

无特殊需求,在这个列表里边的用户名是不允许ftp登陆的。

Root    daemon    bin    sys    adm    lp    uucp    nuucp    listen    nobody    noaccess    nobody4

/etc/ftpd/ftpaccess设置相应的配置

实施风险

重要等级

备注

 

​​​​​​​ ELK-Solaris-01-03-04

编号

ELK-Solaris-01-03-04

名称

设置目录权限

实施目的

设置目录权限,防止非法访问目录。

问题影响

非法访问目录

系统当前状态

ls –l /etc/init.d/* | grep "^.....-.---"

实施步骤

1、参考配置操作

查看重要文件和目录权限:ls –l

更改权限:

对于重要目录,建议执行如下类似操作:

# chmod -R 750 /etc/init.d/*

这样只有root可以读、写和执行这个目录下的脚本。

 

回退方案

使用chmod 命令还原被修改权限的目录。

判断依据

判断 /etc/init.d/* 下的文件权限750以下

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-01-03-05

编号

ELK-Solaris-01-03-05

名称

设置ftp目录权限

实施目的

限制ftp用户登陆后在自己当前目录下活动,防止非法访问目录。

问题影响

用户越权使用

系统当前状态

cat /etc/ftpaccess 查看并记录当前的配置

实施步骤

1、参考配置操作

限制ftp用户登陆后在自己当前目录下活动

编辑ftpaccess,加入如下一行restricted-uid *(限制所有用户),restricted-uid username(特定用户) 

2、补充操作说明

ftpaccess文件与ftpusers文件在同一目录,Solaris 8为/etc/, Solaris 10为/etc/ftpd/

 

回退方案

还原ftpaccess文件到加固前的状态。

判断依据

查看ftpaccess文件

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-01-03-06

编号

ELK-Solaris-01-03-06

名称

禁止root登陆FTP

实施目的

禁止root用户登陆FTP

问题影响

被监听,信息泄露

系统当前状态

cat /etc/ftpusers 查看并记录当前的配置

实施步骤

1、参考配置操作

ftp所有的传输内容都是没有经过加密的,所以绝对不能以超级用户身份使用FTP,建议在文件/etc/ftpusers中增加超级用户。

然后让inetd重新读配置文件。

 

回退方案

还原/etc/ftpusers文件到加固前的状态。

判断依据

查看/etc/ftpusers文件中是否存在root

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-01-03-07

编号

ELK-Solaris-01-03-07

名称

禁止匿名ftp

实施目的

禁止匿名ftp

问题影响

信息泄露

系统当前状态

cat /etc/passwd 查看并记录当前的配置

实施步骤

1、参考配置操作

不要使用匿名ftp,只需在文件/etc/passwd中把ftp用户注释掉即可。

 

回退方案

还原/etc/passwd文件到加固前的状态。

判断依据

查看/etc/passwd文件中是否存在FTP

实施风险

重要等级

备注

 

 

 

日志配置ELK-Solaris-02-01-01

编号

ELK-Solaris-02-01-01

名称

启用日志记录功能

实施目的

设备应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号,登录是否成功,登录时间,以及远程登录时,用户使用的IP地址。

问题影响

无法对用户的登陆进行日志记录

系统当前状态

运行 cat /etc/default/login 查看状态,并记录。

实施步骤

1、参考配置操作

修改文件:vi /etc/default/login ,设置SYSLOG=YES。,

Solaris10是wtmpx文件,Solaris8 是wtmp,wtmps,文件中记录着所有登录过主机的用户,时间,来源等内容,这两个文件不具可读性,可用last命令来看。

回退方案

vi /etc/default/login ,修改设置到系统加固前状态。

判断依据

SYSLOG=YES

实施风险

重要等级

★★★

备注

 

 

​​​​​​​ELK-Solaris-02-01-02

编号

ELK-Solaris-02-01-02

名称

记录用户对设备的操作

实施目的

设备应配置日志功能,记录用户对设备的操作,包括但不限于以下内容:账号创建、删除和权限修改,口令修改,读取和修改设备配置,读取和修改业务用户的话费数据、身份数据、涉及通信隐私数据。需记录要包含用户账号,操作时间,操作内容以及操作结果。

问题影响

无法对用户的操作进行日志记录

系统当前状态

ls –al /var/adm/pact

lastcomm | head -20

实施步骤

1、参考配置操作

通过设置日志文件可以对每个用户的每一条命令进行纪录,这一功能默认是不开放的,为了打开它,需要执行/usr/lib/acct目录下的accton文件,格式如下/usr/lib/acct/accton  /var/adm/pacct,

执行读取命令lastcomm  [user name]。

 

回退方案

 

判断依据

存在/var/adm/pacct此文件

并且lastcomm 指令可以查看用户的操作记录

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-02-01-03

编号

ELK-Solaris-02-01-03

名称

记录系统安全事件

实施目的

通过设置让系统记录安全事件,方便管理员分析

问题影响

无法记录系统的各种安全事件

系统当前状态

cat /etc/syslog.conf

tail -20 /var/adm/messages

ls -al /var/adm/messages

实施步骤

1、参考配置操作

修改配置文件vi /etc/syslog.conf,

配置如下类似语句:

*.err;kern.debug;daemon.notice;        /var/adm/messages

定义为需要保存的设备相关安全事件。

 

回退方案

vi /etc/syslog.conf,修改设置到系统加固前状态。

判断依据

记录系统安全事件

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-02-01-04

编号

ELK-Solaris-02-01-04

名称

配置远程日志功能 

实施目的

设备配置远程日志功能,将需要重点关注的日志内容传输到日志服务器。

问题影响

日志被删除后无法恢复。

系统当前状态

Cat /etc/syslog.conf

实施步骤

1、参考配置操作

修改配置文件vi /etc/syslog.conf,

加上这一行:

  *.*   @192.168.0.1

可以将"*.*"替换为你实际需要的日志信息。比如:kern.* / mail.* 等等。
可以将此处192.168.0.1替换为实际的IP或域名。

重新启动syslog服务,依次执行下列命令:

/etc/init.d/syslog stop

/etc/init.d/syslog start 

2、补充操作说明

注意: *.*和@之间为一个Tab

适用于Solaris 9 之前版本,Solaris 10测试未成功;

回退方案

vi /etc/syslog.conf ,修改设置到系统加固前状态。

判断依据

[传送的安全事件][tab]@[IP或域名]

例如:*.* @192.168.0.8

或:kern.* @log.bakserver

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-02-01-05

编号

ELK-Solaris-02-01-05

名称

启用记录su日志功能

实施目的

记录系统中su操作的日志

问题影响

无法记录su指令的用户切换操作

系统当前状态

运行 cat /etc/default/su 查看SYSLOG状态,并记录。

tail -20 /var/adm/sulog

ls -al /var/adm/sulog

实施步骤

1、参考配置操作

修改文件:vi /etc/default/su 设置SYSLOG=YES.

使用以下方法使尝试登录失败记录有效:

touch /var/log/loginlog;

chmod 600 /var/log/loginlog;

chgrp sys /var/log/loginlog

查看sulog日志,记载着普通用户尝试su成为其它用户的纪录,

more /var/adm/sulog

2、补充操作说明

它的格式为: 发生时间 +/-(成功/失败) pts号 当前用户欲su成的用户

回退方案

vi /etc/default/su ,修改设置到系统加固前状态。

判断依据

SYSLOG=YES

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-02-01-06

编号

ELK-Solaris-02-01-06

名称

启用记录cron行为日志功能

实施目的

对所有的cron行为进行审计。

问题影响

无法记录 cron 服务(计划任务)

系统当前状态

运行 cat /etc/default/cron 查看CRONLOG状态,并记录。

tail -20 /var/cron/log

ls -al /var/cron/log

实施步骤

1、参考配置操作

对所有的cron行为进行审计:

在 /etc/default/cron里设置"CRONLOG=yes" 来记录corn的动作。

 

回退方案

vi  /etc/default/cron ,修改CRONLOG设置到系统加固前状态。

判断依据

CRONLOG=YES

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-02-01-07

编号

ELK-Solaris-02-01-07

名称

打开 ftpd的记录和调试

实施目的

打开ftpd的记录和调试

问题影响

无法记录FTP的记录和调试信息

系统当前状态

cat /etc/inet/inetd.conf 查看并记录当前的配置

实施步骤

1、参考配置操作

将ftpd的记录和调试功能打开,在文件/etc/inet/inetd.conf中的ftpd一项应该是:
ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd –dl

然后让inetd重新读配置文件。

回退方案

还原/etc/inet/inetd.conf文件到加固前的状态。

判断依据

查看/etc/inet/inetd.conf文件中是否存在ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd -dl

实施风险

重要等级

备注

 

 

通信协议 ELK-Solaris-03-01-01

编号

ELK-Solaris-03-01-01

名称

使用ssh加密传输

实施目的

提高远程管理安全性

问题影响

使用非加密通信,内容易被非法监听

系统当前状态

运行 # ps –elf|grep ssh  查看状态,并记录。

实施步骤

1、参考配置操作

Solaris 10以前的版本需另外安装,才能使用SSH。

Solaris 10启用SSH的命令:svcadm enable ssh

Solaris 10禁用Telnet的命令:svcadm disable telnet

Solaris 8 如果安装openssh

正常可以通过#/etc/init.d/sshd start来启动SSH;

通过#/etc/init.d/sshd stop来停止SSH

2、补充操作说明

查看SSH服务状态:

# ps –elf|grep ssh

Solaris 10还可以通过命令:

# svcs -a |grep ssh

若为online,即为生效。

 

回退方案

卸载SSH、或者停止SSH服务

判断依据

有SSH进程

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-03-01-02

编号

ELK-Solaris-03-01-02

名称

限制管理员登陆IP

实施目的

对于通过IP协议进行远程维护的设备,设备应对允许登陆到该设备的IP地址范围进行设定。提高远程维护安全性。

问题影响

没有访问控制,系统可能被非法登陆或使用

系统当前状态

查看/etc/hosts.allow和/etc/hosts.deny 2个文件的配置状态,并记录。

实施步骤

1、参考配置操作

编辑/etc/hosts.allow和/etc/hosts.deny两个文件

vi /etc/hosts.allow

增加一行 <service>: 允许访问的IP;举例如下:

all:192.168.4.44:allow #允许单个IP;

ssh:192.168.1.:allow #允许192.168.1的整个网段

vi /etc/hosts.deny

增加一行 all:all

重启进程:#pkill -HUP inetd

2、补充操作说明

Solaris9 for x86下,更改/etc/inetd.conf文件后,重启inetd的命令是:
#pkill -HUP inetd
#/etc/init.d/inetsvc start

Solaris 10 X86下,可以用如下命令重启inetd:

svcadm enable svc:/network/inetd

 

回退方案

修改/etc/hosts.allow和/etc/hosts.deny 2个文件的配置到加固之前的状态。

判断依据

配置访问控制

也可在防火墙的ACL,或者交换的VLAN上设置。

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-03-01-03

编号

ELK-Solaris-03-01-03

名称

防syn攻击优化

实施目的

提高未连接队列大小

问题影响

SYN flood attack

系统当前状态

ndd -get /dev/tcp tcp_conn_req_max_q0

实施步骤

1、参考配置操作

#ndd -set /dev/tcp tcp_conn_req_max_q0 4096

 

回退方案

#ndd -set /dev/tcp tcp_conn_req_max_q0 XXXX 修改到原来的值

判断依据

ndd -get /dev/tcp tcp_conn_req_max_q0 值等于 4096

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-03-01-04

编号

ELK-Solaris-03-01-04

名称

防syn攻击优化

实施目的

提高连接队列大小

问题影响

连接耗尽攻击

系统当前状态

ndd -get /dev/tcp tcp_conn_req_max_q

实施步骤

1、参考配置操作

    #ndd -set /dev/tcp tcp_conn_req_max_q 1024

回退方案

#ndd -set /dev/tcp tcp_conn_req_max_q XXXX 修改到原来的值

判断依据

ndd -get /dev/tcp tcp_conn_req_max_q 值等于 1024

实施风险

重要等级

备注

 

 

​​​​​​​路由协议安全ELK-Solaris-03-02-01

编号

ELK-Solaris-03-02-01

名称

禁止ICMP重定向

实施目的

禁止系统发送ICMP重定向包,提高系统、网络的安全性

问题影响

主机可能会被非法改变路由

系统当前状态

查看/etc/rc2.d/S??inet的配置状态,并记录。

ndd -get /dev/ip ip_send_redirects

实施步骤

1、参考配置操作

禁止系统发送ICMP重定向包:

在/etc/rc2.d/S??inet中做如下参数调整,

ndd -set /dev/ip ip_send_redirects=0 # default is 1

设置in.routed运行在静态路由模式:

创建文件/usr/sbin/in.routed为以下内容:

#! /bin/sh

/usr/sbin/in.routed –q

改变文件属性:

chmod 0755 /usr/sbin/in.routed

 

回退方案

修改/etc/rc2.d/S??inet的配置到加固之前的状态,删除新创建的/usr/sbin/in.routed文件

判断依据

ip_send_redirects=0

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-03-02-02

编号

ELK-Solaris-03-02-02

名称

关闭数据包转发功能

实施目的

关闭数据包转发功能,提高系统、网络的安全性

问题影响

可能被用来实施smurf攻击

系统当前状态

查看/etc/init.d/inetinit文件的配置状态,并记录。

ndd -get /dev/ip ip_forwarding

ndd -get /dev/ip ip_strict_dst_multihoming

ndd -get /dev/ip ip_forward_directed_broadcasts

ndd -get /dev/ip ip_forward_src_routed

实施步骤

  1. 参考配置操作

vi /etc/init.d/inetinit

IP Forwarding (IP转发)
   a. 关闭IP转发 
      ndd -set /dev/ip ip_forwarding 0
   b. 严格限定多主宿主机,如果是多宿主机,还可以加上更严格的限定防止ip spoof的攻击 
      ndd -set /dev/ip ip_strict_dst_multihoming 1
   c. 转发包广播由于在转发状态下默认是允许的,为了防止被用来实施smurf攻击,关闭这一特性 
    ndd -set /dev/ip ip_forward_directed_broadcasts 0
 路由
   a. 关闭转发源路由包 
      ndd -set /dev/ip ip_forward_src_routed 0

2、补充操作说明

注意:启动过程中IP转发功能关闭前Solaris主机依旧可以在多块网卡之间进行IP转发,存在小小的潜在安全隐患。

对于Solaris 2.4(或者更低版本),在/etc/init.d/inetinit文件的最后增加一行 
ndd -set /dev/ip ip_forwarding 0

对于Solaris 2.5(或者更高版本),在/etc目录下创建一个叫notrouter的空文件,

touch /etc/notrouter

回退方案

修改/etc/init.d/inetinit的配置到加固之前的状态。

判断依据

ndd -set /dev/ip ip_forwarding 0

ndd -set /dev/ip ip_strict_dst_multihoming 1

ndd -set /dev/ip ip_forward_directed_broadcasts 0

ndd -set /dev/ip ip_forward_src_routed 0

实施风险

重要等级

备注

 

 

设备其他安全要求 补丁管理 ELK-Solaris-04-01-01

编号

ELK-Solaris-04-01-01

名称

删除不必要的软件包

实施目的

在系统安装时建议只安装基本的OS部份,其余的软件包则以必要为原则,非必需的包就不装。

问题影响

系统臃肿,增加潜在软件安全隐患

系统当前状态

uname -a

cat /etc/release

pkginfo

实施步骤

  1. 参考配置操作

查询/etc/release文件,看版本发布日期。

执行下列命令,查看版本及大补丁号。

#uname –a

执行下列命令,查看各包的补丁号

#pkginfo

 

回退方案

重新安全软件包,

判断依据

在系统安装时建议只安装基本的OS部份,其余的软件包则以必要为原则,非必需的包就不装。

实施风险

重要等级

★★

备注

 

 

​​​​​​​ELK-Solaris-04-01-02

编号

ELK-Solaris-04-01-02

名称

补丁装载

实施目的

应根据需要及时进行补丁装载。对服务器系统应先进行兼容性测试。

问题影响

系统存在严重的安全漏洞

系统当前状态

showrev –p

实施步骤

1、参考配置操作

Solaris提供了两个命令来管理补丁,Patchadd和patchrm。这两个命令是在Solaris 2.6版本开始提供的,在2.6以前的版本中,每个补丁包中都提供了一个 installpatch 程序和一个 backoutpatch 程序来完成补丁的安装和卸载。

注意:

由于在安装Patch时需要更新文件,故此Solaris官方推荐在安装补丁时进入单用户模式安装。

例如:

# cd /var/tmp

# patchadd 110668-04

4检查补丁

# patchadd -p或

#showrev -p

补丁的删除

如果因为某种情况你想卸载某一补丁,你可以使用Patchrm命令来完成。

例如:

# patchrm 106793-01

补丁卸载说明:

这里需要说明一下,在如下三种情况下,补丁将不能卸载:

1、在安装patch时,用patchadd -d命令指定patchadd 不备份被更新的文件。这样安装的patch无法删除。

2、另一Patch需要此Patch,即存在dependence(关联性), 如一定要删掉该patch,先删掉另一patch。

3、要删的patch已被另一更新的patch废弃了。如安装110668-04补丁后,如果以前安装过110668-03,则110668-03将被110668-04废弃,110668-03将无法删除。

4、 Cluster补丁的安装

回退方案

patchrm

判断依据

查看 http://sunsolve.sun.com/比较补丁修复情况

实施风险

重要等级

★★

备注

 

 

 

​​​​​​​服务进程和启动 ELK-Solaris-04-02-01

编号

ELK-Solaris-04-02-01

名称

关闭无效服务

实施目的

关闭无效的服务,提高系统性能,增加系统安全性。

问题影响

不用的服务会带来很多安全隐患

系统当前状态

cat /etc/inet/inetd.conf 查看并记录当前的配置

实施步骤

1、参考配置操作

查看所有开启的服务:

#ps -eaf  

#svcs -a  ‘Solaris 10

在inetd.conf中关闭不用的服务 首先复制/etc/inet/inetd.conf。 

#cp /etc/inet/inetd.conf /etc/inet/inetd.conf.backup 然后用vi编辑器编辑inetd.conf文件,对于需要注释掉的服务在相应行开头标记"#"字符,重启inetd服务,即可。

对于Solaris 10,直接关闭某个服务,如telnet,可用如下命令:

svcadm disable svc:/network/telnet

重新启用该服务,使用命令:

svcadm enable svc:/network/telnet

Solaris8修改/etc/inet/inetd.conf和/etc/inet/services文件,注释掉对应的服务以及TCP/IP端口

重启inetd进程

>kill -HUP <inetd>

2、补充操作说明
在/etc/inetd.conf文件中禁止下列不必要的基本网络服务。

Time 提供时间校验,用以同步不同服务器的时间

Echo 回显字符串,用于测试

Discard 服务是一种非常有用的用于调试和检测的工具。

daytime

chargen

fs

dtspc

exec

comsat

talk

finger

uucp

name

xaudio

netstat

ufsd

rexd

systat

sun-dr

uuidgen

krb5_prop

注意:改变了“inetd.conf”文件之后,需要重新启动inetd。

对必须提供的服务采用tcpwapper来保护

 

回退方案

还原/etc/inet/inetd.conf文件到加固前的状态。

判断依据

在/etc/inetd.conf文件中禁止下列不必要的基本网络服务。

time echo discard daytime chargen fs dtspc exec comsat talk finger uucp name xaudio netstat ufsd rexd systat sun-dr uuidgen krb5_prop

标记用户用途,定期建立用户列表,比较是否有非法用户

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-04-02-02

编号

ELK-Solaris-04-02-02

名称

设置NTP服务

实施目的

如果网络中存在信任的NTP服务器,应该配置系统使用NTP服务保持时间同步

问题影响

时间不同步

系统当前状态

查看ntp 的配置文件:#cat /etc/inet/ntp.conf

查看xntpd进程:#ps –elf|grep ntp

检查 ntp 依赖:# svcs -l svc:/network/ntp:default (适用于Solaris 10)

实施步骤

1、参考配置操作

ntp 的配置文件: /etc/inet/ntp.conf

#vi /etc/inet/ntp.conf

    server IP地址(提供ntp服务的机器)

    #touch /var/ntp/ntp.drift    (建drift文件及相关目录,这个文件是用于在ntp重起的时候快速的和服务器进行同步)

SOLARIS8启动ntp进程

#/etc/init.d/xntpd start 

 

Solaris 10:

检查 ntp 依赖:# svcs -l svc:/network/ntp:default

然后

# svcadm enable svc:/network/ntp

# svcadm refresh svc:/network/ntp

# svcadm restart svc:/network/ntp

2、补充操作说明
/etc/inet/ntp.conf默认是没有的,需要做server的话,就把ntp.server拷贝一份成ntp.conf。如果做client的话,就把ntp.client拷贝一份到ntp.conf

回退方案

还原/etc/inet/ntp.conf文件到加固前的状态。

Kill ntp服务

判断依据

ps –elf|grep ntp

查看NTP服务已经打开

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-04-02-03

编号

ELK-Solaris-04-02-03

名称

关闭无效服务的启动

实施目的

关闭无效的服务进程,提高系统性能,增加系统安全性。

问题影响

不用的服务会带来很多安全隐患

系统当前状态

ps -elf

ls -al /etc/init.d/

ls -al /etc/rc2.d/S*

ls -al /etc/rc3.d/S*

实施步骤

1、参考配置操作

检查/etc/rc2.d和/etc/rc3.d目录下的所有"S"打头的脚本文件,将那些启动不必要服务的脚本文件改名,确认新文件名不以"S"打头。

重启动确认这些变动生效,检查/var/adm/messages日志文件,用ps -elf检查是否还有无关进程启动。

2、补充操作说明
在/etc/init.d/一般需要关闭的服务有:

Sendmail    lp    rpc    snmpdx    keyserv    nscd    volmgt    uucp    dmi    autoinstall 

回退方案

还原/etc/rc2.d和/etc/rc3.d下的脚本文件名到加固前的状态。

判断依据

停止不需要的服务的启动脚本

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-04-02-04

编号

ELK-Solaris-04-02-04

名称

Telnet banner信息

实施目的

如需要使用Telnet服务则修改banner 信息,增强隐蔽性

问题影响

信息泄露

系统当前状态

Cat /etc/default/telnetd

实施步骤

1、参考配置操作

如果系统存在/etc/default/telnetd文件,把telnetd文件里的BANNER=""字段设置为空或其它不明感的字符。

如果/etc/default/telnetd文件不存在,创建/etc/default/telnetd文件,在telnetd文件里写入BANNER=""。

回退方案

还原/etc/default/telnetd到加固前的状态。

判断依据

BANNER= 内容不包括TELNET或版本的敏感信息

实施风险

重要等级

★★

备注

 

 

​​​​​​​ELK-Solaris-04-02-0

编号

ELK-Solaris-04-02-05

名称

Telnet 通讯端口改变

实施目的

如需要使用Telnet服务则修改通讯端口,增强隐蔽性

问题影响

信息泄露,进行Telnet的各种尝试

系统当前状态

Cat /etc/services

实施步骤

1、参考配置操作

建议在/etc/services文件中修改telnet 的端口号,最好将该端口号改为五位数以上,以避免攻击者的扫描检测。示例如下:
telnet      23232    /tcp
然后让inetd重新读配置文件

回退方案

还原/etc/services到加固前的状态。

判断依据

telnet      23232    /tcp

实施风险

重要等级

★★

备注

 

 

​​​​​​​ ELK-Solaris-04-02-06

编号

ELK-Solaris-04-02-06

名称

ftp banner信息

实施目的

如需要使用FTP服务则修改banner 信息,增强隐蔽性

问题影响

信息泄露

系统当前状态

cat /etc/default/ftpd

实施步骤

1、参考配置操作

如果系统存在/etc/default/ftpd文件,把ftpd文件里的BANNER=""字段设置为空或其它不明感的字符。

如果/etc/default/ftpd文件不存在,

创建/etc/default/ftpd文件,在ftpd文件里写入BANNER=""。

回退方案

还原/etc/default/ftpd到加固前的状态。

判断依据

BANNER= 内容不包括FTP或版本的敏感信息

实施风险

重要等级

★★

备注

 

 

​​​​​​​ ELK-Solaris-04-02-07

编号

ELK-Solaris-04-02-07

名称

FTP 通讯端口改变

实施目的

如需要使用FTP服务则修改通讯端口,增强隐蔽性

问题影响

信息泄露,进行FTP的各种尝试

系统当前状态

cat /etc/services

实施步骤

1、参考配置操作

建议在/etc/services文件中修改FTP 的端口号,最好将该端口号改为五位数以上,以避免攻击者的扫描检测。示例如下:
ftp      23232    /tcp
然后让inetd重新读配置文件

回退方案

还原/etc/services到加固前的状态。

判断依据

ftp  不是默认端口号

实施风险

重要等级

★★

备注

 

 

 

​​​​​​​Banner与屏幕保护 ELK-Solaris-04-03-01

编号

ELK-Solaris-04-03-01

名称

设置登录超时时间

实施目的

对于具备字符交互界面的设备,应配置定时帐户自动登出。

问题影响

管理员忘记退出被非法利用

系统当前状态

查看/etc/profile文件的配置状态,并记录。

实施步骤

1、参考配置操作

可以在用户的.profile文件中"HISTFILESIZE="后面增加如下行:

vi /etc/profile

$ TMOUT=180;export TMOUT
改变这项设置后,重新登录才能有效。

2、补充操作说明

若修改了login文件,如下:

vi /etc/default/login
# TIMEOUT sets the number of seconds (between 0 and 900) to wait before
# abandoning a login session.
TIMEOUT=180
这里的超时设置针对登录过程,而不是登录成功后的shell会话超时设置。

回退方案

修改/etc/profile的配置到加固之前的状态。

判断依据

TMOUT=180

实施风险

重要等级

备注

 

 

​​​​​​​ELK-Solaris-04-03-02

编号

ELK-Solaris-04-03-02

名称

屏蔽系统banner信息泄漏

实施目的

操作系统默认会向登陆系统的用户反馈自己的系统信息,如系统的版本、型号等信息,这些信息被称作系统的banner信息,入侵者往往通过这些信息来判断系统存在的漏洞。

问题影响

信息泄露

系统当前状态

cat /etc/motd

实施步骤

1、参考配置操作

用root用户登陆SOLARIS系统,使用vi编辑器编辑

 /etc/motd文件,在motd文件里的删除系统明感的信息

回退方案

修改/etc/motd到加固之前的状态。

判断依据

判断/etc/motd文件

实施风险

重要等级

★★

备注

 

 

​​​​​​​内核调整  ELK-Solaris-04-04-01

编号

ELK-Solaris-04-04-01

名称

调整内核设置

实施目的

防止堆栈缓冲溢出

问题影响

堆栈缓冲溢出

系统当前状态

cat /etc/system查看并记录当前的配置

实施步骤

1、参考配置操作

对/etc/system文件做备份。 #cp /etc/system /etc/system.backup 用vi编辑器编辑system文件,在system文件的最后加如下2行内容。 

set noexec_user_stack=1                            

set noexec_user_stack_log =1                       

 保存文件,退出编辑器。

2、补充操作说明
系统的内核参数都在此,一但改错系统无法正常启动,需要光盘引到。内核参数改动后需要重启服务器才生效。

回退方案

还原/etc/system.backup文件到/etc/system。

判断依据

set noexec_user_stack=1

set noexec_user_stack_log=1

实施风险

重要等级

备注

 

 

​​​​​​​ ELK-Solaris-04-04-02

编号

ELK-Solaris-04-04-02

名称

设置内核配置文件权限

实施目的

防止非法修改内核配置文件

问题影响

非法修改内核文件

系统当前状态

ls -al /etc/system查看并记录当前的配置

实施步骤

1、参考配置操作

然后改变文件权限:#chmod 750 /etc/system

回退方案

还原/etc/system文件到加固前的权限。

判断依据

/etc/system 权限是 750或更小

实施风险

重要等级

备注

 


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

it技术分享just_free

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值