hp笔记09年7月29日
有理解错误的地方欢迎指正
###############################################################################################
HP-UX(取自Hewlett Packard UniX)
背景介绍
###############################################################################################
hp服务器介绍
hp的入门级服务器主要是L、A、R系列。中端用户是K、N系列。V系列是最强大的服务器
hp的硬件架构主要有PA-RISC和Intel Itanium两个系列,其中PA-RISC系列已经在200*年寿终正寝。
HP stopped selling PA-RISC-based HP 9000 systems at the end of 2008 but will support servers running PA-RISC chips until 2013.[3]
摘自:
主要发行版本有:
HP-UX 10.x
HP-UX 11.0
HP-UX 11i v1
HP-UX 11i v1.5
HP-UX 11i v1.6
HP-UX 11i v2
HP-UX 11i v3
最新的版本是HP-UX 11i v3 Update 4即:HP-UX 11i Version 3 March 2009 RELEASE
HP-UX 11i v3 runs on HP Integrity and HP 9000 servers. v3可以运行在基于PA-RISC和Intel Itanium的两种服务器上。
简单介绍下hp的规划:
HP-UX已经发展到了11i的第三个版本,即HP-UX 11i v3。
按照发展计划,HP-UX每十年年一个生命周期,每三年一个版本。
2003年,惠普推出了HP-UX 11i v2,
11i v3是在2007年2月23日发布的,它重点针对适应性基础架构而设计,增强了关键任务虚拟化技术的灵活性适用性,具有数据中心级的
可靠性和安全性,内嵌了对于多操作系统环境的支持,提供集约化的管理与控制。
HP-UX 11i下一个版本发布将会在2010年,2010年惠普会推出一个新版本HP-UX 11i v4。新版本的重点是零宕机时间虚拟化应用,以及功
能更加强大的可管理性、安全性和可靠性。HP-UX 11i的生命周期将一直延续到2013年。
目前,HP-UX主要应用在惠普动能服务器以及HP系列服务器。其中,HP 9000采用两种处理器:惠普的PA-RISC处理器以及Intel的安腾服
务器。如今安腾平台已经占惠普小型机75%的份额,已经超过了PA-RISC平台,而且这个份额还在继续的增长中,PA-RISC相对安腾属于下
降的趋势。惠普小型机最终的主流平台就是安腾平台,PA-RISC会逐步停产。HP-UX对于PA-RISC平台的支持会一直延续到2013年以后。
发行版标识符 发行版名称 支持的处理器体系结构
B.11.11 HP-UX 11i v1 PA-RISC
B.11.23 HP-UX 11i v2 PA-RISC 和 Intel Itanium
B.11.31 HP-UX 11i v3 PA-RISC 和 Intel Itanium
PA-RISC is supported on HP-UX 11i v2 starting with the September 2004 release. 这个也不大明白,难道hp操作系统有一段时间停止了对pa-rasc的支持?
再说说hp的操作系统的区别,跟微软一样,hp的操作系统也分n种,其中差别到底是什么只有微软跟hp的人知道(不知道老师是谁?)
Foundation OE (FOE)
旨在满足 Web 服务器、内容服务器和前端服务器的需求,该操作环境包括多种应用程
序,如 HP-UX Web Server Suite、Java? 和 Mozilla 应用程序套件。这种操作环境与
HP-UX 11i 绑定在一起时称为 HPUX11i-OE。
有人买小机去跑WEB吗?hp的市场定位应该是有点问题。
Enterprise OE (EOE)
用于数据库应用程序服务器和逻辑服务器,此操作环境包含 HP-UX 11i v3 Foundation
OE 软件包,以及其他用于支持企业级服务器的应用程序,如 GlancePlus Pak。这种操
作环境与 HP-UX 11i 绑定在一起时称为 HPUX11i-OE-Ent。
Mission Critical OE(MCOE)
用于应用程序服务器和数据库服务器,此操作环境包含 Enterprise OE 软件包,以及其
他用于支持关键任务服务器的应用程序,如 HP Serviceguard 和 Workload Manager。
这种操作环境与 HP-UX 11i 绑定在一起称为 HPUX11i-OE-MC。
Technical Computing OE(TCOE)
用于服务器应用程序,此操作环境包含大量图形应用程序和数学库。这种操作环境与
HP-UX 11i 绑定在一起时称为 HPUX11i-TCOE。
并且文档里的这句话没有理解透“在 HP-UX 11i v3 发行版中,原先包含在独立的 OE 软件包(FOE、EOE、MCOE 和 TCOE)中
的所有产品都已作为推荐产品而取消绑定。系统将自动选择安装这些产品”不知道hp是向善了还是……。
买了hp机器的时候得小心了,别不小心整了个EOE,想换其他版的时候,hp说:不好意思,拿钱来吧,那就惨了
不知道大家怎么想,反正我一新手接触hp感觉特乱。不光是硬件产品线乱,软件也乱。不像sun或者ibm。不管你用我的机器做什么用,
都是同一套介质。一个版本,hp搞这么多无形中得多花多少money呢?每个产品都得分装,都得测试……,难不成hp也把客户定义成画三四
千买个机器的用户?
###############################################################################################
主要参考:
I 安装任务(HP-UX 11i v3)
支持的系统
HP-UX 11i v3 可以完全支持的 HP 9000 和 HP Integrity 系统的列表,
参考以下网站上的 HP Server Support Matrix:
工作站不支持 HP-UX 11i v3。HP 建议 PA-RISC 工作站用户使用 HP-UX 11i v1,
并建议基于 Itanium的工作站用户使用 HP-UX 11i v2
(还有双核 Intel Itanium2 处理器)
安装前准备
确定型号、操作系统和(或)操作环境以及软件
You can determine the update release date and the Operating Environment by entering the following:
可以用下边的命令来确定你的hp操作系统的版本号和操作环境
# swlist | grep HPUX11i
The resulting output will list the current release identifier, update release date, and Operating Environment. For example:结果将显示当前的发行版标示,更新日期和操作环境。例如
HPUX11i-BOE B.11.31.0903 HP-UX Base Operating EnvironmentThe above revision string signifies the following:
B.11.31 = HP-UX 11i v3
0903 = March 2009 Update RELEASE
bash-2.04# swlist | grep HPUX11i
HPUX11i-OE B.11.11.0306 HP-UX 11i Operating Environment Component
B.11.11 = HP-UX 11i V1
0306 = 03年6月的发行版
bash-2.04# swlist | grep HPUX11i
HPUX11i-OE-MC B.11.23.0409 HP-UX Mission Critical Operating Environment Component
B.11.23 = HP-UX 11i V2
0409 = 04年9月的发行版
在冷安装或更新到 HP-UX 11i v3 之前,需要确定系统的型号以及其他信息。
确定型号主要是机器型号,cpu,内存,硬盘
要确定系统的型号:
model
bash-2.04# model
9000/800/A400-6X
这个是台rp2405
bash-2.04# ioscan -fnC processor
Class I H/W Path Driver S/W State H/W Type Description
===================================================================
processor 0 160 processor CLAIMED PROCESSOR Processor
bash-2.04# model
ia64 hp server rx4640
这是台 hp integrity rx4640
bash-2.04# ioscan -fnC processor
Class I H/W Path Driver S/W State H/W Type Description
===================================================================
processor 0 120 processor CLAIMED PROCESSOR Processor
processor 1 121 processor CLAIMED PROCESSOR Processor
processor 2 122 processor CLAIMED PROCESSOR Processor
processor 3 123 processor CLAIMED PROCESSOR Processor
安腾系列的可以用machinfo查看cpu信息
bash-2.04# machinfo
CPU info:
Number of CPUs = 4
Clock speed = 1500 MHz
CPUID registers
vendor information = "GenuineIntel"
processor serial number = 0x0000000000000000
processor version info = 0x000000001f020104
architecture revision: 0
processor family: 31 Intel(R) Itanium 2 Family Processors
processor model: 2 Intel(R) Itanium 2 processor
processor revision: 1
largest CPUID reg: 4
processor capabilities = 0x0000000000000001
implements long branch: 1
Bus features
implemented = 0xbdf0000060000000
selected = 0x0000000040000000
Bus Lock Signal masked
Cache info:
L1 Instruction: size = 16 KB, associativity = 4
L1 Data: size = 16 KB, associativity = 4
L2 Unified: size = 256 KB, associativity = 8
L3 Unified: size = 4096 KB, associativity = 8
Memory = 4087 MB (3.991211 GB)
Firmware info:
Firmware revision = 03.11
FP SWA driver revision: 1.18
IPMI is supported on this system.
BMC version: v03.47
Platform info:
model string = "ia64 hp server rx4640"
machine id number = ******************************
machine serial number = **********
OS info:
sysname = HP-UX
nodename = HPITA
release = B.11.23
version = U (unlimited-user license)
machine = ia64
idnumber = **********
vmunix _release_version:
@(#) $Revision: vmunix: B11.23_LR FLAVOR=perf Fri Aug 29 22:35:38 PDT 2003 $
bash-2.04#
查看硬盘信息
bash-2.04# ioscan -funC disk
Class I H/W Path Driver S/W State H/W Type Description
======================================================================
disk 0 0/0/1/1.15.0 sdisk CLAIMED DEVICE HP 36.4GST336753LC
/dev/dsk/c1t15d0 /dev/rdsk/c1t15d0
disk 1 0/0/2/0.1.0 sdisk CLAIMED DEVICE HP DVD-ROM 305
/dev/dsk/c2t1d0 /dev/rdsk/c2t1d0
disk 2 0/0/2/1.15.0 sdisk CLAIMED DEVICE HP 36.4GST336753LC
/dev/dsk/c3t15d0 /dev/rdsk/c3t15d0
bash-2.04# ioscan -funC disk
bash-2.04# diskinfo /dev/rdsk/c1t15d0
SCSI describe of /dev/rdsk/c1t15d0:
vendor: HP 36.4G
product id: ST336753LC
type: direct access
size: 35566480 Kbytes
bytes per sector: 512
bash-2.04# diskinfo /dev/rdsk/c3t15d0
SCSI describe of /dev/rdsk/c3t15d0:
vendor: HP 36.4G
product id: ST336753LC
type: direct access
size: 35566480 Kbytes
bytes per sector: 512
bash-2.04# ioscan -funC disk
Class I H/W Path Driver S/W State H/W Type Description
============================================================================
disk 0 0/0/3/0.0.0.0 sdisk CLAIMED DEVICE TEAC DV-28E-C
/dev/dsk/c0t0d0 /dev/rdsk/c0t0d0
disk 3 0/1/1/0.0.0 sdisk CLAIMED DEVICE HP 73.4GST373453LC
/dev/dsk/c2t0d0 /dev/rdsk/c2t0d0
/dev/dsk/c3t0d0 /dev/rdsk/c3t0d0
disk 2 0/1/1/0.1.0 sdisk CLAIMED DEVICE HP 73.4GST373453LC
/dev/dsk/c2t1d0 /dev/rdsk/c2t1d0
/dev/dsk/c2t1d0s1 /dev/rdsk/c2t1d0s1
/dev/dsk/c2t1d0s2 /dev/rdsk/c2t1d0s2
/dev/dsk/c2t1d0s3 /dev/rdsk/c2t1d0s3
查看内存信息
Memory Information:
physical page size = 4096 bytes, logical page size = 4096 bytes
Physical: 2097152 Kbytes, lockable: 1545616 Kbytes, available: 1781800 Kbytes
Memory Information:
physical page size = 4096 bytes, logical page size = 4096 bytes
Physical: 4185952 Kbytes, lockable: 2972696 Kbytes, available: 3456544 Kbytes
查看交换分区
bash-2.04# swapinfo
Kb Kb Kb PCT START/ Kb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 2097152 36 2097116 0% 0 - 1 /dev/vg00/lvol2
dev 720896 24184 696712 3% 0 - 0 /dev/vg00/lvol10
reserve - 413576 -413576
memory 1548152 1211752 336400 78%
bash-2.04# swapinfo
Kb Kb Kb PCT START/ Kb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 4194304 287144 3907160 7% 0 - 1 /dev/vg00/lvol2
reserve - 753832 -753832
memory 4185952 1814152 2371800 43%
这个机器的交换分区应该是修改过,猜可能是扩过stand分区
可以查到
rp2405仅仅支持HP-UX 11i v1 (B.11.11)2,3 Renamed as v1 ON Jan. 1, 2003和HP-UX 11i v2 (B.11.23)2,3 HP 9000 AND Integrity,不支持HP-UX 11i v2 (B.11.22) IIntegrity only和HP-UX 11i v3 (B.11.31) HP 9000 AND Integrity
rx4640支持HP-UX 11i v2 (B.11.22) Integrity ONLY &&HP-UX 11i v2 (B.11.23) HP 9000 AND Integrity &&HP-UX 11i v3 (B.11.31)
HP 9000 and HP Integrity
要验证系统是否支持 HP-UX 11i v3,
对于基于 Itanium 的系统,可以使用可扩展固件接口 (EFI) 确定型号,方法是在 Boot Manager
处中断自动引导进程,并进入 EFI Shell,然后执行 info sys 命令:
Shell> info sys
此时将显示有关型号的信息。例如:
SYSTEM INFORMATION
Product Name: server rx2600
Serial Number: sg20220034
UUID: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
查看最小固件需求?真他大爷的麻烦。什么东西,不理解
查看固件信息
系统要求
至少 1.5 GB 内存
最小内存限制指在运行 HP-UX 11i v3 Foundation OE (FOE) 以及少量的应用程序。
要优化性能并运行其他可选软件和应用程序,则需要更多内存。如果正在安装的系统的内存量小
于支持的最小内存量,则安装将失败并生成一个错误,指出必需的最小内存量。如果确定能够支
持此系统的内存量,但该内存量小于建议的内存量,则可能生成一条警告消息。
如果系统拥有最小内存量,在冷安装或更新到 HP-UX 11i v3 之后,可能需要手动设置
VxFS 可调参数,以获得最优性能。有关这些可调参数的详细信息,请参阅附录 B (第 107 页)。
如何规划磁盘空间需求
安装之前一定要规划好 stand 和swap,虽然可以改,但是会很费劲。
HP的/stand和swap分区必须是连续的区块.并且默认安装的时候/stand和swap也是连续的区块,要想分大/stand,
必须把swap移动到别的连续区域,之后才能扩大/stand,并且要重新建立swap分区
如果 /stand 分区的缺省大小对于您的环境来说太小,请不要使用 lvextend 命令来
增加 /stand 分区的大小;执行此操作可能会导致系统无法引导。应改用 System Management
Homepage 来扩展 /stand 分区,或者使用 Ignite-UX 恢复来创建一个恢复映像并重新调整
/stand 分区的大小。您可以从恢复映像进行引导,并在恢复系统时重新调整 /stand 的大小。
有关使用 System Management Homepage 的帮助信息,请参考smh (1M) 联机帮助页或产品中
包含的“HP SMH 联机帮助”《》。有关创建恢复映像的帮助信息,请参考《Ignite-UX 管理指
南》,该文档可从以下 HP 技术资料文档网站获得:
分区方案
/ 5g
/stand 2g
/var 10g 可以适当小点,最少给5g吧
/usr 10g
/tmp 5g
/opt 10g
/home 看着给吧,这些都可以调整
swap 参考内存,mem<2g时内存两倍,2
4等大或1.5倍 mem>4g就跟内存一般大吧
itanium EFI|BOOT 500M ? 文档里的这个不明白是什么东西
itanium HP Service 500M ?
itanium BOOT 500M ?
/stand 必须是HFS类型的文件系统
使用了lvm的话,跟卷组建议在4个盘以下。
支持的网络驱动程序、海量存储驱动程序、I/O 卡和存储设备 ??难道hp很多自己的机器用自己的操作系统都驱不起来?丢人啊
确定型号、操作系统和(或)操作环境以及软件
检查拿到的介质是什么版本。
一切ok了就可以开始安装了,目前还没有操刀装过hp-ux
安装看文档比较简单。一定选择高级安装,别的可以不做,一定要调整stand和swap分区。也可以同时选择需要安装的软件。
这部分没有做过,先略过,回头哪天做了再补上
安装后任务
安装后配置啦。主机名,网络,密码,时区,日期……
然后安装扩展软件,打补丁……
第二部分
###############################################################################################
日常管理任务
###############################################################################################
日志管理
bash-2.04# more /etc/syslog.conf
# @(#)B11.23_LR
#
# syslogd configuration file.
#
# See syslogd(1M) for information about the format of this file.
#
mail.debug /var/adm/syslog/mail.log
*.info;mail.none /var/adm/syslog/syslog.log
*.alert /dev/console
*.alert root
*.emerg *
/etc/rc.log /etc/rc 运行记录 用读取文本文件的方法
/var/adm/syslog/syslog.log 一般系统日志 注意提示信息及对应的
/var/adm/sw/*.log 软件安装日志 日期,分析发生的相关问题
/var/adm/wtmp 用户登录信息 用last命令查看
/var/adm/btmp 用户登录失败信息 用lastb命令查看
/var/sam/log/samlog SAM日志
/var/spool/mqueue/syslog sendmail日志
/etc/shutdownlog 关机(shutdown)信息
/usr/adm/diag/LOGxxx 用工具查看
/var/adm/nettl.LOG* 网络日志 由HP工程师负责
/var/adm/crash core dump文件 由HP工程师负责文件清理
###############################################################################################
用户管理
基本上没什么新鲜的东西
user
useradd 需要注意-m选项
userdel
usermod
users compact list of users who are on the system
添加用户的缺省选项
bash-2.04# useradd -D
GROUPID 20
BASEDIR /home
SKEL /etc/skel
SHELL /sbin/sh
INACTIVE -1
EXPIRE
CHOWN_HOMEDIR no
groupadd
groupdel
groupmod
groups show group memberships
可以借助受限的shell(rsh)限制用户访问。
1,用户不能更改目录
2,不能设置环境变量
3,命令不能以/ 开头
4,I/O重定向被禁止
检查/etc/passwd /etc/group 文件的一致性。分别用pwck和grpck
直接编辑passwd文件的建议用vipw - edit the password file
/etc/skel目录下放着普通用户的缺省配置文件。用-m选项其实就是拷贝这些文件到
用户目录
bash-2.04# ls -l /etc/skel/
total 64
-r--r--r-- 1 bin bin 831 Mar 26 2004 .cshrc
-r--r--r-- 1 bin bin 347 Sep 3 2003 .exrc
-r--r--r-- 1 bin bin 333 Mar 26 2004 .login
-r--r--r-- 1 bin bin 438 Mar 26 2004 .profile
简单再提下shell
C SHELL .cshrc .login
POSIX&&BASH .profile
.exrc 用户的vi配置文件
日常检查
定期检查 last、lastb 和 who 命令的输出,以查找异常登录
wtmp 和 btmp 文件会无限制地增长,因此要定期检查这两个文件。定期删除无用信息,以防
止文件过大。wtmp 和 btmp 文件不是由负责维护它们的程序创建的。如果删除了这些文件,将
关闭登录记录功能。
参阅 last(1)、utmp(4) 和 wtmp(4)。
验证是否有其他用户帐户共用同一个用户 ID (UID)。尤其是0
检查超级用户帐户,查看谁具有超级用户访问权限。
在每个组成员的 ~/.profile 中设置 umask。在
以下示例中,组中的用户可以读取、写入
和执行文件,但是其他用户不可以执行这些操作:
umask u=rwx,g=rwx, o=
/etc/default/security 文件中配置系统范围的安全属性,默认全部是注释掉的,有一些比较有用,
值得重点关注一下。比如
# SU_ROOT_GROUP=wheel
passwd 命令示例
下面是一些有用的 passwd 命令示例:
重置用户的口令:
# passwd user1
在下次登录时强制更改口令:
# passwd -f user1
锁定或禁用帐户:
# passwd -l user2
启用口令时限性:
# passwd -n 7 -x 28 user1
查看特定用户的口令时限性状态:
# passwd -s user
查看所有用户的口令时限性状态:
# passwd -sa
/etc/shadow 影子口令文件,默认没有
而影子口令将加密的口令隐藏在影子口令文件中,从而增强了系统安全性。可以将先前存储在
公共可读文件 /etc/passwd 中的加密口令移动至 /etc/shadow 文件中,只有具有适当权限
的用户才可以访问此文件。
使用下列命令可启用、验证和禁用影子口令:
pwconv 命令创建影子口令文件,并将加密的口令从 /etc/passwd 文件复制到 /etc/
shadow 文件。
pwck 命令检查文件 /etc/passwd 和 /etc/shadow 中的不一致性。
pwunconv 命令将加密的口令和时限性信息从 /etc/shadow 文件复制到 /etc/passwd
文件中,然后删除 /etc/shadow 文件。
使用下列命令可针对单个用户配置特定属性。配置针对单个用户的属性后,它们将改写系统范
围缺省值。
userdbset 更改指定用户的属性以改写在 /etc/default/security 文件中定义
的系统范围缺省值。有关示例,请参阅第 2.5.2.1 节,另请参阅
userdbset(1M) 以了解详细信息。
userdbget 显示用户为特定用户或所有用户定义的值。有关详细信息,请参阅
userdbget(1M)。
userdbck 验证或修复用户定义的值。有关详细信息,请参阅 userdbck(1M)。
在下例中,userdbset 命令删除用户 joe 的所有用户定义属性。当 joe 登录后,将对
joe 应用 /etc/default/security 中定义的系统范围缺省值。
# /usr/sbin/userdbset -d -u joe
接下来,userdbset 将最小口令长度设为 7,并将 UMASK 设为 0022(八进制 022)。这些
更改仅应用于 joe。
# /usr/sbin/userdbset -u joe MIN_PASSWORD_LENGTH=7 UMASK=0022
在下一个例子中,userdbset 显示用户 amy 的所有属性:
# /usr/sbin/userdbget -u amy
amy AUDIT_FLAG=1
amy DISPLAY_LAST_LOGIN=0
在显示中,启用 amy 的审核标记并禁用其上次登录功能。
/etc/default/security 文件中定义的 INACTIVITY_MAXDAYS 属性控制是否在系统范围
基础上使非活动帐户过期。要改写系统范围缺省值并在单个用户的基础上配置
INACTIVITY_MAXDAYS,请使用 useradd -f 命令或 usermod -f 命令。使用 userdel 命
令可删除针对单个用户的配置。有关详细信息,请参阅联机帮助页 useradd(1M)、usermod(1M)
和 userdel(1M)。
不能使用 userdbset 命令在单个用户的基础上配置 INACTIVITY_MAXDAYS。
INACTIVITY_MAXDAYS 属性与影子口令文件的非活动字段相关。useradd 和 usermod 命令
修改指定用户的影子口令文件的非活动字段。有关详细信息,请参阅 security(4) 联机帮助页中
对 INACTIVITY_MAXDAYS 的说明。
由于 setuid(设置用户 ID)和 setgid(设置组 ID)可引发潜在的系统安全隐患,所以
必须注意这两个程序。
为什么 setuid 和 setgid 程序存在隐患
无论何时执行任何程序,它都会创建具有四个 ID 编号的进程,这四个编号分别是:真正的用户
ID 和有效的用户 ID(ruid 和 euid)以及真正的组 ID 和有效的组 ID(rgid 和 egid)。通
常,这些 ID 对是完全相同的。
但是,运行 setuid 或 setgid 程序会将进程的 euid 或 egid 从与属主关联的 ID 更改为对
象的 ID。所衍生的进程从对象获得其属性,从而授予用户与程序属主和组相同的访问权限。
? 如果打开 setuid 位,则进程的权限将设置为文件属主的权限。
? 如果打开 setgid 位,则进程的权限将设置为文件组的权限。
? 如果 setuid 和 setgid 位均未打开,则进程的权限不会变化。
? 一种特别危险的情况是,如果使用 setuid 将程序设置为 root,用户将获得 root 可用
的所有权限。这是很危险的,因为在这种情况下,使用程序的方式可能会破坏系统安全。
在较小范围内,此问题在其他 setuid 和 setgid 情况下也存在
出于安全原因,HP-UX 内核通常会忽略脚本中的 setuid 和 setgid 位。通过更改可调参数
secure_sid_scripts,可以放宽此规则,但强烈建议不要更改此可调参数的缺省值。
bash-2.04# man secure_sid_scripts
只有在绝对必要的情况下才使用 setuid 和 setgid。
确保 setuid 程序对于其他用户而言是不可写的。
在任何可能的情况下,使用 setgid 来代替 setuid,以便缩小因代码缺陷或安全违例而
带来的破坏的范围。
定期在文件系统中搜索新的或修改过的 setuid 和 setgid 程序。可以使用 ncheck -s
命令。
防止堆栈缓冲区溢出攻击
向程序传递大量数据称为堆栈缓冲区溢出攻击。通常,这些数据中包含欺骗程序执行的命令。
此类攻击的目的是要获取对系统的未经授权的访问、破坏或更改数据,或者导致对合法用户拒
绝服务。
要监视堆栈缓冲区溢出攻击,请监视下列更改:
执行其他程序的 setuid 程序。
意外地获得零 (0) 用户 ID 的程序。为零的用户 ID 仅用于超级用户。
要防止堆栈缓冲区溢出攻击,请执行下列操作:
启用 executable_stack 内核可调参数。
使用 chatr +es 命令。
通过内核可调参数 executable_stack 可防止程序执行其堆栈中的代码。这样,当有入侵者
向程序传递非法数据时,可以提供相应的保护,从而防止程序执行其程序堆栈中的任意代码。
内核可调参数 executable_stack 全局性地启用或禁用堆栈缓冲区溢出保护。0(零)设置可
导致堆栈不可执行,是保护系统安全的首选方法。缺省情况下,为了向后兼容,会将
executable_stack 设置为 1,即允许堆栈执行,因此不提供保护功能。使用 HP SMH 或
kmtune 命令可更改 executable_stack 的值。
另外一种管理堆栈缓冲区溢出保护的方法是使用 chatr 命令的 +es 选项。例如,如果
executable_stack 设为零,但程序确实需要执行其堆栈,则使用以下的 chatr 命令可允许
该程序执行堆栈:
# chatr -es enable 程序
有关详细信息,请参阅 chatr(1)、kmtune(1M) 和 executable_stack(5)。
使用 /etc/dialups 和 /etc/d_passwd 进行访问控制
要提高识别远程用户方面的安全性,请在文件 /etc/dialups 和 /etc/d_passwd 中添加相
应的条目。这两个文件用于控制登录时的拨号安全性功能。有关详细信息,请参阅 dialups(4)
和 login(1)。
如果 /etc/dialups 文件存在,登录进程会将终端与 /etc/dialups 中列出的终端进行比
较。如果 /etc/dialups 中包含该终端,则 login 会要求输入口令。该口令将与 /etc/
d_passwd 中的口令进行比较。
此外,/etc/passwd 文件也用于验证该口令。
以下是一个配置 /etc/dialups 文件的示例:
# vi /etc/dialups(列出允许的终端)
/dev/ttyd0p1
/dev/ttyd0p2
# vi /etc/d_passwd
/usr/bin/sh
xxencrypted-passwordxxxxxxxxx:comments
/usr/bin/ksh
xxencrypted-passwordxxxxxxxx:comments
/sbin/sh
xxencrypted-passwordxxxxxxxxx:comments
用户看到的内容为:
Login:
Password:
Dialup password:
要更改 /etc/d_passwd 中的口令,请使用如下的 passwd 命令:
# passwd -F /etc/d_passwd Shell 路径
Shell 路径是 /etc/d_passwd 中列出的 Shell 路径。
双密码验证,这个不错。就是比较麻烦
HP-UX Bastille是安全加固、锁闭工具,可用于增强 HP-UX 操作系统的安全性。略过,想了解的话参考文档。