1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570
|
.\"
.\" Argus-5.0 Software
.\" Copyright (c) 2000-2024 QoSient, LLC
.\" All rights reserved.
.\"
.\"
.TH RARC 5 "14 September 2016" "rarc 5.0.3"
.SH NAME
\fBrarc\fP \- \fBra\fP client resource file.
.SH SYNOPSIS
.B rarc
.SH DESCRIPTION
Ra* clients will open this file if its in the users $HOME directory,
or in the $ARGUSHOME directory, and parse it to set common configuration
options. All of these values will be overriden by options set on the
command line, or in the file specified using the '-F conffile' option.
Values can be quoted to make string denotation easier, however, the
parser does not require that string values be quoted. To support this,
the parse will remove " (double quote) characters from input strings, so
do not use this character in strings themselves.
Values specified as "" will be treated as a NULL string, and the parser
will ignore the variable setting.
.SH RA_ARGUS_SERVER
All ra* clients can attach to a remote server, and collect argus data
in real time. This variable can be a name or a dot notation IP address.
Optionally you can specify a port number using a ':' and then providing
the port number desired.
\fBRA_ARGUS_SERVER=\fPlocalhost:561
.SH PID FILE SUPPORT
Any ra* program can generate a pid file, which can be used to control the
number of instances that the system can support.
Creating a system pid file may require priviledges that may not be inappropriate
for all cases. By specifying \fBRA_PID_PATH\fP, you can create personal pid files
that will enforce your own policy for your own use of the ra* programs.
When configured to generate a pid file for a ra* program, if a file called
ra*.pid (where ra* is the name of the program in question) exists in the RA_PID_PATH
directory, and a program exists with a pid that matches the one contained in the
file, then the program will not start. If the pid does not exist, then the ra* program
replaces the value in the file, with its own pid. If a pid file does not exist,
then the ra* program will create it in the RA_PID_PATH directory, if it can. The
end result is that the system will support only one instanace of the program, based
on name, running at a time.
The default value is to not generate a pid. The default path for the pid file, is /var/run.
No Commandline equivalent
.nf
\fBRA_SET_PID=\fP"no"
\fBRA_PID_PATH=\fP"/var/run"
.fi
.SH RA_OUTPUT_FILE
All ra* clients can support writing output as Argus Records into
a file or stdout. Stdout is specified as '-'.
\fBRA_OUTPUT_FILE=\fP"filename"
.SH RA_TIMERANGE
All ra* clients can support input filtering on a time range. The
format is:
.nf
\fBtimeSpecification[-timeSpecification]\fP
where the format of a timeSpecification can be:
[[[yy/]mm/]dd.]hh[:mm[:ss]]
[yy/]mm/dd
\fBRA_TIMERANGE=\fP"55/12/04.00:00:01-55/12/04.23:59:59"
\fBRA_TIMERANGE=\fP"12/04-12/05"
.fi
.SH RA_RUN_TIME
All ra* clients can support running for a number of seconds,
while attached to a remote source of argus data. This is a type
of polling. The default is zero (0), which means run indefinately.
\fBRA_RUN_TIME\fP=0
.SH RA_PRINT_MAN_RECORDS
Specify if ra* clients should print management records by default.
This does not affect management record processing, nor down stream
management record propagation.
Commandline equivalents: -M [no]man
\fBRA_PRINT_MAN_RECORDS\fP=no
\fBRA_PRINT_EVENT_RECORDS\fP=no
.SH RA_PRINT_LABELS
Most ra* clients are designed to print argus records out in ASCII,
with each client supporting its own output formats. For ra() like
clients, this variable will generate column headers as labels.
The number is the number of lines between repeated header labeling.
Setting this value to zero (0) will cause the labels to be printed
once. If you don't want labels, comment this line out, delete it
or set the value to -1.
\fBRA_PRINT_LABELS\fP=0
.SH RA_FIELD_DELIMITER
Most ra* clients are designed to print argus records out in ASCII,
with each client supporting its own output formats. For ra() like
clients, this variable can overide the default field delimiter,
which are variable spans of space (' '), to be any character.
The most common are expected to be '\t' for tabs, and ',' for
comma separated fields.
\fBRA_FIELD_DELIMITER=\fP','
.SH RA_PRINT_NAMES
For \fBra(1)\fP like clients, this variable will control the
translation of various numbers to names, such as address hostnames,
port service names and/or protocol names. There can be a huge
performance impact with name lookup, so the default is to not
resolve hostnames.
\fBRA_PRINT_NAMES=\fPport
Other valid options are \fPnone\fP to print no names, \fPproto\fP
to translate the protocol names, \fPport\fP to translate
port names, and \fPall\fP to translate all the fields. An
invalid option will default to \fPport\fP, silently.
.SH RA_CIDR_ADDRESS_FORMAT
Use this variable to specify whether \fBra()\fP clients, when printing
numeric IP addresses, will print them as CIDR addresses, or not. CIDR
notation is constructed from the IP address and the prefix size, the latter
being the number of leading 1 bits of the routing prefix. The IP address is
expressed according to the standards of IPv4 or IPv6. It is followed by a
separator character, the forward slash (/) character, and the prefix size
expressed as a decimal number.
Argus IPv4 data contains the CIDR mask length, when its less than 32,
and ra* programs will by default provides the "/masklen" suffix when
the mask is less than 32.
This maybe confusing for some data processors, which would rather not see
the "/masklen" never, or all the time. Use this option to specify
changes in the default printing stratgy.
Accepatable values for this variable are:
"no" - do not provide the CIDR mask length (legacy mode) [default]
"yes" - print CIDR mask length when less than 32
"strict" - always print CIDR mask length
\fBRA_CIDR_ADDRESS_FORMAT=\fP"no"
.SH RA_ASN_PRINT_FORMAT
All ra() clients can print and process AS Numbers that have been
added to the records through metadata labeling, or were a part of
the original Netflow to argus conversion process..
RFC 5396 specifies 3 formats for representing AS Numbers, and all 3 are
acceptable formats. These format are:
"asplain" - 2 and 4-byte ASNs are printed as decimal integers.
"asdot+" - 2 and 4-byte ASNs are printed using a dot notation.
"asdot" - 2 byte ASNs are printed as decimal, and 4-byte ASNs
are printed using a dotted notation..
The default is 'asplain'.
No Commandline equivalent
\fBRA_ASN_PRINT_FORMAT=\fP"asplain"
.SH RA_PRINT_RESPONSE_DATA
For ra() like clients, this variable will include the response
data that is provided by Argus. This is protocol and state
specific.
\fBRA_PRINT_RESPONSE_DATA=\fPno
.SH RA_PRINT_UNIX_TIME
For ra() like clients, this variable will force the timestamp
to be in Unix time format, which is an integer representing the
number of elapsed seconds since the epoch.
\fBRA_PRINT_UNIX_TIME\fP=no
.SH RA_TIME_FORMAT
For ra() like clients, the format that is used to print
timestamps, is based on the strftime() library call, with
an extension to print fractions of a sec using "%f". The
default is "%T.%f". You can overide this default time
format by setting this variable. This string must conform
to the format specified in strftime(). Malformed strings can
generate interesting output, so be aware with this one, and
don't forget the '.' when doing fractions of a second.
\fBRA_TIME_FORMAT=\fP"%T.%f"
.SH RA_TZ
The timezone used for timestamps is specified by the
tzset() library routines, and is normally specified by
factors such as the TZ environment variable found on
most machines. You can override the TZ environment variable
by specifying a time zone using this variable. The format
of this string must conform to the format specified by
tzset(3).
.nf
\fBRA_TZ=\fP"EST5EDT4,M3.2.0/02,M11.1.0/02"
\fBRA_TZ=\fP"PST8PDT"
.fi
.SH RA_USEC_PRECISION
For ra() like clients, this variable is used to override the
time format of the timestamp. This variable specifies the
number of decimal places that will be printed as the fractional
part of the time. Argus collects usec precision, and so a
maximum value of 6 is supported. To not print the fractional
part, specify the value zero (0).
\fBRA_USEC_PRECISION=\fP6
.SH RA_USERDATA_ENCODE
Argus can capture user data, and the argus clients can print, merge,
filter, and strip user data from argus records. When printing out
the user data contents, using tools such as ra.1, the type of encoding
used to print the buffers can be specified here. This is available
because many user data buffers are not printable text, and other
representations may be more appropriate.
Supported values are "Ascii", "Obfuscate", "Hex", "Encode32" or "Encode64".
The default is "Ascii".
Obfuscate is an extension to the Ascii print, that attempts to
over-write plain text passwords, encountered in the user data,
with 'x's.
Commandline equivalent: -M printer=<printer>
\fBRA_USERDATA_ENCODE=\fPAscii
.SH RA_FILTER
You can provide a filter expression here, if you like.
It should be limited to 2K in length. The default is to
not filter. See ra(1) for the format of the filter expression.
\fBRA_FILTER=\fP""
.SH SASL SUPPPORT
When argus is compiled with SASL support, ra* clients may be
required to authenticate to the argus server before the argus
will accept the connection. This variable will allow one to
set the user and authorization id's, if needed. Although
not the best practice, you can provide a password through the
RA_AUTH_PASS variable. If you do this, you should protect
the contents of this file. The format for this variable is:
.nf
\fBRA_USER_AUTH=\fP"user_id/authorization_id"
\fBRA_AUTH_PASS=\fP"password"
.fi
The clients can specify a part of the negotiation of the
security policy that argus uses. This is controlled through
the use of a minimum and maximum allowable protection
strength values. Set these variable to control this policy.
.nf
\fBRA_MIN_SSF=\fP0
\fBRA_MAX_SSF=\fP128
.fi
.SH RA_DEBUG_LEVEL
If compiled to support this option, ra* clients are capable
of generating a lot of use [full | less | whatever] debug
information. The default value is zero (0).
.nf
\fBRA_DEBUG_LEVEL=\fP0
.fi
.SH RA_CONNECT_TIME
Some ra style clients use a non-blocking method to connect to
remote data sources, so the user many need to control how long
to wait if a remote source doesn't respond. This variable sets
the number of seconds to wait. This number should be set to
a reasonable value (5 < value < 60). The default value is
10 seconds.
.nf
\fBRA_CONNECT_TIME=\fP10
.fi
.SH RA_SORT_ALGORITHMS
Many ra* programs sort records as a part of their function.
Programs like rasort.1, providing explicit command-line options
to specify the sort algorithms and their order, using the
\&'-m field [field ...]' option.
Use this configuration directive to specify the default sorting
algorithm table for your ra* programs. The default sort algorithm
is record start time "stime".
.nf
\fBRA_SORT_ALGORITHMS=\fP"stime "
.fi
.SH RA_HASHTABLE_SIZE
ra* clients that match flow attributes, such as aggregators, use
hash tables to hold data for processing. This variable can change
the size of hash tables to help control memory, or increase
processing speed. The default is 262144 (0x40000).
.nf
\fBRA_HASHTABLE_SIZE=\fP262144
.fi
.SH RA_TIMEOUT_INTERVAL
Some ra* clients have a timeout based function. Ratop, as an
example, times out flows and removes them from screen at a fixed
interval. This variable can be set using the RA_TIMEOUT_INTERVAL
variable, which is a float in seconds. 60.0 seconds is the default.
.nf
\fBRA_TIMEOUT_INTERVAL=\fP60.0
.fi
.SH RA_UPDATE_INTERVAL
Some ra* clients have an interval based function. Ratop, as an
example, can refresh the screen at a fixed interval. This variable
can be set using the RA_UPDATE_INTERVAL variable, which is a
float in seconds. 0.5 seconds is the default.
.nf
\fBRA_UPDATE_INTERVAL=\fP0.5
.fi
.SH RA_SRC_ALIAS
All ra* clients have the ability to alias the srcid to the "node" field.
The method for finding the alias is specified using this variable,
RA_SRCID_ALIAS. The format for the URL provides for file and database
access. File access is implemented.
.nf
file:/usr/local/argus/argus.srcid.alias.txt
mysql://[username[:password]@]hostname[:port]/database/tablename
.fi
.nf
\fBRA_SRCID_ALIAS=\fP"file:/usr/local/argus/argus.srcid.alias.txt"
.fi
.SH RA_PRINT_ETHERNET_VENDORS
All ra* clients have the ability to print vendor names for the
vendor part of ethernet addresses that are in flow records.
ra* programs get its strings for the ethernet vendors using
Wireshark 'manuf' files. One is provided with the distribution,
and installed into /usr/local/argus.
No Commandline equivalent
.nf
\fBRA_PRINT_ETHERNET_VENDORS=\fP"no"
\fBRA_ETHERNET_VENDORS=\fP"/usr/local/argus/wireshark.manuf.txt"
.SH RA_DELEGATED_IP
All ra* clients have the ability to print country codes for the
IP addresses that are in a flow record. Country codes are
generated from the ARIN delegated address space files. Specify
the location of your DELEGATED_IP file here.
No Commandline equivalent
.nf
\fBRA_DELEGATED_IP=\fP"/usr/local/argus/delegated-ipv4-latest"
.fi
.SH RA_RELIABLE_CONNECT
All ra* clients can reliably connect to remote data sources.
This causes the ra* program to try to reconnect to lost remote
sources every 5 seconds, indefinately. This causes ra* program
to not terminate but retry connection attempts when they fail.
This feature is implemented using threads, and so threads
support must be compiled in.
No Commandline equivalent
.nf
\fBRA_RELIABLE_CONNECT=\fPno
.fi
.SH MYSQL SUPPORT
Many ra* clients can connect and use a MySQL database, either
reading for writing. This may require references to remotes
database hosts, databases, tables, and mysql account names
and passwords.
Default values for these variables can be set here.
support must be compiled in.
Commandline equivalents:
-r mysql://[username[:password]@]hostname[:port]/database/tablename
-w mysql://[username[:password]@]hostname[:port]/database/tablename
-u username:password
.nf
\fBRA_DATABASE=\fP"argus"
\fBRA_DB_TABLE=\fP"table"
\fBRA_DB_USER=\fP"carter"
\fBRA_DB_PASS=\fP"whatever"
.fi
Those ra* clients that can create database tables may need to
specify a table type or rather, a database engine other than the
default, InnoDB.
Commandline equivalents:
-M mysql_engine=tableType
Current tableTypes are
InnoDB
MyISAM
Merge
Memory
Archive
NDB
Federated
CSV
.nf
\fBMYSQL_DB_ENGINE=\fP"InnoDB"
.fi
.SH COLOR SUPPORT
For ra* programs that use curses, these variables defined color schemes
and color assignments.
Argus uses a sixteen color palette, with 8 monotone and 8 accent colors,
plus 16 colors of gray. Currently these color values are hard coded.
New versions should allow you to provide color definitions for all internal
values using a 256 Xterm color wheel, to assign foreground and background
colors. But we're not there yet
.nf
\fBRA_COLOR_SUPPORT=\fP"yes"
\fBRA_COLOR_CONFIG=\fP"/usr/carter/.racolor.conf"
.fi
.SH DIRECTION SUPPORT
Many ra* clients process flow records based on source and destination
properties. TCP and UDP ports values can be used to assign direction,
and are best used for well-known ports (< 1024), values that
are in the /etc/services defintions, and the reserved ports (> 1023, < 49151).
The syntax is:
RA_PORT_DIRECTION="services"
RA_PORT_DIRECTION="services,wellknown"
RA_PORT_DIRECTION="services,wellknown,registered"
We recommend the wellknown and services options, as they are a bit more
discriminating. If there are ports that you know are services that are in
the registered port range, we suggest that you add them to your /etc/services
file rather than include the registered port range; only because the
registered range is so large. However, this option is applied only to
flow in which the direction is ambiguous, and as such, corrections based
on the logic should have minimum effect on analytics.
.nf
\fBRA_PORT_DIRECTION=\fP"services,wellknown"
.fi
Sites use locality for a number of features, such as access control,
and this support is intended to support visualization, and analytics.
Currently, you can identify a collection of IP addresses that represent RA_LOCAL,
and are specified using an iana-address-file formatted file. (See ralabel.conf)
.nf
\fBRA_LOCAL=\fP"/usr/local/argus/local.addrs"
.fi
When locality information is available, programs like ra(), and
as the assignement of source when there is ambiguity in the
flow record as to who is the actual initiator or receiver of the flow.
When locality information is available, programs like ra(), and
ratop() can use that information to make display decisions, such
RA_LOCAL_DIRECTION provides the logic for using the locality
information to assign flow direction. You can force the local
address to be either the source (src) or the destination (dst).
The syntax is:
RA_LOCAL_DIRECTION="local:src"
RA_LOCAL_DIRECTION="local:dst"
.nf
\fBRA_LOCAL_DIRECTION="suggest:src"
\fBRA_LOCAL_DIRECTION="force:src
.fi
.RE
.SH COPYRIGHT
Copyright (c) 2000-2024 QoSient. All rights reserved.
.RE
.SH SEE ALSO
.BR ra (1)
|