NAME¶
node.conf - LinuxNode configuration file.
DESCRIPTION¶
Node.conf file is read by LinuxNode at program startup and is used to
modify the behaviour of the node.
The lines within
node.conf must either be a comment line, which starts
with a # in the first column, or one of the commands listed below. Commands
and arguments are delimited by white space. Arguments can contain white space
if they are enclosed in single or double quotes. C style character literals
are not parsed and parameter expansion (see below) is not done inside single
quotes.
Available configuration commands are:
- Alias <NAme> '<command> [<args...>]'
- Sets up a command alias. The number of uppercase characters at the
beginning of <NAme> specifies how much the user may abbreviate the
command. The uppercase part should be long enough to separate the command
from other commands starting with the same letters. If there are no
uppercase letters in the beginning, the whole name is converted to upper
case and user can not abbreviate the command. Note that certain %-escapes
(positional parameters, current time) have a reasonable meaning only when
the alias is actually executed and thus they should not be parsed at the
time the configuration file is read. This can be achieved by enclosing the
command and argument part in single quotes. Another possibility is to use
double quotes and escape the percent sign with a backslash (eg. \%1)
- ConnTimeout <timeout>
- When user is connected to another system via this system and the
connection is idle (no data flowing in either direction) for
<timeout> seconds the connection is dropped and user disconnected
from node. Default is 3600 seconds (1 hour).
- EscapeChar <escape string>
- Specifies the escape character. The escape string may be specified using
any of the well known codings:
- <char> to enter the escape character in its binary form.
- ^C to enter the escape character as a control character value.
- NNN to set the escape character to a Decimal value.
- 0xNN to set the escape character to a HexaDecimal value.
- 0NNN to set the escape character to an Octal value.
- off to disable the escape character.
The default is CTRL-T (^T).
Note that the escape mechanism breaks 8-bit transparency of LinuxNode and
you should either disable it or set the no-escape flag in node.perms for
the forwarding stations if (compressed) forward is run trough LinuxNode.
Also the Escape user command can be used in a forward script to disable
the escape (see ax25-node(8)).
- ExtCmd <NAme> <flags> <uid> <exec>
<args...>
- Sets up an external command.
- NAme
- This is the name under which the command appears at nodes command list.
The number of uppercase characters at the beginning of <NAme>
specifies how much the user may abbreviate the command. The uppercase part
should be long enough to separate the command from other commands starting
with the same letters. If there are no uppercase letters in the beginning,
the whole name is converted to upper case and user can not abbreviate the
command.
- flags
- This is a sum of flags that control the way the external command is
executed. Currently two flags are implemented:
- 1
- Run command through pipe. Without this flag ax25-node just fork()s and
exec()s the specified command and then waits for it to terminate. The
command must it self be aware about the underlying protocol. It must
handle packetising and any end of line conversions. With this flag however
ax25-node sets up a pipe between it self and the command and handles
packetising and end of line conversions for it.
- 2
- Reconnected to flag. If this flag is set, the user gets a reconnected to
prompt after the external command is finished.
- uid
- This is the userid that the following command should run under when
executing.
- exec
- This is the executable that should be executed.
- args...
- These are the optional arguments that are passed to the executable. The
first argument is the command name that is passed to the program
(argv[0]). It is usually the executable name without path. See the Alias
command for a discussion about the command arguments and %-escapes
(parameter expansion).
- HiddenPorts <portname> ...
- Marks the AX.25 port <portname> as hidden. Hidden ports are not
shown to users in Links, Mheard, Ports and Routes commands and can not be
used to make AX.25 downlink connections unless user is specially permitted
to do so (see node.perms(5)). Up to 32 hidden ports can be specified with
this command.
- HostName <hostname>
- This is the visible hostname of the node. It will be shown at telnet login
and in the node welcome message.
- IdleTimeout <timeout>
- After <timeout> seconds of inactivity while waiting for a command
user is disconnected from node. Default is 900 seconds (15 mins).
- LocalNet <network>
- Defines a "local" network. Users telneting from hosts in this
network are treated separately (see node.perms(5)). <network> is a
KA9Q NOS style network address consisting of a dotted-quad IP address of
the network and a number of significant bits separated by a slash. Note
that 127.0.0.0/8 (loopback net) is also considered "local" by
default.
- LogLevel <loglevel>
- Specifies what ax25-node should log. The available levels are:
- 0
- Don't log anything.
- 1
- Log only critical errors.
- 2
- Log errors and logins/logouts.
- 3
- Log errors, logins/logouts and all gateway commands.
Default is to log only critical errors.
- NodeId <id>
- This is the id that is shown in every message from ax25-node. Default is
"LinuxNode}".
- NodePrompt <prompt>
- Sets the prompt string. The prompt string is evaluated every time it is
printed so what was previously said about %-escapes (parameter expansion)
in Alias command is valid here also.
- NrPort <portname>
- This is the name of the netrom port that is used when making outgoing
netrom connects. Normally it should match the portname that is used in
ax25d.conf to listen for incoming netrom calls. Default is the first
netrom port.
- ReConnect on|off
- ReConnect flag. If enabled, users gatewaying to another host get
reconnected to this node after the remote host closes connection. If it's
off connection to the user will also be closed. User can override the
default behaviour with a single `s' or `d' at the end of the gatewaying
command (connect or telnet). Default is off.
- ResolveAddrs on|off
- If enabled, dotted-quad IP addresses are resolved to symbolic names when
pinging or telneting out. Also, the domain name of the peer is resolved
for telnet logins. Default is off.
CHARACTER LITERALS¶
C style character literals are parsed when reading the configuration file. The
following formats are expanded:
- \n
- This is substituted with Line Feed
- \t
- This is substituted with Horizontal Tab
- \v
- This is substituted with Vertical Tab
- \b
- This is substituted with Backspace
- \r
- This is substituted with Carriage Return
- \f
- This is substituted with Form Feed
- \a
- This is substituted with Alert (BELL)
- \\
- This is substituted with Backslash (\)
- \"
- This is substituted with double quote (")
- \'
- This is substituted with single quote (')
- \xNN
- This is substituted with the character corresponding to the code value of
NN interpreted as a hexadecimal number.
- \0NN
- This is substituted with the character corresponding to the code value of
NN interpreted as an octal number.
- \0
- This is substituted with the NUL character (ascii 0)
PARAMETER EXPANSION¶
While reading the configuration file a word starting with a % is expanded. The
following formats are expanded:
- %parameter
- This is substituted with the value of parameter
- %{parameter}
- The same as above.
- %{parameter:default}
- If parameter is defined this is susbtituted with the value of it.
If not, the default value is substituted. This currently applies only to
positional parameters 0...9.
The following parameters are defined:
- 0...9
- The positional parameters. Positional parameters are not meaningful while
reading the node.conf so the default value (if present) is always
substituted.
- F
- The full hostname in upper case.
- f
- The full hostname in lower case.
- H
- The hostname in upper case.
- h
- The hostname in lower case.
- I or i
- Current time (HH:MM:SS).
- N or n
- The node ID as set with the NodeId command.
- U
- The username (callsign) of the remote station in upper case without the
SSID.
- u
- The username (callsign) of the remote station in lower case without the
SSID.
- S
- The username (callsign) of the remote station in upper case with the
SSID.
- s
- The username (callsign) of the remote station in lower case with the
SSID.
- P
- The nodename (callsign) of the remote station (NET/ROM), the portname the
user is coming in via (AX.25) or the ip address of the remote host (TCP).
In upper case without the SSID.
- p
- The nodename (callsign) of the remote station (NET/ROM), the portname the
user is coming in via (AX.25) or the ip address of the remote host (TCP).
In lower case without the SSID.
- R
- The nodename (callsign) of the remote station (NET/ROM), the portname the
user is coming in via (AX.25) or the ip address of the remote host (TCP).
In upper case with the SSID.
- r
- The nodename (callsign) of the remote station (NET/ROM), the portname the
user is coming in via (AX.25) or the ip address of the remote host (TCP).
In lower case with the SSID.
- t
- The type of the user connection (ax25, netrom, rose, inet, host) in lower
case.
- T
- The type of the user connection (ax25, netrom, rose, inet, host) in upper
case.
Anything else after a % is substituted with a %.
FILES¶
/etc/ax25/node.conf
SEE ALSO¶
ax25-node(8),
node.perms(5),
axports(5),
ax25(4).