Admin Guide 40
Admin Guide 40
Admin Guide 40
for UNIX
Administration Guide
Version 4.0
Connect:Direct for UNIX Administration Guide
Version 4.0
Second Edition
(c) Copyright 1999-2009 Sterling Commerce, Inc. All rights reserved. Additional copyright information is located in the release notes.
STERLING COMMERCE SOFTWARE
***TRADE SECRET NOTICE***
THE CONNECT:DIRECT SOFTWARE (STERLING COMMERCE SOFTWARE) IS THE CONFIDENTIAL AND TRADE SECRET
PROPERTY OF STERLING COMMERCE, INC., ITS AFFILIATED COMPANIES OR ITS OR THEIR LICENSORS, AND IS PROVIDED
UNDER THE TERMS OF A LICENSE AGREEMENT. NO DUPLICATION OR DISCLOSURE WITHOUT PRIOR WRITTEN PERMISSION.
RESTRICTED RIGHTS.
This documentation, the Sterling Commerce Software it describes, and the information and know-how they contain constitute the proprietary,
confidential and valuable trade secret information of Sterling Commerce, Inc., its affiliated companies or its or their licensors, and may not be used
for any unauthorized purpose, or disclosed to others without the prior written permission of the applicable Sterling Commerce entity. This
documentation and the Sterling Commerce Software that it describes have been provided pursuant to a license agreement that contains prohibitions
against and/or restrictions on their copying, modification and use. Duplication, in whole or in part, if and when permitted, shall bear this notice and
the Sterling Commerce, Inc. copyright notice. As and when provided to any governmental entity, government contractor or subcontractor subject
to the FARs, this documentation is provided with RESTRICTED RIGHTS under Title 48 52.227-19. Further, as and when provided to any
governmental entity, government contractor or subcontractor subject to DFARs, this documentation and the Sterling Commerce Software it
describes are provided pursuant to the customary Sterling Commerce license, as described in Title 48 CFR 227-7202 with respect to commercial
software and commercial software documentation.
These terms of use shall be governed by the laws of the State of Ohio, USA, without regard to its conflict of laws provisions. If you are accessing
the Sterling Commerce Software under an executed agreement, then nothing in these terms and conditions supersedes or modifies the executed
agreement.
Where any of the Sterling Commerce Software or Third Party Software is used, duplicated or disclosed by or to the United States government or a
government contractor or subcontractor, it is provided with RESTRICTED RIGHTS as defined in Title 48 CFR 52.227-19 and is subject to the
following: Title 48 CFR 2.101, 52.227-19, 227.7201 through 227.7202-4, FAR 52.227-14, and FAR 52.227-19(c)(1-2) and (6/87), and where
applicable, the customary Sterling Commerce license, as described in Title 48 CFR 227-7202 with respect to commercial software and commercial
software documentation including DFAR 252.227-7013, DFAR 252,227-7014, DFAR 252.227-7015 and DFAR 252.227-7018, all as applicable.
The Sterling Commerce Software and the related documentation are licensed either AS IS or with a limited warranty, as described in the Sterling
Commerce license agreement. Other than any limited warranties provided, NO OTHER WARRANTY IS EXPRESSED AND NONE SHALL BE
IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR USE OR FOR A PARTICULAR PURPOSE.
The applicable Sterling Commerce entity reserves the right to revise this publication from time to time and to make changes in the content hereof
without the obligation to notify any person or entity of such revisions or changes.
Connect:Direct is a registered trademark of Sterling Commerce. Connect:Enterprise is a registered trademark of Sterling Commerce, U.S. Patent
Number 5,734,820. All Third Party Software names are trademarks or registered trademarks of their respective companies. All other brand or
product names are trademarks or registered trademarks of their respective companies.
CDUNXAG902
Contents
Server Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Process Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Command Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Session Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
File Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Connect:Direct Secure+ Option for UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
User Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Applications Programming Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Command Line Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Sterling Control Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Connect:Direct Browser User Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Connect:Direct Concepts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Local and Remote Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Transmission Control Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Network Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
User Authorization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Process Restart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Archive Statistics Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Sample Processes, Shell Scripts, and API Programs. . . . . . . . . . . . . . . . . . . . . 17
Connect:Direct for UNIX Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Connect:Direct for UNIX Configuration Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Connect:Direct for UNIX Directory Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Connect:Direct for UNIX Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
About This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Task Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
IP Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
IPv4 Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
IPv6 Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Host Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Port Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Multiple Addresses, Host Names, and Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Using Masks for IP Address Ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Glossary 93
Index 99
Connect:Direct links technologies and moves all types of information between networked systems
and computers. It manages high-performance transfers by providing such features as automation,
reliability, efficient use of resources, application integration, and ease of use. Connect:Direct offers
choices in communications protocols, hardware platforms, and operating systems. It provides the
flexibility to move information among mainframe systems, midrange systems, desktop systems,
and LAN-based workstations.
Connect:Direct is based on client-server architecture. The Connect:Direct server components
interact with the user interfaces (API, CLI, Connect:Direct Browser User Interface, and Sterling
Control Center) to enable you to submit, execute, and monitor Connect:Direct statements and
commands.
Server Components
Connect:Direct has the following server components:
Process Manager
The Process Manager (PMGR) is the daemon that initializes the Connect:Direct server
environment. The PMGR provides the following functions:
Initializes Connect:Direct
Accepts connection requests from Connect:Direct client APIs and remote nodes
Creates Command Manager and Session Manager child Processes to communicate with APIs
and remote nodes
Accepts requests from Command Managers and Session Managers when centralized
Connect:Direct functions are required
Stops Connect:Direct
Note: Any application, including End User Applications (EUA), can run on any computer as long as it can
connect to the PMGR.
Command Manager
A Command Manager (CMGR) is created for every API connection that is successfully established.
The number of Command Managers that a PMGR can create is system-dependent and limited by
the number of file descriptors available for each UNIX Process. The number of file descriptors set
up by the UNIX operating system may affect Connect:Direct operation. You must define enough
file descriptors to handle the number of concurrent Connect:Direct sessions allowed, which can be
as many as 999.
The CMGR provides the following functions:
Executes commands sent by the API and sends the results back to the API
Carries out the Connect:Direct authentication procedure, in conjunction with the API, to
determine access to Connect:Direct
Interacts with the PMGR when executing commands
Session Manager
The Session Manager (SMGR) is created and invoked by the PMGR when resources are available
and either a Process is ready to run or a remote node requests a connection with a local node. The
SMGR provides the following functions:
Performs the necessary Connect:Direct work
Acts as a primary node (PNODE) and initiates Process execution
Acts as a secondary node (SNODE) to participate in a Process initiated by the PNODE
When an SMGR is created to execute a Process submitted to a node, it creates the connection to the
remote node. If the SMGR is started by the PMGR to execute local Processes, the SMGR runs each
Process on this session until all Processes are completed.
If an SMGR is created because a remote node initiated a connection, the SMGR completes the
connection. If the SMGR is started by the PMGR to execute remote Processes, the SMGR executes
remote Process steps supplied by the remote SMGR until the remote SMGR completes all of its
Processes.
The SMGR depends on the PMGR for Transmission Control Queue (TCQ) services and other
centralized services. Refer to the Transmission Control Queue on page 13 for an overview of the
TCQ.
File Agent
Connect:Direct File Agent is a feature of Connect:Direct, which provides unattended file
management. File Agent monitors watched directories to detect new files. When File Agent detects
a new file, it either submits a default Process or evaluates the file using rules to override the default
Process and to determine which Process to submit. You create rules to submit different Processes
based on the following properties:
Specific or partial file names
File size
System events
You create the Processes used by File Agent on Connect:Direct; you cannot create them using File
Agent.
To achieve optimum performance, configure File Agent to communicate with the Connect:Direct
node where it is installed. File Agent can be installed on UNIX, Windows, and z/OS operating
systems. For information to help you plan how to implement File Agent, see the Managing Files
with Connect:Direct File Agent chapter in your Connect:Direct administration guide or getting
started guide. The Connect:Direct File Agent Help contains instructions for configuring File Agent.
User Interfaces
Connect:Direct has the following user interfaces, which enable you to create, submit, and monitor
Processes.
Receive notification of data delivery events that occur or do not occur as scheduled
Define rules that, based on processing criteria, can generate an alert, send an e-mail
notification, generate a Simple Network Management Protocol (SNMP) trap to an
Enterprise Management System (EMS), run a system command, or issue a server
command
Monitor for alerts, such as a server failure or a Process not starting on time
Create service level criteria (SLCs) that define processing schedules, monitor Processes,
files within Processes, and file transfers for compliance with these schedules, and generate
alerts when the schedules are not met
Analyze key operational metrics
Create customized reports to document and analyze processing activity based on criteria you
define
Validate user authenticity for console-to-engine connections using one or more of four
authentication methods, inclusing password validation, host name identification, Windows
doman, and TCP/IP address (or three methods in the case of the Web console, which does not
support domain authentication)
Identify additional Connect:Direct servers that may need to be monitored based on
communications with a currently monitored server
Sterling Control Center enhances operational productivity and improves the quality of service by:
Ensuring that critical processing windows are met
Reducing impact on downstream processing by verifying that expected processing occurs
Providing proactive notification for at-risk business processes
Consolidating information for throughput analysis, capacity planning, post-processing
operational or security audits, and workload analysis
Reducing the risk of errors associated with manual system administration, including
eliminating individual server logon to view activity, and the need to separately configure each
server for error and exception notifications
Sterling Control Center is available for purchase as a separate product. Contact your Sterling
Commerce representative to learn more about Sterling Control Center.
server and can be accessed by administrators and users through a URL. The following example
shows the page used to graphically build a Process:
To learn more about Connect:Direct Browser, see the documentation on the Connect:Direct
Browser CD-ROM or available online from the Sterling Commerce Documentation Library.
Connect:Direct Concepts
This section introduces concepts and definitions to help you understand system operations.
Processes
The Connect:Direct Process language provides instructions for transferring files, running programs,
submitting jobs on the adjacent node, and altering the sequence of Process step execution. You can
include one or more steps in a Process. A Process consists of a Process definition statement (Process
statement) and one or more additional statements. Parameters further qualify Process instructions.
conditionals Alters the sequence of Process execution based on the completion code of
previous steps with the if, then, else, eif (end if), goto, and exit
statements.
run job Enables you to specify UNIX commands in a Process. The Process does
not wait until the job has finished running before executing the next step in
the Process.
run task Enables you to specify UNIX commands in a Process. The Process waits
until the job has finished running before executing the next step in the
Process.
submit Starts another Connect:Direct Process to either the local or remote node
during execution of a Process.
Connect:Direct runs Processes based on their priority and when the Process is placed in the
Execution queue. Processes will run first based on their submitted date, and higher priority
Processes are selected for execution ahead of Processes with a lower priority. You can access the
queues and manage the Processes through Connect:Direct commands.
Refer to the Connect:Direct for UNIX Users Guide for more information on scheduling Processes
in the TCQ.
Commands
You use Connect:Direct commands to submit Processes to the TCQ. You can also use
Connect:Direct commands to perform the following tasks:
Manage Processes in the queue
Monitor and trace Process execution
Produce reports on Process activities
Stop Connect:Direct operation
The following table lists the commands and their functions:
Command Function
change process Changes the status and modifies specific characteristics of a nonexecuting
Process in the TCQ.
For example, the following command submits the Process called onestep to the TCQ with a hold
status of yes:
Network Map
During the transfer of data, the Connect:Direct server where the Process is submitted is the primary
node and the secondary node is the remote node (partner). Connect:Direct identifies the remote
nodes that the local node is able to communicate with through the use Connect:Direct network map
(or netmap).
The network map includes the names of all the remote nodes that the Connect:Direct local node can
communicate with, the paths to contact those remote nodes, and characteristics of the sessions for
communication.
The remote Connect:Direct nodes also have network maps for their remote nodes. The following
sample displays the corresponding network map entries of UNIX-Dallas, z/OS-Miami, and
UNIX-Houston:
Remote Nodes:
z/OS-Miami
UNIX-Houston
User Authorization
Connect:Direct can authorize local and remote users to perform certain Connect:Direct tasks. In
order to use Connect:Direct, each user must have a record defined in the user authorization file,
called userfile.cfg. Each local user must have a record in the user authorization file, and remote
users may be mapped to a local user ID in a proxy relationship.
To provide a method of preventing an ordinary user from gaining root access through
Connect:Direct for UNIX, a second access file called the Strong Access Control (SACL) file is
created when you install Connect:Direct for UNIX and is named sysacl.cfg. The root:deny.access
parameter, which is specified in the sysacl.cfg file, allows, denies, or limits root access to
Connect:Direct for UNIX. If the SACL file is deleted or corrupted, access to Connect:Direct is
denied to all users.
For more information about specifying user authorizations in the userfile.cfg and the sysacl.cfg
files, see Maintaining Access Information Files in the Connect:Direct for UNIX Administration
Guide.
Process Restart
Several facilities are provided for Process recovery after a system malfunction. The purpose of
Process recovery is to resume execution as quickly as possible and to minimize redundant data
transmission after a system failure. The following Connect:Direct facilities are available to enable
Process recovery:
Process step restartAs a Process runs, the steps are recorded in the TCQ. If a Process is
interrupted for any reason, the Process is held in the TCQ. When you release the Process to
continue running, the Process automatically begins at the step where it halted.
Automatic session retryTwo sets of connection retry parameters are defined in the remote
node information record of the network map file: short-term and long-term. If you do not
specify a value for these parameters in the remote node information record, default values are
used from the local.node entry of the network map file. The short-term parameters allow
immediate retry attempts. Long-term parameters are used after all short-term retries are
attempted. Long-term attempts assume that the connection problem cannot be fixed quickly
and retry attempts occur after a longer time period, thus saving the overhead of connection
retry attempts.
Checkpoint restartThis feature is available with the copy statement.
Checkpoint restart can be explicitly configured within a copy step through the ckpt parameter.
Refer to the Connect:Direct Processes Web site at
http://www.sterlingcommerce.com/documentation/processes/processhome.html.
If it is not configured in the copy step, it can be configured in the Initparms through the
ckpt.interval parameter. (See Maintaining the Initialization Parameters File in the
Connect:Direct for UNIX Administration Guide for more information on this parameter.)
Run Task restartIf a Process is interrupted when a run task on an SNODE step is executing,
Connect:Direct attempts to synchronize the previous run task step on the SNODE with the
current run task step. Synchronization occurs in one of the following ways:
If the SNODE is executing the task when the Process is restarted, it waits for the task to
complete, and then responds to the PNODE with the task completion status. Processing
continues.
If the SNODE task completes before the Process is restarted, it saves the task results.
When the Process is restarted, the SNODE reports the results, and processing continues.
If synchronization fails, Connect:Direct reads the restart parameter in the run task step or the
initialization parameters file to determine whether to perform the run task step again. The
restart parameter on the run task step overrides the setting in the initialization parameter.
For example, if the SNODE loses the run task step results due to a Connect:Direct cold restart,
Connect:Direct checks the value defined in the restart parameter to determine whether to
perform the run task again.
Note: Run task restart works differently when Connect:Direct for UNIX runs behind a connection
load balancer. For more information on the considerations you need to know when running
Connect:Direct for UNIX in a load balancing environment, see the Connect:Direct for UNIX
for UNIX Release Notes, Connect:Direct for UNIX for UNIX Administration Guide, and the
Connect:Direct for UNIX Getting Started Guide.
Interruption of Process activity when the SNODE is a Connect:Direct for UNIX nodeWhen
the SNODE is a Connect:Direct for UNIX node and the PNODE interrupts Process activity by
issuing a command to suspend Process activity, deleting an executing Process, or when a link
fails or an I/O error occurs during a transfer, the Process is placed in the Wait queue in WS
status.
If Process activity does not continue, you must manually delete the Process from the TCQ.
Refer to the Connect:Direct for UNIX Users Guide for command syntax and parameter
descriptions for the delete process command.
Note: You cannot issue a change process command from the SNODE to continue Process activity;
the Process can only be restarted by the PNODE, which is always in control of the session.
After files are restored, the statistics records can be viewed using the select statistics command.
The following table displays the file names of sample Processes. Modify the Processes as required:
cpunx.cd copy
sbunx.cd submit
The following table displays the file names of sample shell scripts. Modify the shell scripts as
required:
send.sh send
recv.sh receive
apicheck.C Same as apicheck.c, except that it is compiled with one of the C++
compilers listed in the Connect:Direct for UNIX Users Guide.
exit_skeleton.C Same as exit_skeleton_c, except that it is compiled with one of the C++
compilers listed in the Connect:Direct for UNIX Users Guide.
exit_sample.c This is the same program as the skeleton user exit program, except that
the security exit is demonstrated with code that approximates
PassTicket functionality.
sdksample.C This program exercises various commands using the SDK interface to
Connect:Direct for UNIX.
Initialization parameters file Provides information to the server to use at start up. During the
installation, you identify the settings necessary for the initialization
parameters file.
User authorization information Contains the local user information and remote user information record
file types. You customize this file during installation to map remote user IDs
to local user IDs and create remote user information records in the user
authorization information file.
Strong access control file Improves the security of Connect:Direct for UNIX and allows, denies, or
limits root access control. This file is created when you install
Connect:Direct for UNIX. If the file is deleted or corrupted, access to
Connect:Direct is denied to all users.
Network map file Describes the local node and other Connect:Direct nodes in the network.
You can define a remote node record for each node that Connect:Direct
for UNIX communicates with.
Server authentication key file Verifies client API connection requests. Only verified clients are granted
a connection.
Client configuration file Identifies the port and host name used by a client to connect to
Connect:Direct.
Client authentication key file Identifies Connect:Direct servers that a Connect:Direct client connects
to. You can have multiple entries for multiple servers.
Note: The secure+ directory is available only when Secure+ Option is purchased and installed.
d_dir/
stats
traces
src/
lib/
README cfg/
bin/ apicheck.c security/ secure+/ include/ xlate/ man1/ SACL/
example
files
cliapi/ certificates/
ndmapi.a ndmapi.h
libcd2g.so (not HP) user_exit.h ndmmsg.1
libcd2g.sl (HP only) trusted.txt user_exit2.h ndmxlt.1
libcdsna.so (not HP) cdunxsdk.h ndmpmgr.1
libcdsna.sl (HP only) export/ cdpmgr.1
libcdsnpsna.so ndmapi.cfg
libcdsp.so
libcdspsrvr.so import/ sysacl.cfg
libcdspsssl.so cd_node/
log/ default_recv.xlt
default_send.xlt
ndmcmgr locks/
cdpmgr cdcust
ndmpmgr ttlflst1.0
ndmsmgr nodes/ svcflst1.0
ndmcli cliflst1.0
direct cdver
ndmproc keys.client cdsnacfg (AIX LU6.2 only)
ndmproc.awk keys.server snaver.sh (AIX LU6.2 only)
ndmstat tcq_convert
ndmstat.awk template (Brixton SNA only)
ndmmsg diskfree
ndmxlt diskfree.so
ndmauths cliapi
initparm.cfg hostid.sh
ndmauthc snmpflst1.0
apnotify netmap.cfg
userfile.cfg cfg.convert
cdcustrpt spcust_sample1.sh
cdsacomp msgfile.cfg
msgfile.idx spcust_sample2.sh
cdstatm spcust_sample3.sh
cfgcheck license.key
ndmumgr
cdmsgutil
initcnvt
statarch.sh
statrestore.sh
sample.cd
ndmview
ndmview.awk
initcnvt
Install.bin
lcu.jar
lcu.sh
ohj-jewt.jar (Secure+ only)
runjar.jar (Secure+ only)
SecureOHelp.jar (Secure+ only)
SPAdmin.jar (Secure+ only)
spadmin.sh (Secure+ only)
SPCli.jar (Secure+ only)
CPCliMessages.properties (Secure+
only)
spcli.sh (Secure+ only)
Cipher.txt (Secure+ only)
help4.jar (Secure+ only)
Note: See the following figure to view the work directory for a node.
A d_dir/work/cd_node directory is created for each node. The following figure displays the work
directory for multiple nodes and illustrates the working files created for each node, such as TCQ
files:
d_dir/
work/
ndm/
Task Overview
The following table guides you to the information required to perform Connect:Direct for UNIX
tasks:
Task Reference
Using unattended file management for Chapter 2, Managing Files with Connect:Direct File
Connect:Direct Agent
Controlling system settings using initialization Chapter 3, Maintaining the Initialization Parameters
parameters File
Editing parameters that affect End User Chapter 4, Maintaining the Client Configuration File
Applications (EUA)
Specifying connectivity information for the local Chapter 5, Maintaining the Network Map File
node and the remote nodes in the network
Controlling access to Connect:Direct for UNIX Chapter 6, Maintaining Access Information Files
Enabling a test mode for production instances of Appendix C, Using Connect:Direct for UNIX in a Test
Connect:Direct for UNIX Mode
Configuration files define the operating environment for Connect:Direct. The following
configuration files are created during the customization procedure:
Initialization parameters file
Client configuration parameters file
Network map file
Two access files: userfile.cfg and sysacl.cfg
After the initial customization, you can modify these files, if necessary. This chapter provides you
with the information to modify the configuration files.
ndm.path:path=/ndm/users/c:
Record names and parameter names are not case sensitive. Parameter values are case sensitive.
Lines 7 through 23 illustrate a longer logical record. Line 7 contains the record name local.node
followed by an optional colon (:) and a backslash (\) character. All lines between 7 and 23 end with
a backslash (\) character. Line 23 does not contain a backslash (\) character, to indicate the end of
the record.
The following table displays a portion of the initialization parameters file to illustrate the format of
Connect:Direct configuration files:
13 .
. . . .
21 .
Configuration files allow duplicate but not identical records, in some cases. For example, you can
define more than one remote node information (rnode.listen) record in the initialization parameters
file.
$ d_dir/etc/cdcust
Initialization parameters determine various Connect:Direct settings that control system operation.
The initialization parameters file is created when you install Connect:Direct for UNIX and can be
updated as needed.
You can modify Connect:Direct initialization parameters file using any text editor. Before changing
a value in the file, first shut down the Connect:Direct server. After you change a value and save the
file, restart the server. Restarting the server validates the new values and generates an error message
if a value is invalid. All available parameters are described in this chapter.
If you use Connect:Direct Browser User Interface to update parameters in the Local Node
Connection Record, you do not have to stop and restart the server.
Note: You can also use the Connect:Direct Browser to perform some of the procedures in this chapter. To
learn more about the Connect:Direct Browser, see the documentation on the Connect:Direct
Browser CD-ROM or available online from the Sterling Commerce Documentation Library.
Global copy parametersThe copy.parms record defines default parameters used by the
Copy operation including checkpoint parameters, file size limitations, translation table
information, exception handling, CRC checking, file allocation retry parameters, and
compression options.
Global run task parametersThe runtask.parms record defines a parameter to define the
restart option.
Statistics file informationThe stats record includes parameters to define default statistics
file information including file size limitations, the type of information to write to the statistics
file, and how long to maintain statistics files before archiving them.
Server authentication informationThe authentication record parameters to authenticate the
server.
User exit parametersThe user.exits record defines the programs used during a user exit
procedure.
Firewall navigation informationThe firewall.parms record defines the ports or range of
ports to use for outbound sessions when a server operates behind a firewall.
The following sample initialization parameters file shows how some of these parameters are
specified:
# Miscellaneous Parameters
ndm.path:path=/sci/users/mscarbro/cd4000:\
:snode.work.path=/sci/users/mscarbro/cd4000/shared:
ndm.node:name=mws_joshua_4000:
ndm.pam:service=cdlogin:
ndm.quiesce:quiesce.resume=n
proc.prio:default=10:
asset.protection:keyfile=/sci/users/mscarbro/cd3800/ndm/cfg/mws_joshua_4000/license
.key:
restrict:cmd=y
# TCQ information
tcq:\
:max.age=8:
# Authenticator
authentication:\
:server.program=/sci/users/mscarbro/cd4000/ndm/bin/ndmauths:\
:server.keyfile=/sci/users/mscarbro/cd4000/ndm/security/keys.server:
# Secure+ parameters
secure+:\
:certificate.directory=/home/nis02/jlyon/certs: \
:s+cmd.enforce.secure.connection=n:
path The path to all Connect:Direct subdirectories and files. path specification
snode.work.path The path to the shared work area for SNODE work files. path specification
Note: Specify the same path for all nodes in a cluster.
name The name of the The maximum length is 16 bytes. If a node name is longer, the
node. name will be truncated.
default The default value of the Process priority. 115. The default value is 10.
15 is the highest priority.
keyfile The license management key file. name and location of the key
Updating the Remote User Information Record on page 67. The following parameter is available
for this record:
comm.transport The transport protocol for the remote node. tcp | lu62 | blklu62 | udt33
tcpFor TCP/IP connections
lu62For AIX SNA LU6.2
connections
blklu62For other LU6.2
connections
udt33For UDT connections
ckpt.interval The default number of bytes transmitted in a The maximum possible value
copy operation before a checkpoint is taken. is 1 terabyte (TB). The normal
Following is a list of the maximum number of value is 64KB.
digits for each byte interval:
noNo checkpointing
nnnnnnnnUp to an 8-digit decimal
nnnnnnnnKUp to an 8-digit decimal, where K
denotes 1024 bytes
nnnnnnnnMUp to an 7-digit decimal, where M
denotes 1048576 bytes
nnnnGUp to an 4-digit decimal, where G
denotes 1073741824 bytes
ulimit The action taken when the limit on a user output nIgnores the limit. n is the
file size is exceeded during a copy operation. default value.
yRecognizes the user file
size limit. If this limit is
exceeded during a copy
operation, the operation fails.
xlate.dir The name of the directory containing the Any valid directory.
translation tables. The default path is
d_dir/ndm/xlate.
xlate.send The default translation table used when sending Any valid directory.
data to a remote node. The default file name is
def_send.xlt.
xlate.recv The name of the default translation table used The default file name is
when copying data from a remote node. def_recv.xlt in the directory
defined in the xlate.dir
parameter.
ecz.windowsize The size of the compression window and history Valid values are 915. The
buffer. The larger the window, the greater the default is 13.
compression. However, increasing the window
uses more virtual memory.
retry.codes The codes to recognize as a file allocation retry Any valid error code
attempt. File allocation retry enables a Process
with a file allocation or open error on either the
local or remote node to run the Process again,
beginning at the copy step where the error
occurred. This feature supports the ability to
retry a Process that failed when a file is already
in use.
When a file allocation or open error occurs on
either the local or remote node, the PNODE
searches for the error or message ID in the
retry.codes and retry.msgids parameters. If the
error code or message ID is found, the Process
is retried.
Since error codes can vary from one operating
system to another and the same error code can
have different meanings, use message IDs to
identify retry conditions when communicating
between two different platforms.
You can perform retry attempts based on codes
only, IDs only, or a combination of the two.
When a retry condition is detected, the session
is terminated cleanly and the Process is placed
in the Timer queue.
retry.msgids Identifies the message IDs to use to support a Any of the valid file allocation
file allocation retry attempt. retry messages.
Since error codes can vary from one operating
system to another and the same error code can
have different meanings, use message IDs to
identify retry conditions when communicating
between two different platforms.
When a file allocation or open error occurs on
either the local or remote node, the PNODE
searches for the message ID in the retry.msgids
parameters. If the message ID is found, the
Process is retried.
You can perform retry attempts based on codes
only, message IDs only, or a combination of the
two.
When a retry condition is detected, the session
is terminated cleanly and the Process is placed
in the Timer queue.
snmp.agent.port The SNMP agent monitoring port number. This The default is 1365.
number must match the port number listed in the
SNMP agent initialization file.
max.age Specifies how old a statistics file must be before it is A 3-digit decimal number.
archived. Once a day, a shell script is executed that The default is 8 days.
identifies the statistics files that are as old as the 0no archiving.
max.age, runs the tar command and the compress
command to create a compressed archive, and then
deletes the statistics files that have been archived.
Running a Process generates multiple statistics records. To accommodate the large number of
statistics records generated, Connect:Direct closes the current statistics file and creates a new
statistics file at midnight every day. It can also close the current file before midnight if the file size
exceeds the value set for the file.size initialization parameter. The default file size is 1 megabyte.
Statistics files are stored in the d_dir/work/cd_node directory. Names of the statistics files are in the
format Syyyymmdd.ext, where yyyy indicates year, mm indicates month, and dd indicates day.
The extension (ext) begins as 001. The extension is incremented by one each time a new statistics
file is created in a single day.
Connect:Direct for UNIX provides a utility to archive and purge statistics files. You identify when
to archive a statistics file by setting the parameter, max.age. The max.age parameter defines how
old a statistics file must be before you want to archive the file. Once a day, the script called
statarch.sh is started. This script identifies the statistics files that are greater than or equal to the
max.age. It then runs the tar command and the compress command to create a compressed archived
file of all the statistics records that match the max.age parameter. Once the statistics files are
archived, these files are purged.
The archived files are stored in the directory where the statistics files and TCQ are stored. The shell
script, statarch.sh, is located in the ndm/bin directory. If necessary, modify the script to customize
it for your environment.
If you want to restore statistics files that have been archived, run the statrestore.sh script. It uses the
tar command to restore all the statistics files in the archive. Once files are restored, the statistics
records can be viewed using the select statistics command.
server.program The name and location of the server program used during The default is
the authentication procedure. ndmauths.
server.keyfile The name and location of the key file used during the The default is
authentication procedure. keys.server.
stats.exit.program The gateway control program used during the Name of the gateway control
user exit procedure. This exit is given control program.
for each statistics record that is written.
file.open.exit.program The file open exit program used during the Name of the file open exit
user exit procedure. It enables you to control program.
file names on both the sending and receiving
node. The exit is located so that it takes control
on the receiving (remote) node before the file
is opened.
This exit applies only to the copy statement
and provides access to all file control
parameters (including the data set name file
name, sysopt parameters, and disposition).
security.exit.program The security exit program used during the user Name of the security exit
exit procedure. This exit generates and verifies program.
passtickets, and it also supports other
password support programs, such as
PASSTICKET, part of the RACF security
system available on MVS hosts and also
supported by IBM on UNIX AIX and OS/2
computers using the NETSP product.
Note: Before you configure firewalls for use with UDT, refer to Appendix A, Configuring Firewall
Navigation, for information on the differences between UDT and TCP session establishment and
firewall navigation.
tcp.src.ports For TCP/IP connections, remote IP Valid IP address with an optional mask
addresses and the ports permitted for the upper boundary of the IP address
for the addresses when using a range and the associated outgoing port
packet-filtering firewall. This number or range of port numbers for the
parameter is required only if the specified IP address, for example:
local node acts as a PNODE. (199.2.4.*, 1000), (fd00:0:0:2015:*::*,
Place all values for an address 2000-3000), (199.2.4.0/255.255.255.0,
inside parentheses and separate 4000-5000),(fd00:0:0:2015::0/48, 6000,
each value for an address with a 7000)
comma. A wildcard character (*) is supported to
define an IP address pattern. If the
wildcard character is used, the optional
mask is not valid.
For more information on IP addresses,
masks, and ports, see Appendix
B, Specifying IP Addresses, Host
Names, and Ports.
tcp.src.ports.list.iterations The number of times that Any numeric value from 1255. The
Connect:Direct scans the list of default value is 2.
available ports to attempt a .
connection before going into a retry
state.
udp.src.ports For UDT connections, remote IP Valid IP address with an optional mask
addresses and the ports permitted for the upper boundary of the IP address
for the addresses when using a range and the associated outgoing port
packet-filtering firewall. This number or range of port numbers for the
parameter is recommended if a specified IP address, for example:
firewall is used whether the local (199.2.4.*, 1000), (fd00:0:0:2015:*::*,
node acts as a PNODE or an 2000-3000), (199.2.4.0/255.255.255.0,
SNODE. 4000-5000),(fd00:0:0:2015::0/48, 6000,
Place all values for an address 7000)
inside parentheses and separate A wildcard character (*) is supported to
each value for an address with a define an IP address pattern. If the
comma. wildcard character is used, the optional
mask is not valid.
For more information on IP addresses,
masks, and ports, see Appendix
B, Specifying IP Addresses, Host
Names, and Ports.
udp.src.ports.list.iterations The number of times that Any numeric value from 1255. The
Connect:Direct scans the list of default value is 2.
available ports to attempt a .
connection before going into a retry
state.
The client configuration file consists of parameter records that interface with End User Applications
(EUA). The client file includes the following parameters:
Connect:Direct API configuration parameters
Connect:Direct CLI configuration parameters
Client authentication parameters
You can modify Connect:Direct configuration files using any text editor. If you want to create a new
configuration file, use the cdcust command.
cli.parms:\
:script.dir=/home/qatest/jsmith/cdunix/hp/ndm/bin/:\
:prompt.string=Test CD on Medea:
api.parms:\
:tcp.hostname=alicia:\
:tcp.port=1393:\
:wait.time=50:
# Authenticator
authentication:\
:client.program=/home/qatest/jsmith/cdunix/hp/ndm/bin/ndmauthc:\
:client.keyfile=/home/qatest/jsmith/cdunix/hp/ndm/sc/keys.client:
tcp.port The TCP/IP port number to which Port number. The default is 1363.
the API usually connects.
wait.time The number of seconds to wait for Seconds to wait. The default is 50 seconds.
responses from the server. If this
limit is exceeded, the message ID
XCMG000I is displayed.
script.dir The directory where customized script files are stored. Specify Directory name.
this parameter if you have created a custom script to format the The default
output of the select statistics and select process commands.
directory is
The file names must be ndmstat and ndmproc.
ndm/bin/.
prompt.string Identifies the CLI prompt to display on the command line when Prompt string up to
the client is started. 32 characters. The
If the prompt string includes spaces or special characters, default is Direct.
enclose it in single or double quotation marks.
You can set the customized prompt in this parameter and at the
command line (using the -P parameter). If the prompt string is
specified in both places, the -P parameter at the command line
takes precedence.
When the default prompt is overridden, the new prompt string is
displayed in the Welcome banner and at the command prompt.
client.program The client program to use during authentication. Client program name.
The default is ndmauthc.
client.keyfile The key file to use during authentication. Client key file. The default is
keys.client.
This chapter describes the parameters in the network map file. This file is created when you install
Connect:Direct for UNIX. If necessary, use a text editor to add or modify remote node records in
the network map file. You can modify the network map file dynamically while the server is running.
Note: You can also use the Connect:Direct Browser to perform some of the procedures in this chapter. To
learn more about the Connect:Direct Browser, see the documentation on the Connect:Direct
Browser CD-ROM or available online from the Sterling Commerce Documentation Library.
Note: If you are using TCP/IP, the local node can communicate with a remote node without a remote node
information record. Specify the required connection information in the submit command or the
Process statement.
Note: To insert comments about fields in the network map, be sure to place a # in the first column. If the
# is not in the first column, the comment is not ignored and the field is read.
parameters after exhausting short-term attempts. Long-term attempts are set for less frequent
retries, because long-term attempts assume that the connection problem cannot be fixed quickly.
Following are the local.node parameters. The parameters in bold are required.
comm.bufsize The buffer size for transmitting data to and The value for TCP/IP has no
from a remote node for TCP/IP limit (up to 2,147,483,623).
connections. For LU6.2, the maximum is
32000.
The default is 65536 bytes.
conn.retry.stwait The time to wait between retries The maximum value is limited
immediately after a connection failure to the highest value in the
occurs. The format is hh.mm.ss, where hh clock format, 23.59.59. The
specifies hours, mm specifies minutes, and default is 00.00.30, which is
ss specifies seconds. 30 seconds.
conn.retry.exhaust.action Action to take after the specified short and hold | delete
long-term retries have been used. holdPlaces Processes in
the hold queue in Held in
Error status, after all retry
attempts are used. This is the
default value.
deleteCauses the
Processes to be deleted from
the TCQ.
pacing.send.delay The time to wait between send operations The format is nnn.
to the remote node. The decimal number is No limit exists for the size of
the number of milliseconds between the this value.
end of one packet and the beginning of the
The default is 0, which
next packet. Time-based pacing does not
indicates no pacing of this
contribute to network traffic.
type.
The value for this parameter has no effect
on LU6.2 connections.
pacing.send.count The number of send operations to perform No limit exists for the size of
before automatically waiting for a pacing this value.
response from the remote node. The value The default is 0, which
for this parameter has no effect on LU6.2 indicates no pacing of this
connections. type.
tcp.api.bufsize The buffer size for transmitting data to and This value has no limit. The
from a Connect:Direct CLI/API. default is 32768 bytes.
tcp.api.inactivity.timeout This is the maximum time a CMGR waits 086399 (23 hours, 59
before exiting when it has not received a minutes, and 59 seconds)
command from a client program. The value is in seconds. The
default is 0, which indicates
no timeout occurs.
tcp.max.time.to.wait The maximum time the local node waits for 010000
a message from the remote node when The value is in seconds. The
using TCP/IP. When the time expires, the default value is 180.
Process is moved to the Timer queue and
Connect:Direct attempts to re-establish a
session with the remote node. When set to
0, wait time is unlimited unless limited by
the operating system.
conn.retry.stwait The time to wait between retries The maximum value is limited to
immediately after a connection failure the highest value in the clock
occurs. The format is hh.mm.ss, where format, 23.59.59.
hh specifies hours, mm specifies The default is 00.00.30, which is
minutes, and ss specifies seconds. 30 seconds.
comm.bufsize The buffer size for transmitting data to The value for TCP/IP has no limit
and from a remote node. (up to 2,147,483,623).
For LU6.2, the maximum is
32000.
The default is 16000 bytes.
pacing.send.count The number of send operations to No limit exists for the size of this
perform before automatically waiting for value.
a pacing response from the remote The default is 0, which indicates
node. no pacing of this type.
The value for this parameter has no
effect on LU6.2 connections.
comm.bufsize The buffer size for transmitting The value for TCP/IP has no limit (up
data to and from a remote node to 2,147,483,623).
on TCP/IP connections. For LU6.2, the maximum is 32000.
The default is 65536 bytes.
comm.transport The transport protocol for the tcp | lu62 |blklu62 | udt33
remote node. tcpTCP/IP connections
lu62AIX SNA LU6.2 connections
blklu62Other LU6.2 connections
udt33UDT connections
conn.retry.stwait Time to wait between retries The maximum value is limited to the
immediately after a connection highest value in the clock format,
failure occurs. The format is 23.59.59.
hh.mm.ss, where hh specifies The default is 00.00.30, which is 30
hours, mm specifies minutes, seconds.
and ss specifies seconds.
pacing.send.count The number of send operations No limit exists for the size of this
to perform before automatically value.
waiting for a pacing response The default is 0, which indicates no
from the remote node. The value pacing of this type.
for this parameter has no effect
on LU6.2 connections.
You can control access to Connect:Direct for UNIX through the following: the user authorization
information file, strong access control file, program directory, local and remote user information
records, and security exit.
Note: To disable access to the software for a local user, delete or comment out the local user information
record.
You can create a generic user ID by specifying an asterisk (*) as the user ID. If a user does not have
a specific local user information record, the user authorizations will default to those specified in this
generic record. If no generic local user information record is defined and no specific local user
information record is defined for the user, the user cannot use Connect:Direct.
Connect:Direct may optionally use remote user information records to translate remote user IDs to
valid local user IDs where Connect:Direct for UNIX is installed. If an snodeid parameter is not
coded on the incoming Process, Connect:Direct for UNIX uses this proxy relationship to determine
the rights of remote users to issue Connect:Direct commands and statements.
Connect:Direct for UNIX uses the asterisk (*) character to establish generic mappings that facilitate
mapping remote user IDs to local user IDs. The asterisk matches the node name or the host name.
For example, you can specify *@node name to map the remote user ID to all user IDs at one node
name, specify id@* to map to a specific user ID at all node names, or specify *@* to match all users
at all node names.
The following table displays sample remote user ID mappings to local user IDs using the special
characters:
You can generate all the records through the script-based customization procedure or generate only
one or two records and use a text editor to generate additional records. After customization, you
may want to modify some of the parameters. Use cdcust to create a new user file or a text editor to
modify the file as necessary.
[email protected]:\
:local.id=sam:\
:pstmt.upload=y:\
:pstmt.upload_dir=/home/qatest/username/ndm/uploaddir:\
:pstmt.download=y:\
:pstmt.download_dir=/home/qatest/username/ndm/downloaddir:\
:pstmt.run_dir=/home/qatest/username/ndm/rundir:\
:pstmt.submit_dir=/home/qatest/username/ndm/submitdir:\
:descrip=:
sam:\
:admin.auth=y:\
:pstmt.copy.ulimit=y:\
:pstmt.upload=y:\
:pstmt.upload_dir=/home/qatest/username/ndm/uploaddir:\
:pstmt.download=y:\
:pstmt.download_dir=/home/qatest/username/ndm/downloaddir:\
:pstmt.run_dir=/home/qatest/username/ndm/rundir:\
:pstmt.submit_dir=/home/qatest/username/ndm/submitdir:\
:name=:\
:phone=:\
:descrip=:
:cmd.s+conf=n:
pstmt.copy.ulimit The action taken when the limit on a user y | n | nnnnnnnn | nnnnnnnnK |
output file size is exceeded during a copy nnnnnnnM | nnnnG
operation. The value for this parameter yHonors the user file size limit. If
overrides the equivalent value for the ulimit this limit is exceeded during a copy
parameter in the initialization parameters file. operation, the operation fails.
nIgnores the limit. The default is
n.
nnnnnnnn, nnnnnnnnK, nnnnnnnM,
or nnnnGEstablishes a default
output file size limit for all copy
operations. K denotes 1024 bytes.
M denotes 1048576 bytes. G
denotes 1073741824 bytes. The
maximum value you can specify is
1 TB.
pstmt.upload Determines if the user can send files from this y|n
local node. If a file open exit is in use, this yAllows the user to send files.
parameter is passed to the exit, but it is not The default is y.
enforced.
nPrevents the user from sending
files.
pstmt.upload_dir The directory from which the user can send Directory path name
files. If a value is set for this parameter, then
files can only be sent from this directory or
subdirectories. If a file open exit is in use, this
parameter is passed to the exit, but it is not
enforced. If this parameter is defined, file
names in Copy statements must be relative to
this directory. Absolute path names can be
used, but the path must coincide with this
specification.
pstmt.download_dir The directory to which the user can receive Directory path name
files. If a value is set for this parameter, then
files can only be received to this directory or
subdirectories. Otherwise, they can be
received to any directory. If a file open exit is in
use, this parameter is passed to the exit, but it
is not enforced.
pstmt.run_dir The directory where Connect:Direct for UNIX Directory path name
is installed that contains the programs and
scripts the user executes with run job and run
task statements. Any attempt to execute a
program or script outside the specified
directory fails.
The UNIX Restricted Shell provides enhanced
security by restricting the user to the
commands contained in the pstmt.run_dir. If
the user does not specify pstmt.run_dir, the
commands are started with the Bourne shell.
To restrict the use of special characters in the
run directory, be sure to configure Y for the
restrict:cmd initialization parameter. For
more information on specifying the
restrict:cmd initialization parameter, see
Restricting the Use of Special Characters in
the Run Directory on page 31.
pstmt.runjob Specifies whether the user can issue the run y|n
job statement. yAllows the user to issue the
statement.
nPrevents the user from issuing
the statement. The default is n.
pstmt.runtask Specifies whether the user can issue the run y|n
task statement. yAllows the user to issue the
statement.
nPrevents the user from issuing
the statement. The default is n.
pstmt.submit_dir The directory from which the user can submit Directory path name
Processes. This is for submits within a
Process.
pstmt.crc Gives the user the authority to specify the use y|n
of CRC checking in a Process statement. yAllows a user to specify CRC
Setting this parameter to y enables the user to checking on a Process statement.
override the initial settings in the initialization nPrevents a user from specifying
parameters or network map settings files. CRCchecking on a Process
statement. The default is n.
If the same parameter is specified in the remote user information record and the local user
information record, the parameter in remote user information record takes precedence unless it is a
null value. When a null value is specified in the remote record, the local user record takes
precedence.
Note: To prevent the remote user from using Connect:Direct, delete or comment out the remote user
information, unless the remote user specifies an SNODEID parameter in the Process.
The remote user information record is remote userid@remote node name. It specifies the user and
remote node name pair defined as a remote user. This value becomes the key to the record and must
be unique. Create a remote user information record for each user on a remote node that will
communicate with this local node.
Following are the parameters for the remote user information record:
pstmt.upload_dir The directory from which the user can Directory path name
send files. If a value is set for this
parameter, then files can only be sent
from this directory or subdirectories. If a
file open exit is in use, this parameter is
passed to the exit, but it is not enforced. If
this parameter is defined, file names in
Copy statements must be relative to this
directory. Absolute path names can be
used, but the path must coincide with this
specification.
pstmt.download_dir The directory to which the user can Directory path name
receive files. If a value is set for this
parameter, then files can only be received
to that directory or subdirectories.
Otherwise, they can be received to any
directory. If a file open exit is in use, this
parameter is passed to the exit, but it is
not enforced.
pstmt.run_dir The directory that contains the programs Directory path name
and scripts the user can execute with run
job and run task statements. Any attempt
to execute a program or script outside the
specified directory fails.
To restrict the use of special characters in
the run directory, be sure to configure Y
for the restrict:cmd initialization
parameter. For more information on
specifying the restrict:cmd initialization
parameter, see Restricting the Use of
Special Characters in the Run Directory
on page 31.
pstmt.submit_dir The directory from which the user can Directory path name
submit Processes. This is for submits
within a Process.
Note: Even if you do not want to limit root access through Connect:Direct for UNIX, the sysacl.cfg file
must exist. If the file is deleted or corrupted, all users are denied access to Connect:Direct for UNIX.
The file layout of the sysacl.cfg file is identical to the user portion of the userfile.cfg file. Setting a
value in the sysacl.cfg file for a user overrides the value for that user in the userfile.cfg file.
The root:deny.access parameter, which is specified in the sysacl.cfg file, allows, denies, or limits
root access to Connect:Direct for UNIX. this parameter is required. The following values can be
specified for the root:deny.access parameter:
If a user is denied access because the root:deny.access parameter is defined in the sysacl.cfg file
for that user, a message is logged, and the session is terminated. If a user is running a limited ID, an
informational message is logged.
outside the specified directory fails. The program directory is identified with the pstmt.run_dir
parameter. If the program directory is specified, the UNIX restricted shell is invoked, providing
enhanced security. If the program directory is not specified, the regular (Bourne) shell is invoked
for executing commands with no restrictions.
The restricted shell is very similar to the regular (Bourne) shell, but it restricts the user from
performing the following functions:
Changing the directory (cd)
Changing PATH or SHELL environment variables
Using command names containing a slash (/) character
Redirecting output (> and >>)
Additional information about the restricted shell can be found in the appropriate UNIX manual
pages or UNIX security text books.
The restricted shell is started using only the environment variables HOME, IFS, PATH, and
LOGNAME, which are defined as follows:
HOME=run_dir
IFS=whitespace characters (tab, space, and newline)
PATH=/usr/rbin and run_dir
LOGNAME=users UNIX ID
Because environment variables are not inherited from the parent Process, no data can be passed to
the script or command through shell environment variables. The restricted shell restricts access to
specified scripts and commands, but it does not restrict what the scripts and commands can do. For
example, a shell script being executed within the run_dir directory can change the value of PATH
and execute command names containing a slash (/) character. For this reason, it is important that the
system administrator controls which scripts and commands the user has access to and does not give
the user write privileges to the run_dir directory or any of the files in the run_dir directory.
Security Exit
The Security Exit in the initialization parameters file, initparm.cfg, provides an interface to
password support programs.
This exit generates and verifies passtickets and it also supports other password support programs.
An example of other programs is PASSTICKET, part of the RACF security system available on
MVS hosts and also supported by IBM on UNIX AIX and OS/2 computers using the NETSP
product.
Refer to Chapter 3, Maintaining the Initialization Parameters File, for information on the Security
Exit.
This chapter contains information about client and server authentication key files. You can edit both
key files with any text editor installed on your system.
hostname The host name of the server with which you want to 116 characters and must be
communicate or the host name of the API you will unique within its key file.
allow to communicate with your server. The
hostname is followed by one or more space
characters. If you replace the host name with an
asterisk (*) character in the server configuration file,
the server accepts a connection from any API with a
matching key. You can use only one asterisk per file.
Always place the entry with the asterisk after entries
with specific host names.
MRLN SIMP A required character string, separated from the other Character string
fields by one or more spaces.
key The security key. Separate the key from SIMP by Up to 22 characters long
one or more spaces. including A to Z, a to z, 0 to 9,
period (.), and
slash (/).
API C can communicate with Server A and Server B through matching keys. API C also can
communicate with Server C and Server D only through the * MRLN SIMP keyany line.
Clients Servers
API A SERVER A
Server1 MRLN SIMP key11 API1 MRLN SIMP key11
Server2 MRLN SIMP key21 API2 MRLN SIMP key12
Server3 MRLN SIMP key31 API3 MRLN SIMP key13
Server4 MRLN SIMP key41 API4 MRLN SIMP key14
API B SERVER B
Server1 MRLN SIMP API1 MRLN SIMP key21
key12 API2 MRLN SIMP key22
Server2 MRLN SIMP API3 MRLN SIMP key23
key22 API4 MRLN SIMP key24
API C SERVER C
Server1 MRLN SIMP key13 API1 MRLN SIMP key31
Server2 MRLN SIMP key23 API2 MRLN SIMP key32
* MRLN SIMP keyany API3 MRLN SIMP key33
* MRLN SIMP keyany
API D SERVER D
Server1 MRLN SIMP key14 API1 MRLN SIMP key41
Server2 MRLN SIMP key24 API2 MRLN SIMP key42
Server3 MRLN SIMP key34 * MRLN SIMP keyany
* MRLN SIMP keyany
Note: Substitute the correct host name for Server1, 2, 3, or 4 and API1,
2, 3, or 4.
the Connect:Direct API, to ensure that the authentication procedure is not bypassed by an
unauthorized user. The following figure displays the components that perform authentication:
User Application
Connect:Direct Server
Connect:Direct API
Parameter Description
Parameter Description
Firewall Navigation
Firewall rules need to be created on the local firewall to allow the local Connect:Direct node to
communicate with the remote Connect:Direct node. A typical packet-filtering firewall rule specifies
that the local firewall is open in one direction (inbound or outbound) to packets from a particular
protocol with particular local addresses, local ports, remote addresses, and remote ports. Firewall
Navigation differs between TCP and UDT; as a result, firewall rules for TCP and UDT should be
configured differently.
PNODE session Outbound Local C:Ds source ports Remote C:Ds listening port
SNODE session Inbound Local C:Ds listening port Remote C:Ds source ports
PNODE Session Request Outbound Local C:Ds source ports Remote C:Ds listening port
PNODE Session Outbound Local C:Ds source ports Remote C:Ds source ports
SNODE listen Inbound Local C:Ds listening port Remote C:Ds source ports
SNODE session Inbound Local C:Ds source ports Remote C:Ds source ports
Note: The IP addresses in the examples have been chosen to be distinctive and are not intended to be valid
IP addresses.
The local node has IP address 222.222.222.222 and listening port 2264. Its source ports for
communicating with the remote node are 20002200.
The remote node has IP address 333.333.333.333 and listening port 3364. Its source ports for
communicating with the local node are 30003300.
Note: See Session Establishment on page 80 for a discussion of the differences between UDT and TCP
session establishment.
Based on this scenario, the firewall rules for the local node are the following:
Session Establishment
Session establishment differs between TCP and UDT; these differences affect how you set up
firewall rules and configure the firewall navigation initialization parameters in Connect:Direct.
client attempts to contact the server on the session port. The Connect:Direct client scans the list of
ports (specified in the udp.src.ports initialization parameter) and looks for an available port to bind
to. The number of times Connect:Direct scans the list is specified using the
udp.src.ports.list.iterations initialization parameter. If the Connect:Direct client finds an available
port, communication with the remote Connect:Direct server proceeds. If a session cannot be
established after a certain time interval, the server atempts to contact the client.
Connect:Direct for UNIX accepts both Internet Protocol version 4 (IPv4) and Internet Protocol
version 6 (IPv6) versions of the Internet Protocol as well as host names. You can enter IP
addresses/host names and ports in several ways, depending on the field you are specifying:
Address or host name only
Port number only
Address/host name with a port number
Multiple address/host name and port combinations
When specifying IP addresses/host names and ports for Connect:Direct for UNIX, use the following
guidelines.
IP Addresses
Connect:Direct for UNIX accepts both IPv4 and IPv6 addresses. Wherever an IP address is
specified in Connect:Direct for UNIX, you can use either IPv4 or an IPv6 addresses.
IPv4 Addresses
IPv4 supports 232 addresses written as 4 groups of dot-separated 3 decimal numbers (0 through 9),
for example, 10.23.107.5.
IPv6 Addresses
IPv6 supports 2128 addresses written as 8 groups of colon-separated 4 hexadecimal digits, for
example, 1001:0dc8:0:0:0:ff10:143e:57ab. The following guidelines apply to IPv6 addresses:
If a four-digit group contains zeros (0000), the zeros may be omitted and replaced with two
colons (::), for example:
2001:0db8:85a3:0000:1319:8a2e:0370:1337
can be shortened as
2001:0db8:85a3::1319:8a2e:0370:1337
Any number of successive 0000 groups may be replaced with two colons (::), but only one set
of double colons (::) can be used in an address, for example:
001:0db8:0000:0000:0000:0000:1319:58ab
Can be shortened as:
2001:0db8:0000:0000::1319:58ab
Leading zeros in a four-zero group can be left out (0000 can be shortened to 0), for example:
2001:0db8:0000:0000:0000:0000:1319:58ab
Can be shortened as:
2001:0db8:0:0:0:0:1319:58ab
You can write a sequence of 4 bytes that occur at the end of an IPv6 address in decimal format
using dots as separators, for example:
::ffff:102:304
Can be written as:
::ffff:1.2.3.4
Host Names
When you specify a host name, rather than an IP address, Connect:Direct for UNIX gets the IP
address from the operating system. The first IP address returned by the operating system is used
regardless of whether it is in IPv4 or IPv6 format.
A host name (net, host, gateway, or domain name) is a text string of up to 24 characters comprised
of the alphabet (AZ), digits (09), minus sign (-), and period (.), for example, msdallas-dt.
The following guidelines also apply:
No blank or space characters are permitted as part of the name.
Periods are allowed only when they are used to delimit components of domain-style names.
Host names are not case sensitive.
The first and last character must be a letter or digit.
Single-character names or nicknames are not allowed.
Port Numbers
Port numbers can be appended to the end of IP/host addresses when they are preceded by a
semi-colon (;), for example, 10.23.107.5;1364. This convention is specific to Connect:Direct for
UNIX and is not an industry standard.
A port number must be in the range of 0 through 65535. Port numbers lower than 1024 are
designated as reserved and should not be used. The following examples show port numbers
appended to IP/host addresses using these conventions:
10.23.107.5;1364
fe00:0:0:2014::7;1364
msdallas-dt;1364
You can also specify a port number for each address or host name. The port is separated from its
corresponding address/host name with a semi-colon (;), and each address/host name and port
combination is separated by a comma (,). A space may be added after the comma for readability.
The following example shows multiple address/host name and port combinations:
Multiple address/host names (and combinations with port numbers) are limited to 1024 characters.
You can enable a test mode for production instances of Connect:Direct for UNIX to perform the
following functions:
Test new applications and customer connections
Prevent future production work from executing until testing is complete after you have
terminated all active production work using the Flush Process command
Resume regular production work after testing
Control individual file transfers by application
Enable and disable individual nodes and applications
While testing is being conducted, only Processes, particularly file transfers, involved with the
testing activity are executed. No production data is transferred to applications being tested while at
the same time no test data is transferred to production applications.
In addition to telling Connect:Direct which Processes to run, you tell the system what to do with the
Processes which do not get executed. You can specify the following dispositions for Processes not
permitted to run:
Place the Process in the Hold queue
Place the Process in the Timer queue for session retry
Flush the Process from the queue
For more information on how the testing mode can be used, see Sample Test Scenarios on page 90.
When the testing mode is enabled, Connect:Direct for UNIX performs a syntax check on the
parameter table and fails initialization if the table is invalid. If the table is valid, Connect:Direct for
UNIX scans it looking for a pattern that matches the Process that is about to execute. If a match is
found, the Process is permitted to execute if the I (Include) command code is in effect. If
command code X (Exclude) is in effect, the process is not permitted to execute. If a match is not
found in the table, the opposite processing occurs from the case where a match is found, that is, if
no match is found and command code I is in effect, the Process is not permitted to execute,
whereas if command code X is in effect, the Process is permitted to execute.
If a Process is not permitted to execute, the disposition specified in the NDMPXTBL parameter
table to either hold, retry, or flush the Process is implemented and a non-zero return code is returned.
When a Process is prevented from executing in testing mode, appropriate messages are issued and
can be viewed in the statistics log.
Note: For Processes initiated on remote nodes, the testing mode functions in the same manner as it does
for Processes submitted on the local Connect:Direct node except that the remote node is the
PNODE (Process owner) for that Process, and the local node is the SNODE (secondary node). The
NDMPXTBL Parameter Table is searched for a matching entry, and the remotely-initiated Process
is either permitted to execute or is excluded from execution. Because the local node is the SNODE
for this type of transfer, it cannot enforce the Process disposition setting in the NDMPXTBL
parameter table. The remote PNODE determines how the Process is handled. Typically, the remote
node places the Process in the Hold queue with a status of HE (Held in Error).
Note: If you enable the quiesce.resume initialization parameter, you must have an NDMPXTBL parameter
table.
Each table entry or record consists of a single-character command code in column one. Most
command codes have a parameter which begins in column two and varies according to the
command code function.
E Enables execution of Processes based on table The second column in this entry must
entries. Either E or D must be the first contain one of the following values
non-comment entry in the table. which indicates the disposition of a
PNODE Process if it is not allowed to
run.
HPlaces the Process in the Hold
queue
RPlaces the Process in the Timer
queue in session retry
FFlushes the Process from the
queue
D Disables the execution of all Processes regardless The parameter for command code
of the contents of the parameter table and fails E can also be specified in column
Process execution with a non-zero (error) return two. This is a convenience to make it
code and message LPRX003E. Either E or D easier to change from E to D and
must be the first non-comment entry in the table vice versa without having to change
column two to a blank for command
code D.
* Execute no processes at all. Put them in the hold queue and return.
DF
I
PACH*
PDITEST01
PDITEST02
L
Client
A program that makes requests of the Connect:Direct server and accepts the servers responses.
Connect:Direct
The family of data transfer software products that distributes information and manages production
activities among multiple data centers.
Connect:Direct Node
Any computer/workstation running Connect:Direct.
Connect:Direct Process
A series of statements, which can be predefined and stored in a directory, submitted through the API
to initiate Connect:Direct for UNIX activity. Examples of Process functions are copying files
and running jobs.
daemon
The long-running process that provides a service to a client. The PMGR is the Connect:Direct for
UNIX daemon.
Diagnostic Commands
Connect:Direct commands that assist in the diagnosis of Connect:Direct software problems.
Execution Queue
A logical queue in the TCQ. A Process in the Execution Queue can be transferring data to or from
a remote Connect:Direct node or it can be waiting for a connection to the remote
Connect:Direct node before it can perform its tasks.
File Agent
An application program and component of Connect:Direct. It scans specified directories searching
for the presence of a file. When a file appears in a watched directory, Connect:Direct either
submits a Process or performs the action specified by the rules for the file.
Hold Queue
A logical queue in the TCQ. Processes in the Hold Queue are waiting for operator intervention
before they move to the Wait Queue for scheduling.
Monitoring Commands
Connect:Direct commands that allow you to display information from the statistics file and the TCQ
about Connect:Direct Process execution results.
Session
A connection between two Connect:Direct nodes.
Timer Queue
A logical queue in the TCQ. Processes on the Timer Queue are waiting for a start time before they
move to the Wait Queue for scheduling.
Wait Queue
A logical queue in the TCQ. Processes on the Wait Queue are waiting on a connection to or from
the remote Connect:Direct node.
C comm.transport
LU 6.2 parameter 33, 58
cdcust script, modifying configuration files 26 remote node connection information 58
remote node connection parameter 33
ckpt.interval, copy parameters 34
remote node parameter 33
CLI configuration parameter, listed 44
Command
CLI, description 9 change process 14
CLI/API Configuration file delete process 14
client.keyfile 45 flush process 14
client.program 45 for TCQ 14
location 43 select process 14
tcp.hostname 44 select statistics 14
tcp.port 44 stop 14
wait.time 44 submit 14
trace 14
Client and server authentication key files, about 73
Command line interface, overview 9
Client authentication key file
authentication parameters 76 Command manager, overview 8
overview 73 Configuration
permissions 76 files, modifying 26, 43
Client authentication parameters, listed 45 initialization parameters file 27
network map parameters 47
Client configuration file, defined 43 user authorization parameters 61
client.keyfile, CLI/API configuration parameter 45 conn.retry.ltattempts
client.program, CLI/API configuration parameter 45 local node parameter 49, 54
remote node parameter 59
conn.retry.ltwait
local node parameter 49, 54
E
remote node parameter 59 ecz.compression.level, copy parameters 35
conn.retry.stattempts ecz.memory.level, copy parameter 35
local node parameter 49, 54 ecz.windowsize, copy parameters 35
remote node parameter 58
conn.retry.stwait
local node parameter 49, 54
F
remote node parameter 58 file.open.exit.program, user exit parameter 40
Connect:Direct file.size, file information parameters 37
client authentication parameters 76 Files
concepts 12 client authentication key file 73
configuration overview 25 initialization parameters, modifying 27
security 73 server authentication key file 73
security, authentication procedure 75 strong access control file 70
server authentication parameters 76 user authorization information file, modifying 61
contact.name Firewall navigation parameters, described 40
local node parameter 50, 55
remote node parameter 59 firewall.parms record 40
contact.phone
local node parameter 50, 55 G
remote node parameter 59 Generic, host name in server configuration file 74
continue.on.exception, copy parameter 35
Copy parameters, described 34 H
copy.parms record 34 Host names
multiple 85
CRC checking 36, 60, 65, 67
specifying 84
D I
default, priority parameter 31
Initialization parameters file
Definition about 27
local node 12 authentication 39
remote node 12 ckpt.interval 34
descrip comm.info 32
local node parameter 50, 55 comm.transport 33, 58
Local User Information Record 65 copy.parms 34
remote node parameter 59 defined 27
Remote User Information Record 69 ecz.compression.level 35
ecz.memory.level 35
Description ecz.windowsize 35
API 9 file.open.exit.program 40
CLI 9 file.size 37
CMGR 8 local.node 48
network map 14 location 27
PMGR 7 log.commands 37
SMGR 8 log.select 38
TCQ 13 max.age 33
user authorization 15 modifying 27
ndm.pam 30
path parameter 29
L
priority record 31 License management messages 38
recid 32 Local node
restrict definition of 12
cmd 66, 69 in network map 14
retry.codes 35
retry.msgids 36 Local User Information Record
rnode.listen 32 about 63
runtask.parms 37 admin.auth 63
security.exit.program 40 cmd.chgproc 63
server.keyfile 39 cmd.delproc 63
server.program 39 cmd.flsproc 64
snmp.agent.activated 38 cmd.selproc 64
snmp.agent.port 38 cmd.selstats 64
stats.exit.program 39 cmd.stopndm 64
syslog.logd 38 cmd.submit 65
tcp.crc 36 cmd.trace 65
tcp.crc.override 36 descrip 65
tcp.src.ports 41, 77 name 65
tcp.src.ports.list.iterations 41, 42, 77 phone 65
TCQ 33 pstmt.copy 65, 68
ulimit 34 pstmt.copy.ulimit 65
xlate.dir 34 pstmt.crc 65, 67
xlate.recv 35 pstmt.download_dir 66, 69
xlate.send 34 pstmt.runjob 67, 69
pstmt.runtask 67, 69
IP address pstmt.submit 67, 69
masks 85 pstmt.submit_dir 67
IP address ranges, using masks 85 pstmt.upload 66, 68
pstmt.upload_dir 66, 68
IP addresses 83
snode.ovrd 67
IPv4 83
IPv6 83 local.id, Remote User Information Record 68
multiple 85 local.node, initialization parameter record 48
IPv4 83 log.commands, file information parameter 37
IPv4 addresses 83 log.select, file information parameters 38
IPv6 83
IPv6 addresses 83 M
guidelines 83
max.age, parameter 17
max.age, TCQ parameter 33
K
Modifying configuration files 26
Key files
overview 73
permissions required for the client 76 N
permissions required for the server 76 name
keyfile parameter, in asset.protection record 31 parameter, in ndm.node record 30
name, in Local User Information Record 65
ndm.node record 30
R S
recid, remote node connection parameter 32 Samples
Processes 17
Record
shell scripts 18
api.parms 44
authentication 39 Security
copy.parms 34 authentication procedure 75
firewall.parms 40 client authentication parameters 76
local user information 63 format for key files 73
ndm.node 30 program directory 70
ndm.path 29 server authentication parameters 76
remote user information 67
Security Exit, in the Initialization parameters file 70
remote userid@remote node name 68
runtask.parms 37 security.exit.program, user exit parameter 40
stats 37 Server authentication key file, authentication
tcp.ip.default 54 parameters 76
tcq 33
Server authentication parameters
user.exits 39
described 39
Record, authentication 45 overview 73
Remote node permissions 76
definition of 12 server.keyfile, server authentication parameter 39
in network map 14
server.program, server authentication parameter 39
Remote node information record
sess.default, local node parameter 52, 55
creating 19
modifying 47 sess.pnode.max
local node parameter 52, 55
Remote User Information Record
remote node parameter 60
about 67
descrip 69 sess.snode.max
local.id 68 local node parameter 52, 55
pstmt.run_dir 69 remote node parameter 60
pstmt.submit_dir 69 sess.total
remote userid@remote node name, user authorization local node parameter 52, 55
information record 68 remote node parameter 60
restart, run task parameter 37 Session manager, overview 8
restrict Shadow password detection 70
cmd initialization parameter 66
Shell script, samples 18
cmd, initialization parameter 69
SMGR, description 8
Restricted shell, about 71
snmp.agent.activated, file information parameter 38
retry.codes, copy parameter 35
snmp.agent.port, file information parameter 38
retry.msgids, copy parameter 36
snode.ovrd, Local User Information Record 67
rnode.listen record 32
snode.work.path parameter 30
Run task, parameters 37
Statistics file information, parameters 37
runstep.max.time.to.wait
local node parameter 52, 55 stats record 37
remote node parameter 60 stats.exit.program, user exit parameter 39
U
udp.src.ports, firewall navigation parameter 41
udp.src.ports.list.iterations, firewall navigation
parameter 42
ulimit, copy parameters 34
UNIX, restricted shell 71