我们有一个基于OpenVMS的传统COBOL应用程序 - 我们对配置没有一个清晰的认识。在这种情况下,我所说的“配置”是:
上面的1是一个未知的东西似乎有些奇怪,但随着时间的推移,可执行文件已经“来去匆匆”(许多仍然被使用)。由于知道不再需要哪些可执行文件已经及时丢失,因此不知道哪些可执行文件构成应用程序 today 的知识。实际上,团队忠实地编译所有源代码文件并部署生成的可执行文件,尽管显然有不再使用的程序。
不言而喻,没有正式的配置管理过程,并且源代码未保存在版本控制系统中。由于应用程序在OpenVMS上运行,因此相应的基于Files-11的文件系统会保留较旧版本的文件(包括源文件),这一直是不将应用程序源放入版本控制系统的借口(尽管有原因)使用VCS的范围远远超出以前版本的记录。)
当然,有多种方法可以确定配置,但我想从第一个“小步骤”开始,即:确定构成应用程序的可执行文件集。此时我应该提到应用程序的可执行组件不仅限于OpenVMS映像,还包括DCL命令文件。我想:
如果我们在长时间(例如两个月)内对我们的生产系统进行此日志记录,我们可以很好地了解该应用程序包含的内容。与用户咨询一起,我们将能够确认是否需要未被调用的可执行文件。
我想我已经知道如何做以上1,虽然我不确定具体细节,即使用SET/AUDIT
。第二部分,在这个阶段,我不知道该怎么做。
因此,这项工作的主要标准是,为了获得上述信息,现有系统的影响很小。由于配置周围的问号(以及完全缺乏自动化测试),改变任何事情都是一项令人头疼的事情。
使用SET/AUDIT
等操作系统级服务可以让人们在不需要更改源代码和/或重新编译任何内容的情况下了解正在运行的内容。所以,我的问题是多方合作:
SET/AUDIT
仅监控特定目录中的图像?.COM
源文件的情况下记录命令文件调用?答案 0 :(得分:5)
Ad 2,3。
我会尝试使用ACL进行安全审核。来自特权帐户,类似......
确保已启用ACL审核:
$ show audit
应该显示
System security audits currently enabled for:
...
ACL
...
如果没有,请使用
启用它$ set audit/audit/enable=acl
然后你可能想要在完成
后禁用它$ set audit/audit/disable=acl
在所有需要的文件上设置审核ACL:
$ set sec/acl=(audit=security,access=success+execute) [.app]*.com
$ set sec/acl=(audit=security,access=success+execute) [.app]*.exe
并且您可能希望在完成
后删除ACL$ set security/acl=(audit=security,access=success+execute)/delete [.app]*.com
$ set security/acl=(audit=security,access=success+execute)/delete [.app]*.exe
您可以检查设置的ACL:
$ show security [.app]*.*
运行你的应用程序......
从审核文件中获取结果
$ analyze/audit [vms$common.sysmgr]security.audit$journal/sel=access=execute/full/since=17:00/out=app.log
检查报告中的文件:
$ pipe type app.log |search sys$pipe "File name", ,"Access requested"
File name: _EMUVAX$DUA0:[USER.APP]NOW.COM;1
Access requested: READ,EXECUTE
Auditable event: Object access
File name: _EMUVAX$DUA0:[USER.APP]ECHO.EXE;1
Access requested: READ,EXECUTE
$
对不起,我对1.和4没有答案。
答案 1 :(得分:0)
了解OpenVMS版本(例如6.2,7.3-2,8.4 ......)和架构(Vax,Alpha,Itanium)将会有所帮助。
最近的OpenVMS版本具有出色的sda扩展
http://h71000.www7.hp.com/doc/84final/6549/6549pro_ext1.html
或
http://de.openvms.org/Spring2009/05-SDA_EXTENSIONS.pdf
例如LNM检查进程使用的逻辑名称,PCS用于进程的PC采样,FLT用于检查应用程序的错误行为,RMS用于RMS数据结构,PERF仅用于Itanium性能跟踪,PROCIO用于读取并为进程打开的所有文件写入
发布
dir sys$share:*sda.exe
以便我们知道您可以使用哪些Sda扩展程序。
您可以随时查看pid为204002B4的进程与
有关 $ ana/sys
set proc/id=204020b4
sh process /channel
exam @pc
并在流程继续进行时重复。