Changes to the DNCA server

When the rpm package is installed, by default the DNCA is installed in /usr/local/dncauser. In addition to the installation directory, other changes are made to the system.

The package creates the log file directory in /var/log/Discover by default, if it does not exist.

  • When you upgrade from an old installation with a non-empty /usr/local/dncauser/logs directory, the package uses the existing directory instead of the newer /var/log/Discover directory. This behavior is intended to avoid surprising the user by leaving old log files in the old directory (/usr/local/dncauser/logs) and writing new log files to the new default (/var/log/Discover).
    Note: This check for /usr/local/dncauser/logs is independent of the installation prefix that is chosen for installation for upgrade. If you install DNCA into /opt/Discover, the package still looks for a non-empty directory /usr/local/dncauser/logs.

The Discover-DNCA files are currently unused and are reserved for future use. The Discover-web files are used by the default httpd.conf for the web console. The Discover-tts files are provided for convenience in configuring SSL connections with the Discover Transport Service. The /usr/local/dncauser/etc directory is normally writable by root and the capture user, dncauser.

  • Install crontab file: /etc/cron.d/Discover. The crontab file schedules the execution of "Discover cron" as user root.
  • Install the following initialization scripts in /etc/init.d:
    • Discover-DNCA
    • Discover-startup
  • Create the capture.log file in the log file directory, if the file does not exist.

The package performs the following actions that modify directories and files outside of the installation prefix.

  • Create group dncauser if it does not exist.
  • Create user dncauser if it does not exist.
  • Set /usr/local/dncauser/bin/listend and /usr/local/dncauser/bin-debug/listend as setuid root (required for listend to open eth devices for packet sniffing; drops down to user dncauser after you open the eth devices).
  • Remove PHP session files in /tmp; they are assumed to be PHP session files for the DNCA web console.
  • Update /etc/syslog.conf (if needed) to ensure that it contains an entry for facility local0 to file capture.log in the log file directory.
  • Restart syslogd to force it to reload its configuration and use any changes that are made to /etc/syslog.conf.
  • Add the file /etc/ld.so.conf.d/Discover.conf or modify /etc/ld.so.conf to point to /usr/local/dncauser/lib to ensure that shared libraries are linked correctly at runtime.