文档介绍:UNIX系统安全培训手册
一. 操作系统 3
二. UNIX起源/发展/分支 3
三. UNIX系统基础知识/命令/安全配置 5
1. 有用的命令 5
(1) lsof 5
(2) chattr 6
(3) Netstat /sockstat 6
(4) md5sum 7
(5) acct 7
(6) Last/lastlog 8
2. 用户环境变量/控制文件 8
(1) profile 8
(2) history 9
3. 文件系统(fs) 9
(1). 一般文件系统: 10
(2). 其它平台文件系统: 11
(3) 日志式文件系统: 11
(4) 网络文件系统: 12
(5) 虚拟文件系统: 12
(6) 特殊用途文件系统: 13
(7) 文件系统目录结构 13
4. 堆栈溢出/non-exec stack 14
(1) 什么是堆栈溢出 14
(2) 堆栈溢出的危害 14
(3) 如何防止堆栈溢出 14
5. 日志记录 15
(1) 由syslog记录的日志 15
(2) 由login记录的日志文件 16
(3) 由程序自己记录的日志文件 16
(4) core dump记录 16
6. 安全配置 16
(1) 用户帐号的安全配置 16
(2) 用户环境的安全配置 17
(3) 系统提供程序的安全配置 18
四. UNIX服务进程介绍/安全配置 18
1. SYSTEM V结构的启动控制 18
2. BSD 结构的启动方式 20
3. 常用服务进程的配置要点 21
(1). Apache的配置要点 21
(2). ftp 的配置要点 23
(3). DNS的配置要点 24
五. 第三方安全软件/Module介绍 25
1. SSH 25
(1) 什么是SSH ? 25
(2) SSH协议的内容 25
(3) SSH的安全验证 26
(4) SSH的应用 26
2. tcp_wrapper 27
3. tripwire 28
4. non-exec stack 28
(1). Libsafe: 28
(2). PAX: non-exec stack module 29
(3). RSX: non-exec stack/heap module 30
(4). kNoX:non-exec stack/heap module 30
六. 了解系统入侵 30
1. 特征 30
(1) 明显特征 30
(2) 其他特征 30
2. 处理方法 31
(1) 断开网络,切换到安全的环境。 31
(2) 检查系统 31
七. Linux系统配置经验. 32
1. 关于系统分区划分 32
2. 关于机器的启动密码 32
3. 用户管理 32
(1) 帐号和密码管理 32
(2) 用户环境 33
4. 系统文件,安全 34
(1) 关于SUID程序 34
(2) 关于系统配置文件 34
(3) 关于系统日志 34
(4) 关于补丁 35
,响应 35
(1) 关闭不需要的服务 35
(2) 针对TCP/IP层的保护 36
一. 操作系统
一般情况下,我们不能直接操作裸机,必须通过一个叫做基本输入输出系统的软件系统(英文为Basic Input/Output System,简称BIOS),才能操作控制裸机,之所以这样称呼它,是因为它提供了最基本的计算机操作功能,如在屏幕上显示一点,接收一个键盘字符的输入等。
在基本输入输出系统的外面,操作系统(Operating System),专门负责管理计算机的各种资源,并提供操作电脑所需的工作界面。有了它们,人们才可以方便自如地使用电脑。
应用软件一般都运行在操作系统之上,由专业人员根据各种需要开发。我们平时见到和使用的绝大部分软件均为应用软件,如杀毒软件,文字处理软件,学习软件,游戏软件,上网软件等等。
下图为一套完整的电脑系统示意框图。
二. UNIX起源/发展/分支
UNIX的历史开始于1969年ken Thompson,Dennis Ritchie(即著名的K&G,C语言的发明人)与一群人在一部PDP-7上进行的一些工作,后来这个系统变成了UNIX。它主要的几个版本为:
V1(1971):第一版的UNIX,以PDP-11/20的汇编语言写成。包括文件系统,fork、roff、ed等软件。
V4(1973):以C语言从头写过,这使得UNIX修改容易,可以在几个月内移植到新的硬件平台上。最初C语言是为UNIX设计的,所以C与UNIX间有紧密的关系。
V6(1975):第一个在贝尔实验室外(尤其是大学中)广为流传的UN