| Previous | Contents | Index |
This appendix tells how to report problems to LJK Software.
There is opportunity for lengthy debate over what is a "bug", what is a "feature", when a "bug report" is really an "enhancement request" and similar issues.
Rather than semantic nit-picking, however, the purpose of this appendix is to discuss communications between you, the user of LJK/Security, and LJK Software, the vendor and maintainer.
Even in cases where there is no problem with the software, user reports of difficulties give LJK Software information as to where documentation or training can be improved, so we appreciate your input.
At the same time, both parties want to make these interactions as productive as possible, and it is to that purpose that these suggestions are directed.
G.1 Isolating the Problem
As with any computer problem, the first step is to narrow down the
exact nature of the problem. Does a particular command fail only with
certain menu choices, or only on certain policy files? Does a
particular assessment have problems only on certain nodes? How do those
nodes differ from nodes on which the assessment succeeds?
Such questions will involve your participation, either before or after
you contact LJK Software customer support.
G.2 Log Files
Area LJK$SECURITY_ACTION_AREA: contains log files from network and
detached processes used by LJK/Security. Examining these logs may be
helpful in troubleshooting. Reading them requires full system
management privileges.
G.3 Getting an Initial Opinion
In many cases software support people can offer immediate answers
because they deal with a product very regularly. In most cases you will
want to contact LJK Software customer support before
you go to the trouble of transmitting data files, since it may be
a problem previously reported from another site.
G.4 Collecting information for LJK Software
In the case of some thornier problems the information you are able to provide via terminal or voice telephone is not sufficient to resolve the problem, and you may be asked to send files that illustrate the problem such as:
$ set host 0/log=filespec |
This appendix gives information not of general interest, such as discussion of internal operation of LJK/Security.
H.1 LJK/Security Version Compatibility
LJK/Security data file version compatibility should be considered in
three areas:
In performing an assessment on a tributary node LJK/Security could potentially fill the system disk if the policy specified for that node is considerably more strict than the actual security state of the node.
In a worst case situation, the system administrator who neglected to use disk quotas on the tributary node system disk may also have VMS audit server settings which cause the system to pause user operations or crash when no system disk space is available for the audit server (see LJK/Security Audit facility tests FINCRASH, FAILWAIT and FAILCRASH).
The following measures are taken by LJK/Security to avoid such problems.
H.2.1 With disk quotas
When disk quotas are enforced on the tributary node
system disk (as they should be for good security), LJK/Security will
run out of disk quota if excessive violations are
encountered. At that point, LJK/Security will attempt to write one
more record before terminating testing of the current
facility. That record will contain an indication of
the fact that disk space was exhausted and not all violations were
reported. That extra record can only be written if there is some
extension disk quota available for username LJK$SECURITY, so
LJK Software recommends that username LJK$SECURITY be
given an extension disk quota equal to 40 times the number of
LJK/Security facilities (since 40 is the file extension increment used
for intermediate result files on tributary nodes.
If no extension disk quota is available, LJK/Security in most cases will terminate on the tributary node, leaving the master node without specific information regarding the nature of the failure. (It is difficult to save status for transmission back to the master node if there is no space to save it.)
H.2.2 Without disk quotas
Regardless of disk quota limitations, LJK/Security will not use more
than 50% of the tributary node disk space which was
present at the start of the assessment. This prevents LJK/Security
from being the sole cause of a disk filling, but there is still the
possibility that a disk without quotas might fill due to the combined
action of LJK/Security and some other program. (Of course, the same
can be said for a disk where quotas are in use but excessively high
quotas are given.)
In general, our security judgement is that if your
policies are close to filling the disk with
violations, a more lenient policy would be in order
until the more critical security problems are eliminated.
H.3 Changing Template Terminal UCB Characteristics
If an ordinary VMS terminal has an incorrect setting of the dialup characteristic, it can be corrected with a command such as:
$ SET TERMINAL TXC7:/DIALUP/PERMANENT |
In the case of LAT terminals or TCP/IP Telnet terminals from various vendors, the VMS terminal devices are created on the fly, taking their characteristics from a "template UCB".
The operation of a template UCB is that when an attempt is made by a program to connect to it, the connection instead is made to a cloned UCB created at the time. Thus it is not possible for programs to actually connect to the template UCB in order to change the characteristics, such as would be done by the SET TERMINAL command above!
One method which generally works to change the characteristics of template UCBs is to set the relevant VMS system parameters (TTY_DEFCHAR or TTY_DEFCHAR2) before the template UCB is created (during system startup). At least through VMS V8.3 these system parameters are unfortunately not dynamic parameters, and require rebooting VMS for changes to take effect.
Thus all terminal template UCBs can readily be set one way or the other, but treating some template UCBs different from others will be difficult so long as the VMS system parameters involved are not dynamic.
Individual products which supply terminal drivers can provide their own
mechanism for setting such characteristics, and Release 3.1 of Process
Software's Multinet TCP/IP product is reported to add such
a capability for the dialup/local characteristics setting.
H.4 Autologin file record length
VMS symbol definition files such as LIB.REQ define the length of a record for the file SYSALF.DAT as being 128 bytes. The DCL command procedure ALFMAINT.COM provided with VMS through VMS V5.4, however writes those records as being 126 bytes long (even though it defines the record length for the file as being 128 bytes).
LJK/Security will accept autologin file records with lengths of 125
bytes or more. If a shorter autologin file record should be written in
the future, an error will be returned to the master
node.
H.5 Avoiding PRODUCT INSTALL
LJK Software supports use of VMSINSTAL.COM rather than PRODUCT INSTALL because of several issues in various versions of VMS:
The output of the REPORT command takes several lines for each violation
found, but LJK/Security has been designed so that when that output is
directed to an RMS file each violation is in a single RMS record. This
means the output file is susceptible to the VMS command SEARCH (for
example) searching on the test name and returning the entire violation
record.
H.7 Renaming and Copying Files
The policy and assessment files in LJK$SECURITY_POLICY_AREA: are independent data, and can be renamed or copied using normal VMS utilities. (Of course if a policy no longer exists, any assessment depending on it will not function properly.)
Such renaming is an abnormal action and requires VMS privileges for
system management.
H.8 DCL Symbol Processing
Normally DCL symbol substitution is available on commands issued at the DCL prompt but not for commands issued within a program such as in LJK/Security Subsystem mode. Within LJK/Security Subsystem mode, however, a special case exception is made for
LJK/SECURITY SHOW POLICY/COMMAND_PROCEDURE |
Upgrading LJK/Security provides a new LJK$MESSAGES file which may contain messages not present in an earlier version of the file. If those messages are used in alarms, the alarm text may show the "Event information:" as a hexadecimal number (e.g. "Message number 0239F7BC") rather than the new text (e.g. "LJK/Security Assessment ran for certain facilities").
This behavior can be corrected by restarting the VMS Audit Server,
which causes it to start using the new version of the file in future
alarm messages.
H.10 Analyzing Network Problems
H.10.1 SS$_LINKEXIT
Sometimes a status command like:
$ LJK/SECURITY REPORT STRICT_ASSESSMENT/STATUS |
after < none >
interval < none >
FARNOD
17-SEP-2004 00:38 due POLICY_MOST_STRICT
%SYSTEM-F-LINKEXIT, network partner exited
|
LJK$SECURITY_ACTION_AREA:NETSERVER.LOG |
H.10.1.1 No such file as NETSERVER.LOG
If there is no such file, it might be helpful to test a different
DECnet connection from the master node to the
tributary node with a command like:
$ DIRECTORY FARNOD"username password"::LOGIN.COM; |
If one of the LJK$SECURITY_ACTION_AREA:NETSERVER.LOG files shows a connect request received, followed by an improperly handled condition with a signal argument name of 554 and the message:
%SYSTEM-F-STKOVF, stack overflow |
One method of increasing quotas for those DECnet processes is to modify
minimum process quotas through PQL_M* system parameters
like PQL_MPGFLQUOTA. That will increase quotas for any processes
at that lower limit, but extra quota for processes that do not use it
should not affect system operations (unless there are processes on the
system which you want to fail for lack of quota).
H.11 Analyzing Installation and Licensing Problems
H.11.1 LJK$_NOMASTER
When running the first assessments after installation with a command
like:
$ LJK/SECURITY RUN STRICT_ASSESSMENT |
%LJK-E-NOMASTER, No master LJK/Security process on this node with current license |
To resolve this situation, someone with appropriate access to LJK/Security should issue the command:
LJK/Security SHUTDOWN |
@SYS$STARTUP:LJK$SECURITY_STARTUP |
| Previous | Next | Contents | Index |