Page tree
Skip to end of metadata
Go to start of metadata

When troubleshooting phones, it is helpful to be able to see more detailed logging. Turning verbose logging on will show when a phone requests a file, allowing you to know the phone at least has working networking by that point.

  • Edit the tftp configuration file
vi /etc/xinetd.d/tftp
  • Add the "–verbose" startup option
        ## Customization: add the "--verbose" command-line option to see when TFTP files are requested by clients to aid in troubleshooting
        #server_args             = -s /tftpboot
        server_args             = -s /tftpboot --verbose
  • Restart xinitd
service xinetd restart

You can grep for tftp in /var/log/messages, and see live tftp traffic with:

tail -f /var/log/messages | grep tftp

  • No labels


  1. Thank you for these instructions.  I'm assuming the log outputs to the messages file?  

  2. If the standard verbosity obtained with –verbose is insufficient, the shorthand -v can be specified multiple times (-vvv) to increase verbosity.

    We also usually enable the -c / --create option to let the phones save files on the /tftpboot folder.

    Some of them attempt to upload files (e.g. the user entered data in the local directory) for subsequent retrieval when provisioning, and is very helpful to recover that end user generated information in case of a factory reset.

    This has the consequence that the TFTP daemon must be run with a different user than "nobody" (as it does by default), otherwise it would not have write rights on the /tftpboot directory, so we create a specific user "tftpserver" that also belongs to the group "asterisk", and we add the --user tftpserver parameter.

    Aside from firewalling access to the TFTP port with iptables to allow access only from the phones' IP range, we apply no further protection as the TFTP daemon cannot cross the boundaries of the directory specified in the -s parameter, in this case a dead end /tftpboot.