等保测评命令——HP-UX

各位大佬,想看那种网络设备/操作系统/数据库/中间件的测评命令清单,可在留言区留言!

依据 GB/T 22239-2019《信息安全技术 网络安全等级保护基本要求》等保2.0三级 标准,针对 HP-UX 11i v3 (11.31) / 11i v2 (11.23) 给出可直接落地的测评命令清单。

版本说明:HP-UX 11i v3为当前主流版本,11i v2仍有一定存量硬件平台:PA-RISC和Itanium (IA-64)


一、身份鉴别(8.1.4.1)

1.1 账户与密码策略

测评项HP-UX命令达标判据
查看用户账户cat /etc/passwd / getent passwd无默认账户,UID唯一
检查密码策略cat /etc/default/security启用复杂度,定期更换
查看密码过期passwd -s username≤90天
检查空口令logins -p / pwck无输出
查看系统用户logins -x系统账户已锁定

详细命令:

# 1. 查看所有用户账户
cat /etc/passwd
getent passwd

# 2. 检查空口令账户(关键命令)
logins -p
# 输出应为空,如有输出则为空口令用户

# 3. 查看无效/过期账户
logins -d# 查看密码过期账户
logins -x# 查看过期账户详情

# 4. 查看系统用户状态(检查是否锁定)
logins -o
# 或查看特定用户
logins -v root

# 5. 查看密码策略核心配置文件
cat /etc/default/security
# 关键参数:
# MIN_PASSWORD_LENGTH=8           # 最小长度8位
# MIN_UPPERCASE_CHARS=1           # 最少大写1个
# MIN_LOWERCASE_CHARS=1           # 最少小写1个
# MIN_DIGIT_CHARS=1               # 最少数字1个
# MIN_SPECIAL_CHARS=1             # 最少特殊字符1个
# PASSWORD_HISTORY_DEPTH=10         # 历史密码10个
# PASSWORD_MAXDAYS=90              # 最大使用天数90天
# PASSWORD_MINDAYS=1               # 最小使用天数1天
# PASSWORD_WARNDAYS=7              # 警告天数7天
# MAX_FAILED_LOGINS=5              # 最大失败登录5次
# LOCKOUT_TIME=900                 # 锁定时间900秒(15分钟)

# 6. 查看密码哈希算法(HP-UX使用专用算法)
cat /etc/default/security |grep CRYPT
# 或
grep CRYPT /etc/default/security
# 期望:CRYPT_DEFAULT=6(SHA-512,HP-UX 11i v3)

# 7. 检查密码字典检查(如果安装)
cat /etc/default/security |grep DICTIONARY
# 或查看cracklib配置
ls /usr/lib/cracklib/

# 8. 查看PAM配置(Pluggable Authentication Modules)
cat /etc/pam.conf
# 或HP-UX 11i v3的PAM目录
ls /etc/pam.d/
cat /etc/pam.d/login
cat /etc/pam.d/passwd
cat /etc/pam.d/su

# 9. 查看特定用户密码状态
passwd-s root
passwd-s username
# 输出格式:username PS 01/15/24 0 90 7 30
# PS=密码已设置,0=最小天数,90=最大天数,7=警告天数,30=不活动天数

# 10. 检查密码文件完整性
pwck
# 检查/etc/passwd和/etc/shadow一致性
grpck
# 检查/etc/group一致性

1.2 登录失败处理与会话超时

测评项HP-UX命令达标判据
查看登录失败记录lastb / utmps记录完整
检查账户锁定cat /etc/default/securityMAX_FAILED_LOGINS=5
查看会话超时cat /etc/profile / echo $TMOUT≤10分钟
检查SSH超时cat /opt/ssh/etc/sshd_configClientAliveInterval 300
# 11. 查看登录失败记录
lastb
# 或查看详细记录
last -R# 显示远程主机

# 12. 查看当前登录用户
who
w
# 或详细查看
whodo

# 13. 查看用户登录历史(使用HP-UX特有工具)
logins -l username  # 查看用户最后登录

# 14. 检查账户锁定策略
cat /etc/default/security |grep-E"MAX_FAILED_LOGINS|LOCKOUT_TIME"
# 期望:
# MAX_FAILED_LOGINS=5
# LOCKOUT_TIME=900

# 15. 查看系统级超时配置
cat /etc/profile |grep-itimeout
cat /etc/profile |grep TMOUT
# 期望:export TMOUT=600

# 16. 查看SSH会话超时(HP-UX使用/opt/ssh或/etc/ssh)
cat /opt/ssh/etc/sshd_config 2>/dev/null ||cat /etc/ssh/sshd_config 2>/dev/null |grep-E"ClientAlive|TCPKeepAlive"
# 期望:
# ClientAliveInterval 300
# ClientAliveCountMax 0
# TCPKeepAlive no

# 17. 查看SSH登录失败处理
cat /opt/ssh/etc/sshd_config 2>/dev/null |grep-E"MaxAuthTries|PermitRootLogin"
# 期望:
# MaxAuthTries 3
# PermitRootLogin no

# 18. 查看控制台安全设置
cat /etc/securetty  # 允许root登录的终端
# 或查看
cat /etc/default/login |grep-E"CONSOLE|TIMEOUT"

二、访问控制(8.1.4.2)

2.1 权限管理与RBAC(HP-UX特有)

HP-UX具有完整的 RBAC(Role-Based Access Control) 系统,称为 HP-UX RBAC 或 Fine-Grained Privileges

测评项HP-UX命令达标判据
查看RBAC配置getprivgrp / lspriv特权分离清晰
检查角色定义cat /etc/rbac/user_attr角色定义完整
查看授权authadm / lsauth授权细化
检查配置文件profadm / lsprof配置文件合理
# 19. 查看系统特权组(HP-UX特有)
getprivgrp
# 或
getprivgrp -v

# 20. 查看所有可用特权
lspriv
# 或详细查看
lspriv -v

# 21. 查看RBAC用户属性(如果启用)
cat /etc/rbac/user_attr 2>/dev/null
# 或使用
userattr -L# 列出所有属性

# 22. 查看特定用户授权
getuserattr username auths
getuserattr username roles
getuserattr username profiles

# 23. 查看角色定义
lsrole
# 或详细查看
lsrole -v admin

# 24. 查看配置文件定义
lsprof
lsprof -v System Administrator

# 25. 查看授权定义
lsauth
lsauth -v solaris.*

# 26. 检查执行属性(命令级授权)
cat /etc/rbac/exec_attr 2>/dev/null |head-20

# 27. 查看传统sudo配置(如使用)
cat /etc/sudoers
visudo -c# 检查语法

# 28. 查看用户组权限
cat /etc/group
getent group
# 检查:用户是否属于过多组,wheel组使用

2.2 文件系统权限与ACL

HP-UX支持 JFS(Journaled File System) 和 VxFS(Veritas File System),以及丰富的ACL。

# 29. 查看关键文件权限
ls-la /etc/passwd /etc/shadow /etc/group /etc/security/
# 期望:
# -rw-r--r-- 1 root sys  /etc/passwd
# -r-------- 1 root sys  /etc/shadow
# -rw-r--r-- 1 root sys  /etc/group
# drwxr-xr-x 2 root sys  /etc/security

# 30. 查看文件ACL(HP-UX ACL)
getacl /etc/passwd
# 或
lsacl /etc/passwd

# 31. 查看文件扩展属性(HP-UX特有)
getextattr /etc/passwd

# 32. 查看文件权限位(SUID/SGID/SVTX)
find / -type f \(-perm-4000-o-perm-2000-o-perm-1000\)-ls2>/dev/null
# 或使用HP-UX特有选项
find / -perm -u+s -o-perm -g+s -ls2>/dev/null

# 33. 查看世界可写文件(高风险)
find / -type f -perm-002-ls2>/dev/null
find / -type d -perm-002-ls2>/dev/null

# 34. 检查无主文件
find / -nouser-o-nogroup2>/dev/null

# 35. 查看文件系统挂载选项
cat /etc/fstab
# 或
mount-v
# 检查:nosuid、nodev、noexec等安全选项

# 36. 查看Veritas File System(VxFS)特性(如果使用)
df-F vxfs
# 检查:日志、快照、压缩、加密

三、安全审计(8.1.4.3)

3.1 HP-UX审计系统(AUDIT)

HP-UX使用 AUDIT 子系统进行安全审计,这是其企业级安全特性。

测评项HP-UX命令达标判据
检查审计状态auditstat / audsys审计已启用
查看审计策略audusr / audfile覆盖关键事件
检查审计日志ls -la /var/adm/audit存在且权限正确
查看审计配置cat /etc/audit/audit.conf配置完整
# 37. 检查审计系统状态
auditstat
# 或
audsys -s# 查看状态
# 期望输出:auditing is ON

# 38. 查看审计系统详细状态
audsys -v
# 或
auditstat -v

# 39. 查看审计配置文件
cat /etc/audit/audit.conf
# 或
cat /etc/rc.config.d/auditing
# 关键配置:
# AUDITING=1                    # 启用审计
# AUDIT_ARGS_MAX=20             # 最大参数个数
# AUDIT_EVENTS=OPEN,CLOSE,LOGIN,LOGOUT,CHMOD,CHOWN,CREAT,LINK,UNLINK,RENAME,KILL,SETUID,SETGID
# AUDIT_FILE=/var/adm/audit/audit.log
# AUDIT_FILE_MAXSIZE=10000000   # 最大文件大小10MB
# AUDIT_NUMFILES=5              # 保留5个历史文件

# 40. 查看审计用户掩码
audusr -v
# 或查看特定用户
audusr username

# 41. 查看审计事件掩码
audfile -v
# 或
cat /etc/audit/auditmask

# 42. 查看审计日志文件
ls-la /var/adm/audit/
# 检查:权限600,属主root,定期轮转

# 43. 查看当前审计日志大小
du-sh /var/adm/audit/
bdf /var/adm/audit/  # HP-UX特有bdf命令替代df

# 44. 查看审计记录(需要root)
audcat  # 读取审计日志
# 或
audcat -l /var/adm/audit/audit.log |head-50

# 45. 查看审计报告
audpr  # 格式化打印审计记录
# 或
audpr -i /var/adm/audit/audit.log |grep-E"LOGIN|LOGOUT|FAIL"

# 46. 查看审计选择掩码
audsel -v

# 47. 检查审计远程传输(如配置)
cat /etc/audit/audit.conf |grep REMOTE
# 或查看
ls /var/adm/audit/remote/

3.2 系统日志与Syslog

# 48. 查看系统日志配置
cat /etc/syslog.conf

# 49. 查看日志服务状态
ps-ef|grep syslog
# 或
cat /var/run/syslog.pid

# 50. 查看日志文件
ls-la /var/adm/
# 关键日志:
# /var/adm/syslog/syslog.log    # 系统消息
# /var/adm/sulog                 # su命令日志
# /var/adm/wtmp                  # 登录历史(二进制)
# /var/adm/btmp                  # 失败登录(二进制)
# /var/adm/utmp                  # 当前登录
# /var/adm/lastlog               # 最后登录

# 51. 查看系统消息
tail-100 /var/adm/syslog/syslog.log
# 或使用dmesg
dmesg|tail-50

# 52. 查看安全相关日志
tail-50 /var/adm/sulog
# 检查:su切换记录,失败尝试

# 53. 查看登录历史(二进制格式)
last |head-20
lastb |head-20# 失败登录

# 54. 查看FTP日志(如启用)
tail-50 /var/adm/syslog/ftpd.log
# 或
tail-50 /var/adm/wu-ftpd/wu-ftpd.log

# 55. 查看Cron日志
tail-50 /var/adm/cron/log

# 56. 查看审计守护进程日志
tail-50 /var/adm/audit/auditing.log

四、入侵防范(8.1.4.4)

4.1 系统安全状态

测评项HP-UX命令达标判据
查看系统版本uname -a / swlist官方支持版本
检查补丁级别swlist -l patch / swlist -a state最新补丁
查看加固状态cat /etc/rc.config.d/*已加固
检查安全参数kctune / kcusage安全内核参数
# 57. 查看系统版本信息
uname-a
# 输出:HP-UX hostname B.11.31 U 9000/800 123456789 unlimited-user license

# 58. 查看详细系统信息
model
# 或
getconf MACHINE_MODEL
getconf KERNEL_BITS  # 查看内核位数

# 59. 查看已安装软件包(HP-UX特有swlist)
swlist |head-20
# 或查看特定包
swlist -l product |grep-i security
swlist -l patch |grep-i security

# 60. 查看软件包状态(检查过期/不一致)
swlist -a state -l patch |grep-v"installed"

# 61. 查看系统安全加固配置
cat /etc/rc.config.d/netconf
cat /etc/rc.config.d/hpsec
cat /etc/rc.config.d/auditing
# 检查:IP_FORWARDING=0, SOURCE_ROUTING=0, STRONG_PASSWORD=1等

# 62. 查看内核可调参数(HP-UX特有kctune)
kctune |grep-i security
# 或查看特定参数
kctune ip_forwarding
kctune tcp_syn_rcvd_max
kctune ndd_tune_cmds

# 63. 查看网络内核参数(ndd方式)
ndd /dev/ip ip_forwarding
ndd /dev/ip ip_strict_dst_multihoming
ndd /dev/tcp tcp_syn_rcvd_max
ndd /dev/tcp tcp_conn_request_max

# 64. 查看系统资源限制(防DoS)
ulimit-a
# 或查看配置文件
cat /etc/security/limits.conf 2>/dev/null
# HP-UX使用/etc/default/security中的ULIMIT

# 65. 查看文件描述符限制
kctune maxfiles
kctune maxfiles_lim
kctune nfile

# 66. 查看进程限制
kctune maxuprc  # 每用户最大进程数
kctune max_thread_proc  # 每进程最大线程数
kctune nkthread  # 系统最大线程数

# 67. 查看核心转储配置(安全考虑)
cat /etc/rc.config.d/coredumps
# 或
kctune enable_core_dumps
# 建议:禁用或限制核心转储

4.2 网络安全配置

# 68. 查看网络接口配置
ifconfig-a
# 或
lanscan  # HP-UX特有,查看所有LAN接口
ifconfig lan0  # 查看特定接口

# 69. 查看网络接口状态(HP-UX特有)
netstat-in
# 或
linkloop -i lan0  # 测试链路

# 70. 查看路由表
netstat-rn
# 或
route -va

# 71. 查看监听端口
netstat-an|grep LISTEN
# 或
netstat-a-f inet

# 72. 查看防火墙状态(IPFilter或HP-UX特有)
# HP-UX 11i v3使用IPFilter或HP-UX防火墙
ipfstat -io2>/dev/null
# 或查看
cat /etc/opt/ipf/ipf.conf 2>/dev/null

# 73. 查看TCP Wrappers配置
cat /etc/hosts.allow
cat /etc/hosts.deny
# 期望:hosts.deny包含ALL: ALL

# 74. 查看inetd服务(传统服务管理)
cat /etc/inetd.conf
# 或查看启动脚本
ls /etc/inetd.d/

# 75. 查看Services文件
cat /etc/services |grep-v"^#"

# 76. 查看NFS共享(如使用)
showmount -e localhost
cat /etc/exports
# 检查:限制客户端,使用secure选项

# 77. 查看DNS配置
cat /etc/resolv.conf
cat /etc/nsswitch.conf |grep hosts

# 78. 查看LDAP/NIS配置(如使用)
cat /etc/nsswitch.conf
ypwhich  # 如使用NIS
ldaplist  # 如使用LDAP

五、恶意代码防范与完整性(8.1.4.5/8.1.4.6)

5.1 系统完整性检查

测评项HP-UX命令达标判据
查看文件完整性swverify / md5sum无异常修改
检查关键文件sum / cksum哈希校验
查看软件包签名swlist -v签名验证
检查启动完整性mkboot / lvlnboot启动逻辑卷完整
# 79. 使用swverify验证软件包完整性
swverify -v /path/to/package.depot 2>/dev/null
# 或验证已安装软件
swverify -v product_name

# 80. 计算文件校验和(HP-UX特有sum/cksum)
sum /etc/passwd
cksum /etc/passwd
# 或使用md5sum(如安装)
md5sum /etc/passwd 2>/dev/null ||sum-r /etc/passwd

# 81. 查看软件包控制文件(验证文件列表)
swlist -lfile product_name |head-20

# 82. 查看系统启动配置(HP-UX特有LVM启动)
lvlnboot -v
# 检查:启动逻辑卷配置,镜像状态

# 83. 查看启动磁盘配置
mkboot -v-a"hpux /stand/vmunix" /dev/rdsk/c0t0d0
# 或查看
cat /stand/bootconf

# 84. 查看内核完整性
ls-la /stand/vmunix
file /stand/vmunix
# 检查:权限、大小、修改时间

# 85. 查看关键目录完整性
ls-la /sbin /usr/sbin /bin /usr/bin
# 检查:无异常文件,权限正确

# 86. 查看防病毒软件(如安装McAfee/ Symantec)
ps-ef|grep-i"mcafee\|symantec\|sophos\|trend"
# 或查看
swlist |grep-i virus
swlist |grep-i security

# 87. 查看入侵检测(IDS)配置
cat /etc/rc.config.d/ids 2>/dev/null
# 或查看
swlist |grep-i ids

六、数据备份与恢复(8.1.4.9)

6.1 LVM与VxVM备份

HP-UX使用 LVM(Logical Volume Manager) 或 VxVM(Veritas Volume Manager) 进行存储管理。

# 88. 查看逻辑卷配置(LVM)
vgdisplay -v vg00
# 或
vgdisplay -v|grep-E"VG Name|LV Name|PV Name"

# 89. 查看物理卷状态
pvdisplay
pvdisplay -v /dev/dsk/c0t0d0

# 90. 查看逻辑卷状态
lvdisplay
lvdisplay -v /dev/vg00/lvol1

# 91. 查看Veritas Volume Manager(如果使用)
vxprint -ht
# 或
vxdisk list
vxvol list

# 92. 查看文件系统配置
bdf  # HP-UX特有,替代df
bdf -l# 本地文件系统
# 或传统
df-k

# 93. 查看文件系统快照(VxFS快照,如果使用)
mount-F vxfs |grep snapshot
# 或
fsadm -F vxfs /mountpoint

# 94. 查看备份配置(fbackup/ftio)
cat /etc/fbackupfiles
# 或
ls /var/adm/fbackupfiles/

# 95. 查看自动备份计划
crontab-l|grep-i backup
cat /var/spool/cron/crontabs/root |grep-i backup

# 96. 查看Ignite-UX备份(HP-UX特有系统备份工具)
swlist Ignite-UX
# 或查看配置
cat /var/opt/ignite/config.local
# 检查:make_tape_recovery, make_net_recovery配置

# 97. 查看Ignite备份历史
ls-la /var/opt/ignite/recovery/

七、服务管理与启动(8.1.4.4/8.1.4.9)

7.1 服务管理

HP-UX使用 SAM(System Administration Manager)SMH(System Management Homepage) 或传统init脚本管理服务。

# 98. 查看所有服务状态(传统init)
ls /etc/rc*.d/
# 或
ls-la /sbin/rc*.d/

# 99. 查看当前运行级别
who-r
# 或
cat /etc/inittab |grep initdefault

# 100. 查看服务配置(SAM/SMH)
cat /etc/rc.config.d/*
# 关键文件:
# /etc/rc.config.d/netconf      # 网络配置
# /etc/rc.config.d/hpsec        # 安全配置
# /etc/rc.config.d/auditing     # 审计配置
# /etc/rc.config.d/nfsconf      # NFS配置

# 101. 查看inetd服务状态
lssrc -s inetd  # 如使用SRC
# 或
ps-ef|grep inetd

# 102. 查看SMH(System Management Homepage)配置
cat /opt/hpsmh/conf/smhpd.conf 2>/dev/null
# 检查:端口、认证、SSL

# 103. 查看SAM配置
cat /etc/sam/sam.conf 2>/dev/null

# 104. 查看启动脚本完整性
ls-la /sbin/rc3.d/
ls-la /sbin/rc2.d/
# 检查:无异常脚本,权限正确

八、高可用与集群(8.1.4.9)

HP-UX常用 Serviceguard 或 Veritas Cluster Server (VCS) 实现高可用。

# 105. 查看Serviceguard集群状态(如果使用)
cmviewcl -v
# 或
cmviewcl -f line

# 106. 查看Serviceguard配置
cat /etc/cmcluster.conf
# 或
cmquerycl -v

# 107. 查看Veritas Cluster状态(如果使用)
hastatus -sum
# 或
hares -state

# 108. 查看集群节点状态
cmviewcl -n nodename
# 或
cmviewnode -v

# 109. 查看集群包(Package)状态
cmviewpkg -v
# 或
cmviewcl -p packagename

# 110. 查看集群网络配置
cmviewnet -v
# 检查:心跳网络、冗余配置

九、一键巡检脚本(HP-UX版)

#!/bin/sh
# HP-UX 等保三级一键巡检脚本
# 支持:HP-UX 11i v2/v3 (PA-RISC/Itanium)
# 执行权限:root

INSPECTION_LOG="/var/log/hpux_inspection_$(date +%Y%m%d_%H%M%S).log"

echo"=========================================="|tee-a$INSPECTION_LOG
echo"   HP-UX 等保三级巡检报告"|tee-a$INSPECTION_LOG
echo"   时间: $(date)"|tee-a$INSPECTION_LOG
echo"   主机: $(uname-n)"|tee-a$INSPECTION_LOG
echo"   版本: $(uname-r)"|tee-a$INSPECTION_LOG
echo"   型号: $(model)"|tee-a$INSPECTION_LOG
echo"=========================================="|tee-a$INSPECTION_LOG

check_pass(){
echo"[PASS] $1"|tee-a$INSPECTION_LOG
[-n"$2"]&&echo"    $2"|tee-a$INSPECTION_LOG
}

check_fail(){
echo"[FAIL] $1"|tee-a$INSPECTION_LOG
[-n"$2"]&&echo"    $2"|tee-a$INSPECTION_LOG
}

check_warn(){
echo"[WARN] $1"|tee-a$INSPECTION_LOG
[-n"$2"]&&echo"    $2"|tee-a$INSPECTION_LOG
}

# 1. 身份鉴别检查
echo""|tee-a$INSPECTION_LOG
echo"===== 1. 身份鉴别 ====="|tee-a$INSPECTION_LOG

echo"--- 空口令检查 ---"|tee-a$INSPECTION_LOG
empty_pass=$(logins -p2>/dev/null)
if[-z"$empty_pass"];then
    check_pass "空口令检查""未发现空口令用户"
else
    check_fail "空口令检查""发现空口令用户: $empty_pass"
fi

echo"--- 密码策略检查 ---"|tee-a$INSPECTION_LOG
if[-f /etc/default/security ];then
passlen=$(grep"^MIN_PASSWORD_LENGTH=" /etc/default/security 2>/dev/null |cut-d=-f2)
if["$passlen"-ge8]2>/dev/null;then
        check_pass "密码最小长度""当前设置: $passlen"
else
        check_fail "密码最小长度""当前设置: ${passlen:-未设置},建议≥8"
fi

maxdays=$(grep"^PASSWORD_MAXDAYS=" /etc/default/security 2>/dev/null |cut-d=-f2)
if["$maxdays"-le90]2>/dev/null;then
        check_pass "密码最大使用期""当前设置: ${maxdays}天"
else
        check_warn "密码最大使用期""当前设置: ${maxdays:-未设置}天,建议≤90"
fi

crypt=$(grep"^CRYPT_DEFAULT=" /etc/default/security 2>/dev/null |cut-d=-f2)
if["$crypt"="6"];then
        check_pass "密码加密算法""使用SHA-512(6)"
else
        check_warn "密码加密算法""当前: ${crypt:-未设置},建议SHA-512(6)"
fi
else
    check_fail "密码策略文件""/etc/default/security不存在"
fi

echo"--- 账户锁定策略 ---"|tee-a$INSPECTION_LOG
max_fail=$(grep"^MAX_FAILED_LOGINS=" /etc/default/security 2>/dev/null |cut-d=-f2)
lock_time=$(grep"^LOCKOUT_TIME=" /etc/default/security 2>/dev/null |cut-d=-f2)
if["$max_fail"-le5]2>/dev/null;then
    check_pass "账户锁定""失败${max_fail}次后锁定${lock_time}秒"
else
    check_warn "账户锁定""设置: ${max_fail:-未设置}次失败,建议≤5"
fi

echo"--- SSH安全配置 ---"|tee-a$INSPECTION_LOG
ssh_conf="/opt/ssh/etc/sshd_config"
[-f /etc/ssh/sshd_config ]&&ssh_conf="/etc/ssh/sshd_config"
if[-f"$ssh_conf"];then
ssh_ver=$(grep"^Protocol" $ssh_conf 2>/dev/null |awk'{print $2}')
if["$ssh_ver"="2"];then
        check_pass "SSH协议版本""强制使用SSHv2"
else
        check_warn "SSH协议版本""未强制SSHv2,当前: ${ssh_ver:-未设置}"
fi

root_login=$(grep"^PermitRootLogin" $ssh_conf 2>/dev/null |awk'{print $2}')
if["$root_login"="no"];then
        check_pass "Root远程登录""已禁止"
else
        check_fail "Root远程登录""未禁止: ${root_login:-未设置}"
fi
else
    check_fail "SSH配置""sshd_config不存在"
fi

# 2. 访问控制检查
echo""|tee-a$INSPECTION_LOG
echo"===== 2. 访问控制 ====="|tee-a$INSPECTION_LOG

echo"--- 关键文件权限 ---"|tee-a$INSPECTION_LOG
shadow_perm=$(ls-la /etc/shadow 2>/dev/null |awk'{print $1}')
if["$shadow_perm"="-r--------"];then
    check_pass "Shadow文件权限""权限正确: $shadow_perm"
else
    check_fail "Shadow文件权限""权限不合规: ${shadow_perm:-无法获取}"
fi

echo"--- RBAC配置 ---"|tee-a$INSPECTION_LOG
if[-f /etc/rbac/user_attr ];then
    check_pass "RBAC配置""RBAC已启用"
else
    check_warn "RBAC配置""未启用RBAC,建议启用"
fi

echo"--- SUID/SGID文件 ---"|tee-a$INSPECTION_LOG
suid_count=$(find / -type f \(-perm-4000-o-perm-2000\)2>/dev/null |wc-l)
if["$suid_count"-lt50];then
    check_pass "SUID/SGID文件""发现 $suid_count 个"
else
    check_warn "SUID/SGID文件""发现 $suid_count 个,建议审查"
fi

# 3. 安全审计检查
echo""|tee-a$INSPECTION_LOG
echo"===== 3. 安全审计 ====="|tee-a$INSPECTION_LOG

echo"--- 审计系统状态 ---"|tee-a$INSPECTION_LOG
audit_stat=$(auditstat 2>/dev/null |head-1)
ifecho"$audit_stat"|grep-q"auditing is ON";then
    check_pass "AUDIT审计""审计已启用"
else
    check_fail "AUDIT审计""审计未启用: ${audit_stat:-未配置}"
fi

echo"--- 审计日志检查 ---"|tee-a$INSPECTION_LOG
if[-d /var/adm/audit ];then
audit_size=$(du-sk /var/adm/audit 2>/dev/null |awk'{print $1}')
    check_pass "审计日志目录""存在,大小: ${audit_size}KB"
else
    check_fail "审计日志目录""/var/adm/audit不存在"
fi

echo"--- 系统日志配置 ---"|tee-a$INSPECTION_LOG
if[-f /var/adm/syslog/syslog.log ];then
    check_pass "系统日志""syslog.log存在"
else
    check_warn "系统日志""syslog.log不存在"
fi

# 4. 入侵防范检查
echo""|tee-a$INSPECTION_LOG
echo"===== 4. 入侵防范 ====="|tee-a$INSPECTION_LOG

echo"--- 系统版本与补丁 ---"|tee-a$INSPECTION_LOG
hpux_ver=$(uname-r)
check_pass "系统版本""$hpux_ver"

echo"--- 软件包状态 ---"|tee-a$INSPECTION_LOG
bad_patches=$(swlist -a state -l patch 2>/dev/null |grep-v"installed"|wc-l)
if["$bad_patches"-eq0];then
    check_pass "软件包状态""所有补丁已正确安装"
else
    check_warn "软件包状态""$bad_patches 个补丁状态异常"
fi

echo"--- 内核安全参数 ---"|tee-a$INSPECTION_LOG
ip_forward=$(kctune ip_forwarding 2>/dev/null |tail-1|awk'{print $2}')
if["$ip_forward"="0"];then
    check_pass "IP转发""已禁用"
else
    check_fail "IP转发""已启用,建议禁用"
fi

# 5. 数据安全与备份
echo""|tee-a$INSPECTION_LOG
echo"===== 5. 数据安全与备份 ====="|tee-a$INSPECTION_LOG

echo"--- 逻辑卷配置 ---"|tee-a$INSPECTION_LOG
vg_count=$(vgdisplay 2>/dev/null |grep"VG Name"|wc-l)
if["$vg_count"-gt0];then
    check_pass "LVM配置""发现 $vg_count 个卷组"
else
    check_warn "LVM配置""未找到卷组配置"
fi

echo"--- Ignite-UX备份 ---"|tee-a$INSPECTION_LOG
if swlist Ignite-UX >/dev/null 2>&1;then
    check_pass "Ignite-UX""已安装系统备份工具"
else
    check_warn "Ignite-UX""未安装,建议部署"
fi

# 6. 高可用检查
echo""|tee-a$INSPECTION_LOG
echo"===== 6. 高可用与冗余 ====="|tee-a$INSPECTION_LOG

echo"--- Serviceguard集群 ---"|tee-a$INSPECTION_LOG
ifcommand-v cmviewcl >/dev/null 2>&1;then
cluster_stat=$(cmviewcl -f line 2>/dev/null |head-1)
    check_pass "Serviceguard""集群工具已安装: $cluster_stat"
else
    check_warn "Serviceguard""未安装集群软件"
fi

# 总结
echo""|tee-a$INSPECTION_LOG
echo"=========================================="|tee-a$INSPECTION_LOG
echo"   巡检完成"|tee-a$INSPECTION_LOG
echo"   日志保存: $INSPECTION_LOG"|tee-a$INSPECTION_LOG
echo"=========================================="|tee-a$INSPECTION_LOG

echo""|tee-a$INSPECTION_LOG
echo"统计结果:"|tee-a$INSPECTION_LOG
grep-c"\[PASS\]"$INSPECTION_LOG|xargsecho"通过项:"|tee-a$INSPECTION_LOG
grep-c"\[FAIL\]"$INSPECTION_LOG|xargsecho"失败项:"|tee-a$INSPECTION_LOG
grep-c"\[WARN\]"$INSPECTION_LOG|xargsecho"警告项:"|tee-a$INSPECTION_LOG

高风险项重点核查清单

检查项验证命令不合规判定整改建议
存在空口令用户logins -p有输出passwd username 设置密码
密码策略未启用cat /etc/default/securityMIN_PASSWORD_LENGTH未设置或<8设置MIN_PASSWORD_LENGTH=8
未启用账户锁定grep MAX_FAILED_LOGINS /etc/default/security未设置或>5设置MAX_FAILED_LOGINS=5
使用弱加密算法grep CRYPT_DEFAULT /etc/default/security非6(SHA-512)设置CRYPT_DEFAULT=6
SSH允许root登录grep PermitRootLogin /opt/ssh/etc/sshd_config为yes设置为no
IP转发未禁用kctune ip_forwarding返回1kctune ip_forwarding=0
AUDIT审计未启用auditstat非auditing is ONaudsys -n 启用审计
无审计日志目录ls /var/adm/audit不存在创建目录并配置审计
SUID文件过多find / -perm -4000 | wc -l>50个审查并移除不必要SUID
Ignite-UX未安装swlist Ignite-UX未找到安装系统备份工具
关键补丁缺失swlist -a state -l patch存在corrupted/obsolete重新安装或更新补丁
RBAC未启用ls /etc/rbac/user_attr不存在启用RBAC进行权限分离

HP-UX 11i v2 vs v3 差异说明

功能项HP-UX 11i v2 (11.23)HP-UX 11i v3 (11.31)
硬件支持PA-RISC/ItaniumPA-RISC/Itanium(最后PA版本)
内核特性基础增强(包括容器/分区)
RBAC基础增强(Fine-Grained Privileges)
审计AUDITAUDIT增强
安全补丁有限支持持续支持(需合同)
等保适配需大量手动加固预置安全模板
虚拟化vPar/nParvPar/nPar/Integrity VM/Containers
包管理swinstall/swlist相同,但增强依赖检查

与Solaris/AIX/Linux对比

对比项HP-UX 11i v3Oracle Solaris 11IBM AIX 7.2RHEL 8
内核HP-UXSunOS 5.11AIX 7.2Linux 4.18
硬件PA-RISC/ItaniumSPARC/x86-64POWERx86-64/ARM
包管理swinstallIPSinstallpRPM/DNF
服务管理init/SAM/SMHSMFSRC/systemdsystemd
文件系统JFS/VxFSZFSJFS2XFS/ext4
RBAC完整完整完整sudo/PolicyKit
审计AUDITBSMauditauditd
高可用ServiceguardCluster SuitePowerHAPacemaker
行业应用金融、电信、制造电信、金融金融、电力全行业
等保工具需定制需定制有安全基线有加固脚本

常用命令速查

# 系统信息
uname-a# 系统版本
model                       # 硬件型号
getconf MACHINE_MODEL       # 机器型号
getconf KERNEL_BITS         # 内核位数
hostname# 主机名

# 用户管理
useradd-m username         # 添加用户
passwd username             # 修改密码
usermod-G group username   # 修改组
logins -p# 检查空口令
logins -d# 检查过期密码
pwck                        # 检查密码文件
grpck                       # 检查组文件

# 权限管理
chown user:file             # 修改属主
chmod644file# 修改权限
getacl file# 查看ACL
setacl file# 设置ACL
lspriv                      # 查看特权
getprivgrp                  # 查看特权组

# 审计管理
auditstat                   # 审计状态
audsys -s# 查看状态
audsys -n# 启用审计
audsys -f# 禁用审计
audcat                      # 读取审计日志
audpr                       # 格式化审计记录
audusr -v# 查看用户掩码

# 软件包管理
swlist                      # 列出软件包
swlist -l product           # 列出产品
swlist -l patch             # 列出补丁
swinstall                   # 安装软件
swremove                    # 移除软件
swverify                    # 验证软件

# 存储管理
vgdisplay                   # 显示卷组
lvdisplay                   # 显示逻辑卷
pvdisplay                   # 显示物理卷
bdf                         # 磁盘使用(替代df)
mount# 挂载文件系统
fsck# 文件系统检查

# 网络管理
ifconfig-a# 接口配置
lanscan                     # 扫描LAN接口
netstat-rn# 路由表
netstat-an# 网络状态
ping# 测试连通
nslookup# DNS查询

# 集群管理(Serviceguard)
cmviewcl -v# 查看集群
cmviewcl -f line            # 简要格式
cmviewnode -v# 查看节点
cmviewpkg -v# 查看包
cmruncl                     # 启动集群
cmhaltcl                    # 停止集群

# 备份管理
fbackup -f device -i path   # 文件备份
make_tape_recovery          # 制作磁带恢复
make_net_recovery           # 制作网络恢复
copyutil                    # 复制工具

参考标准:GB/T 22239-2019、GB/T 28448-2019、HP-UX Security Configuration Guide、CIS HP-UX Benchmarks

适用版本:HP-UX 11i v2 (11.23)、HP-UX 11i v3 (11.31)

硬件平台:PA-RISC(最后支持版本)、Itanium (IA-64)

执行权限:多数命令需root或等效特权,部分查看命令普通用户可执行

声明:来自汪汪虚拟空间,仅代表创作者观点。链接:https://eyangzhen.com/7454.html

汪汪虚拟空间的头像汪汪虚拟空间

相关推荐

添加微信
添加微信
Ai学习群
返回顶部