Solaris 操作系统安全整理

[ 来源:http://www.91now.com/down/ | 作者: | 时间:2008-6-5 | 浏览: 人次 ]

来源:小饭的沉默空间

[学Solaris时,整理的]
用户控制
登录帐户 GID 用法
root 0 几乎没有任何限制。可覆盖所有其他登录、保护和权限。root 帐户具有访问整个系统的权限。应该非常谨慎地保护root 登录口令。root 帐户(即超级用户)有权使用大多数Solaris 命令。
daemon 1 控制后台处理。
bin 2 有权使用部分Solaris 命令。
sys 3 有权访问许多系统文件。

adm 4 有权访问某些管理文件。
Lp 71 有权访问打印机的对象数据文件和假脱机数据文件。
uucp 5 有权访问UUCP(UNIX 对UNIX 复制程序)的对象数据文件和假脱机数据文件。
nuucp 9 供远程系统用于登录到系统并启动文件传输。


显示用户的登录状态
# logins -x -l username
-x 显示一组扩展的登录状态信息。
-l username 显示指定用户的登录状态。变量username 是用户的登录名称。必须以逗号分隔的列表形式指定多个登录名称。
# logins -x -l root
root 0 root 0 Super-User
/
/sbin/sh
PS 082587 -1 -1 -1
Root用户的登录名称
0 用户ID (user ID, UID)。
0 标识用户的主组。
10 标识组ID (group ID, GID)。
/ 标识用户的起始目录。
/sbin/sh 标识登录shell。
PS 082587 -1 -1 -1指定口令生命期信息:
■ 上次更改口令的日期
■ 更改之间要求的天数
■ 在该天数后必须更改
■ 警告期

如何显示没有口令的用户
# logins –p
-p 选项用于显示没有口令的用户列表。除非启用了名称服务,否则logins 命令将使用本地系统的口令数据库。

如何临时禁止用户登录
1在文本编辑器中创建/etc/nologin 文件。
# vi /etc/nologin
2添加有关系统可用性的消息。
3关闭并保存该文件。

如何监视所有失败的登录尝试
1.使用所需的SYSLOG 和SYSLOG_FAILED_LOGINS 值设置/etc/default/login 文件。
编辑/etc/default/login 文件以更改相应项。请确保取消对SYSLOG=YES 的注释。
# grep SYSLOG /etc/default/login
# SYSLOG determines whether the syslog(3) LOG_AUTH facility
# should be used
SYSLOG=YES

SYSLOG_FAILED_LOGINS=0
#
2.使用正确的权限创建文件以保存日志信息。
a. 在/var/adm 目录中创建authlog 文件。
# touch /var/adm/authlog
b. 在authlog 文件中,为root 用户设置读写权限。
# chmod 600 /var/adm/authlog
c. 在authlog 文件中,将组成员关系更改为sys。
# chgrp sys /var/adm/authlog
3.编辑syslog.conf 文件以记录失败的口令尝试。
这些失败应发送到authlog 文件。
a. 在syslog.conf 文件中键入以下项。
使用制表符分隔syslog.conf 的同一行中的字段。
auth.notice <按Tab 键> /var/adm/authlog
4. 刷新syslog 守护进程的配置信息。
# svcadm refresh system/system-log
5. 检验日志是否正常工作。
# more /var/adm/authlog
Apr 16 12:00:50 suoetc sshd[1063]: [ID 800047 auth.notice] Failed keyboard-interac
tive for root from 192.168.2.11 port 1806 ssh2
日志显示:IP192.169.2.11 ,root,用户失败,时间. Apr 16 12:00:50

如何监视正在使用su 命令的用户
1.定期监视/var/adm/sulog 文件的内容。
# more /var/adm/sulog
SU 04/16 11:34 + pts/5 root-root
SU 04/16 11:35 + pts/6 ux-root
SU 04/16 11:38 + pts/5 root-ux
SU 04/16 11:39 - pts/5 root-ux
SU 04/16 11:43 + pts/6 ux-ux
SU 04/16 11:46 + pts/6 ux-root
SU 04/16 11:47 - pts/1 ux-root
SU 04/16 11:47 - pts/1 ux-root
SU 04/16 12:42 + pts/1 ux-root
SU 04/16 12:46 + ??? root-root
■ 输入命令的日期和时间。
■ 尝试是否成功。加号(+) 表明尝试成功。减号(-) 表明尝试失败。
■ 发出命令的端口。
■ 用户名称和切换身份的名称。

审计报告工具
BART 是一种完全在文件系统层运行的文件跟踪工具。使用BART,可以迅速、轻松、可靠地收集有关安装在已部署的系统上的软件栈组件的信息。使用BART,可以通过简化耗时的管理任务来显著降低管理系统网络的成本。使用BART,可以根据已知的基准确定系统上所进行的文件层更改。可以使用BART 根据完全安装并配置的系统创建基准或控制清单。然后可将此基准与系统快照进行比较,将生成一个列出从系统安装以来所进行的文件层更改的报告。
bart 命令是标准UNIX 命令。您可以将bart 命令的输出重定向到文件以便进行后续处理。
BART 功能
BART 在设计上侧重于既有效又灵活的简单语法。使用此工具,可以生成给定系统在一段时间内的清单。然后,需要验证此系统的文件时,可以通过比较新旧清单来生成报告。使用BART 的另一种方法是生成若干个相似系统的清单,然后进行系统间的比较。BART 与现有审计工具的主要区别在于BART 在跟踪信息和报告信息方面都非常灵活。
BART 的其他优点和用法包括:
■ 提供了一种为运行Solaris 软件的系统在文件层编制目录的有效而简便的方法。
■ 使用BART,可以定义要监视的文件,还可以在必要时修改配置文件。借助这种灵活性,可以监视本地的自定义项,并可轻松、有效地重新配置软件。
■ 确保系统运行可靠的软件。
■ 允许监视一段时间内系统在文件层的变化,从而帮助找到损坏或异常的文件。
■ 帮助对系统性能问题进行疑难解答。
# bart
用法:
bart create [-n] [-R 根目录] [-r 规则|-]
bart create [-n] [-R 根目录] [-I | -I 文件列表]
bart compare [-r 规则|-] [-i 关键字] [-p]控制清单文件 测试清单文件
-R 指定清单的根目录。所有由规则指定的路径都会被解释为此目录的相对路径。所有由清单报告的路径均为此目录的相对路径。
-I 无论是从命令行执行此选项,还是从标准输入中读取此选项,它都会接受要列出的单个文件的列表。
-r 此清单的rules 文件的名称。请注意,– 在与-r 选项一起使用时,会从标准输入读取rules 文件。
-n 禁用文件列表中所有常规文件的内容签名。此选项可用于改善性能。或者,可以在需要更改文件列表的内容时使用此选项,这与系统日志文件的情况类似
# bart create -R /etc //创建仅包含有关/etc 子树中文件的信息的清单
# bart create -I /etc/passwd /etc/shadow //创建仅列出有关系统上/etc/passwd 和/etc/shadow 文件的信息的清单

比较同一系统在一段时间内的清单
# bart create -R /etc > systeml.control.121212 //创建控制清单。
#cat >/etc/ssh/xu.txt //创建文件放于/etc/ssh目录下
# bart create -R /etc > system1.test.1212123 //更改时创建测试清
# bart compare systeml.control.121212 system1.test.1212123 //将控制清单与测试清单进行比较
# bart compare systeml.control.121212 system1.test.1212123
/xu.txt:
add
显示增加了一个文件./xu.txt

控制对文件的访问
保证文件和目录安全的命令
ls 列出目录中的文件及其有关信息。
chown 更改文件的拥有权。
chgrp 更改文件的组拥有权。
chmod 更改文件的权限。可以使用符号模式(使用字母和符号)或绝对模式(使用八进制数字)更改文件的权限。
文件可以是七种类型之一。每种类型由一个符号显示:
-(减号) 文本或程序
b 块特殊文件
c 字符特殊文件
d 目录
l 符号链接
s 套接字
D 门
P 命名管道(FIFO)

UNIX 文件权限
r 读文件指定的用户可以打开和读取文件内容。
目录指定的用户可以列出目录中的文件。
w 写文件指定的用户可以修改文件的内容或删除该文件。
目录指定的用户可以在目录中添加文件或链接。这些用户也可以删除目录中的文件或链接。
x 执行文件指定的用户可以执行文件(如果该文件为程序或shell 脚本)。这些用户也可以使用一个exec(2) 系统调用来运行程序。
目录指定的用户可以打开或执行目录中的文件。这些用户也可以使该目录以及该目录下的目录成为当前目录。
- 拒绝文件和目

指定的用户无法读写或执行文件。