nessusd man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

NESSUSD(8)			 User Manuals			    NESSUSD(8)

NAME
       nessusd - The server part of the Nessus Security Scanner

SYNOPSIS
       nessusd [-v] [-h]  [-c config-file] [-S ip[,ip2,...]] [-a address ] [-p
       port-number] [-D] [-d] [-R] [-P] [-q]

DESCRIPTION
       The Nessus Security Scanner is a security auditing tool made up of  two
       parts: a server, and a client.  The server, nessusd is in charge of the
       attacks, while the client nessus interfaces with the user.

       nessusd inspect the remote hosts and attempts to list all the  vulnera‐
       bilities and common misconfigurations that affects them.

OPTIONS
       -c <config-file>, --config-file=<config-file>
	      Use    the    alternate	 configuration	  file	  instead   of
	      /usr/local/etc/nessus/nessusd.conf

       -a <address>, --listen=<address>
	      Tell the server to only listen to	 connections  on  the  address
	      <address>	 which	is  an	IP,  not a machine name. For instance,
	      "nessusd -a  192.168.1.1"	 will  make  nessusd  only  listen  to
	      requests	going  to 192.168.1.1 This option is useful if you are
	      running nessusd on a gateway and if you don't want people on the
	      outside to connect to your nessusd.

       -S <ip[,ip2,...]>, --src-ip=<ip[,ip2,...]>
	      Force  the source IP of the connections established by Nessus to
	      <ip> checks need to fully establish a connection to  the	remote
	      host.  This  option  is  only  useful  if you have a multi-homed
	      machine with multiple public IP addresses that you would like to
	      use   instead   of   the	default	 one.  Example	:  nessusd  -S
	      192.168.1.1,192.168.1.2,192.168.1.3,192.168.1.4 will  make  nes‐
	      susd  establish  connections with a source IP of one among those
	      listed above.  For this setup to work, the host running  nessusd
	      should have multiple NICs with these IP addresses set.

       -p <port-number>, --port=<port-number>
	      Tell  the	 server to listen on connection on the port <port-num‐
	      ber> rather than listening on port 1241 (default).

       -D, --background
	      Make the server run in background (daemon mode)

       -q, --quiet
	      Prevent the server from printing the loading status of the plug‐
	      ins at startup

       -d, --dump-cfg
	      Make the server dumps its compilation options

       -v, --version
	      Writes the version number and exits

       -R, --recompile
	      Compiles every .nasl plugin as a binary file and exits.

       -h, --help
	      Show a summary of the commands

THE CONFIGURATION FILE
       The  default  nessusd  configuration  file,  /usr/local/etc/nessus/nes‐
       susd.conf contains these options:

       plugins_folder
	      Contains the location of the plugins  folder.  This  is  usually
	      /usr/local/lib/nessus/plugins, but you may change this.

       logfile
	      path to the logfile.  if you want the nessusd logs to be written
	      on stderr.  Because nessusd is a sensitive program,  you	should
	      keep your logs.

       max_hosts
	      is maximum number of hosts to test at the same time which should
	      be given to the client (which can override it). This value  must
	      be  computed  given your bandwidth, the number of hosts you want
	      to test, your amount of memory and the horsepower of  your  pro‐
	      cessor(s).

       max_checks
	      is  the  number of plugins that will run against each host being
	      tested. Note that the total number of process will be max_checks
	      x	 max_hosts  so	you  need  to find a balance between these two
	      options. Note that launching too many plugins at the  same  time
	      may  disable  the	 remote	 host,	either	temporarily (ie: inetd
	      closes its ports) or definitely (the remote host	crash  because
	      it is asked to do too many things at the same time), so be care‐
	      ful.

       be_nice
	      If this option is set to 'yes', then each child forked  by  nes‐
	      susd  will nice(2) itself to a very low priority. This may speed
	      up your scan as the main nessusd process will be	able  to  con‐
	      tinue  to	 spew processes, and this guarantees that nessusd does
	      not deprives other important processes from their resources.

       log_whole_attack
	      If this option is set to 'yes', nessusd  will  store  the	 name,
	      pid,  date  and  target of each plugin launched. This is helpful
	      for monitoring and debugging purpose, however this option	 might
	      make nessusd fill your disk rather quickly.

       log_plugins_name_at_load
	      If  this	option	is  set to 'yes', nessusd will log the name of
	      each plugin being loaded at startup, or each  time  it  receives
	      the HUP signal.

       dumpfile
	      Some  plugins  might  issue messages, most of the time to inform
	      you that something went wrong. If you want to  read  these  mes‐
	      sages,  set this value to a given file name. If you want to save
	      space, set this option value to /dev/null

       cgi_path
	      By default, nessusd looks	 for  default  CGIs  in	 /cgi-bin  and
	      /scripts.	 You may change these to something else to reflect the
	      policy of your site. The syntax of this option is	 the  same  as
	      the shell $PATH variable: path1:path2:...

       port_range
	      This is the default range of ports that the scanner plugins will
	      probe. The syntax of this option is flexible, it can be a single
	      range  ("1-1500"), several ports ("21,23,80"), several ranges of
	      ports ("1-1500,32000-33000"). Note that you can specify UDP  and
	      TCP  ports  by prefixing each range by T or U. For instance, the
	      following range will make nessusd scan UDP ports 1 to  1024  and
	      TCP ports 1 to 65535 : "T:1-65535,U:1-1024".

       optimize_test
	      By  default,  nessusd does not trust the remote host banners. It
	      means that it will check a webserver  claiming  to  be  IIS  for
	      Apache flaws, and so on. This behavior might generate false pos‐
	      itive and will slow the scan down somehow. If you are  sure  the
	      banners  of the remote host have not been tampered with, you can
	      safely enable this option, which will force the plugins to  per‐
	      form their job only against the services they have been designed
	      to check.

       checks_read_timeout
	      Number of seconds that the security checks will  wait  for  when
	      doing  a	recv(). You should increase this value if you are run‐
	      ning nessusd across a slow network slink (testing a host	via  a
	      dialup connection for instance)

       non_simult_ports
	      Some  services  (in  particular  SMB) do not appreciate multiple
	      connections at the same time coming from	the  same  host.  This
	      option  allows you to prevent nessusd to make two connections on
	      the same given ports at the same time. The syntax of this option
	      is  "port1[,  port2....]". Note that you can use the KB notation
	      of nessusd to designate  a  service  formally.  Ex:  "139,  Ser‐
	      vices/www",  will prevent nessusd from making two connections at
	      the same time on port 139 and on every port which	 hosts	a  web
	      server.

       plugins_timeout
	      This  is	the  maximum  lifetime, in seconds of a plugin. It may
	      happen that some plugins are slow because of the	way  they  are
	      written or the way the remote server behaves. This option allows
	      you to make sure your scan is never caught in  an	 endless  loop
	      because of a non-finishing plugin.

       safe_checks
	      Most  of	the time, nessusd attempts to reproduce an exceptional
	      condition to determine if the remote services are vulnerable  to
	      certain  flaws.  This  includes the reproduction of buffer over‐
	      flows or format strings, which may make the remote server crash.
	      If  you set this option to 'yes', nessusd will disable the plug‐
	      ins which have the potential to crash the remote	services,  and
	      will  at the same time make several checks rely on the banner of
	      the service tested instead of its	 behavior  towards  a  certain
	      input.  This  reduces  false  positives  and makes nessusd nicer
	      towards your network, however this may make you  miss  important
	      vulnerabilities  (as  a  vulnerability affecting a given service
	      may also affect another one).

       auto_enable_dependencies
	      Nessus plugins use the result of each  other  to	execute	 their
	      job.  For instance, a plugin which logs into the remote SMB reg‐
	      istry will need the results of the plugin which  finds  the  SMB
	      name  of	the  remote  host  and the results of the plugin which
	      attempts to log into the remote host. If you want to only select
	      a subset of the plugins available, tracking the dependencies can
	      quickly become tiresome. If you set this option to  'yes',  nes‐
	      susd will automatically enable the plugins that are depended on.

       use_mac_addr
	      Set  this	 option to 'yes' if you are testing your local network
	      and each local host has a dynamic IP address (affected  by  DHCP
	      or BOOTP), and all the tested hosts will be referred to by their
	      MAC address.

       plugin_upload
	      Set this option to 'yes' if you want to let nessusd users upload
	      their  own  plugins. Note that the plugins they will upload will
	      end up in their nessusd home directory, so they won't be	shared
	      among  users  (except if the user who uploads the plugins is the
	      one declared in the option 'admin_user'

       admin_user
	      The user listed in this option will upload his plugins into  the
	      global  nessus  plugins  directory,  and	they will be shared by
	      every other users

       rules  path to the rules database

	      The other options in this file can usually be redefined  by  the
	      client.

USERS MANAGEMENT
       The  utility  nessus-adduser(8) creates new nessusd users. Each nessusd
       user is attributed  a  "home",  in  @NESSUS_STATEDIR@/users/<username>.
       This home contains the following directories :

       auth/  This  directory  contains	 the  authentification information for
	      this user. It might contain the file  'dname'  if	 the  user  is
	      authenticating  using  a certificate, or 'hash' (or 'passwd') if
	      the user is authenticating using a  password.  The  file	'hash'
	      contains	a  MD5	hash of the user password, as well as a random
	      seed. The file 'password' should contain the password  in	 clear
	      text.

	      This directory also contains the file 'rules' which contains the
	      rules which apply to this user.

	      The content of this directory can not be altered by the user  in
	      any way whatsoever

       kbs/   This  directory  contains	 the  knowledge base (KB) of each host
	      tested  by  this	user,  if  the	user  has  enable  the	option
	      'save_kb'.

       sessions/

	      This  directory  contains	 the list and contents of the sessions
	      done by this user.

       plugins/
	      This directory contains the plugins this user uploaded.

	      When a user attempts to log in, nessusd first  checks  that  the
	      directory @NESSUS_STATEDIR@/users/<username> exists, then hashes
	      the password sent by the user with  the  random  salt  found  in
	      <username>/auth/hash,  and  compares  it	with the password hash
	      stored in the same file. If the users authenticates using a cer‐
	      tificate,	 then  nessusd	checks	that  the certificate has been
	      signed by a recognized authority, and makes sure that the	 dname
	      of  the  certificate shown by the user is the same as the one in
	      <username>/dname.

	      To remove a given user, use the command nessus-rmuser(8).

THE RULE SET FORMAT
       A rule has always the same format which is:
	    keyword IP/mask

       Keyword is one of reject , accept or default

       In addition to this, the IP address may be preceded by  an  exclamation
       mark (!) which means: “not” There are three sources of rules:

       ·      the rules database, which applies to every users

       ·      the users database rules, which applies to one user

       ·      the users rules, defined by the user in the client

	      You  must	 know  that there is a priority in the rules: the user
	      can not extend its privileges, but can only lower	 them.	 (that
	      it,  it  can  only  restrict  the	 set of hosts he is allowed to
	      test).

THE RULES DATABASE
       The rules database contains the system-wide rules,  which  applies  for
       every user. Its syntax has been defined in the previous section.	 Exam‐
       ple:

	      accept 127.0.0.0/8
	      reject 192.168.1.1/32
	      reject !192.168.0.0/16
	      default reject

       This  allows  the  user	to  test  localhost,  and  all	the  hosts  on
       192.168.0.0/16, except 192.168.1.1/32.
       The  rules  accept  the special keyword client_ip which is replaced, at
       connection time, by the IP of the user who logs in. If you want	every‐
       one to test his own box only, then you can do:

	      accept client_ip/32
	      default reject

NETWORK USAGE
       Bear  in	 mind  that Nessus can be quite network intensive. Even if the
       Nessus developers have taken every effor to avoid packet loss  (includ‐
       ing  transparently  resending  UDP  packets,  waiting  for  data	 to be
       received in TCP connections, etc.) so bandwidth use  should  always  be
       closely	monitored,  with current server hardware, bandwidth is usually
       the bottleneck in a Nessus scan. It might not became too aparent in the
       final  reports,	scanners  will still run, holes might be detected, but
       you will risk to run into false negatives (i.e. Nessus will not	report
       a security hole that is present in a remote host)

       Users  might need to tune Nessus configuration if running the server in
       low bandwidth conditions (low being 'less bandwidth that the  one  your
       hardware	 system	 can  produce)	or otherwise will get erratic results.
       There are several parameters that can be	 modified  to  reduce  network
       load:

       checks_read_timeout
	      (Introduced in Nessus 0.99.4) The default value is set to 5 sec‐
	      onds, that can (should) be increased if network bandwidth is low
	      in  the nessus.conf or nessusrc configuration files. Notice that
	      it is recommended to increase this this value, if you  are  run‐
	      ning  a test outside your LAN (i.e. to Internet hosts through an
	      Internet connection), to over 10 seconds.

       max_hosts
	      Number of hosts to test at the same time (this value is  set  by
	      the  Nessus  GUI client or by .nessusrc) it can be as low as you
	      want it to be (obviously 1 is the minimum)

       max_checks
	      Number of checkst to test at the same time (this value  is  also
	      set  by the Nessus GUI client or by .nessusrc ) it can be as low
	      as you want it to be and it will also reduce  network  load  and
	      improve performance (obviously 1 is the minimum) Notice that the
	      Nessus server will spawn max_hosts * max_checks processes.

	      Other options might be using the QoS features  offered  by  your
	      server operating system or your network to improve the bandwidth
	      use.

	      It is not easy to give a bandwidth estimate for  a  Nessus  run,
	      you  will probably need to make your own counts. However, assum‐
	      ing you test 65536 TCP ports. This will require at least a  sin‐
	      gle  packet  per	port  that  is at least 40 bytes large. Add 14
	      bytes for the ethernet header and you will send 65536  *	(40  +
	      14)  =  3670016  bytes. So for just probing all TCP ports we may
	      need a multitude of this as nmap will try to resend the  packets
	      twice if no response is received.

	      A	 very  rough estimate is that a full scan for UDP, TCP and RPC
	      as well as all NASL scripts may result in 8 to  32  MB  wrth  of
	      traffic  per  scanned  host.  Reducing the amount of tested part
	      and such will reduce the amout of data to be transfered signifi‐
	      cantly.

SEE ALSO
       nessus(1), nessus-adduser(8), nessus-rmuser(8), nessus-mkcert(8)

MORE INFORMATION ABOUT THE NESSUS PROJECT
       The  canonical  places  where  you will find more information about the
       Nessus project are:

	      http://www.nessus.org/ ⟨⟩ (Official site)
	      http://cvs.nessus.org/ ⟨⟩ (Developers site)
	      http://list.nessus.org/ ⟨⟩ (Mailing lists)

AUTHORS
       nessusd was written by Renaud Deraison <deraison@cvs.nessus.org>

The Nessus Project		 February 2004			    NESSUSD(8)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net