When transferring files across a network then TFTP is a good solution due to its ease of use and easy configuration.
TFTP, or Trivial File Transport Protocol, is a way of sending and receiving files over the internet. It is especially useful in situations where the remote computer that is receiving the file is unmanned.
This makes sending files very easy and does not require human intervention on the other end if configured correctly. The downside is that the protocol is not secure. (If security is a concern then you should look at transfer methods that use encryption.)
If you do a lot of file transfers over your home or business network, then TFTP is a good way to go.
In order to demonstrate this method of file copying and transferring, we will be using a free TFTP tool provided by SolarWinds TFTP. It is a quick and easy way to get the job done, so we will be downloading it from here.
Best of all is that this app is free, so using it will certainly not break the bank. Let’s get started.
After you download, install the package on your PC and lets get started with the configure.
Before We Begin:
There are a couple of things that we need to do before we can get started. This is all very easy to do so don’t let these steps scare you off. The whole process should only take a few minutes and is very simple to get done. You will therefore need:
- Access to the Administrator account:
This is easy to do. If you are the only person using your computer then the chances that you are the administrator of your account is pretty high.
- Download and Install SolarWinds TFTP Server:
In order to use the SolarWinds TFTP Server we will obviously need to download and install it to the computer. The download link can be found above in the intro section.
- You will need Port Forwarding for External Connections:
If you are planning on using remote connections with your TFTP server then you will need to use port forwarding. UDP Port 69 is the port type and port number that you will need to use. It will need to point to the IP address of your server on your network from your router in order to allow users from outside of the network. If you only need internal connections, then don’t worry about this step as it is not needed.
Now we can get started with the rest of the setup!
What Kind of Connection Do You Need to Configure?
For external connections you will need to ensure that you configure the security settings appropriately in the application. You can select which IP addresses can send and receive files to help specify which valid hosts can transfer and receive.
Basic TFTP Server Setup
These steps will guide you through the setup process of SolarWinds TFTP Server. This will help you get the ball rolling and allow you to eventually make transfers across multiple networks possible.
- Open the SolarWinds TFTP application
- Next, click file -> configure.
- Choose the correct settings as highlighted in the following screen capture labelled 1, 2 and 3.
- 1 Shows the status of the TFTP service, 2 allows you to set the icon to appear in the taskbar and 3 is where the files will be stored by default. You can choose a different location if you want. We will be leaving ours as the default location but feel free to make any changes if you need to. A popular choice for example is the Downloads folder.
- The next step is locking down some security items. To do that, we need to go to the, you guessed it, security tab within the SolarWinds TFTP Server.
- This part is pretty self explanatory, but definitely worth looking into. We need to set the actions that we want this computer to be able to complete. If you are setting up permissions for a file server, then you might not want everyone to have access to send files to it, and instead you might only want it to server files and have them downloadable. If that is the case then you will want to choose send files. If you want to do both then select Send and Receive files.
- You can further lock down the security of your TFTP server by specifying which IP addresses are allowed to transfer files. You can do this by selecting a range of both IPv4 and IPv6 IP addresses. Our example uses IPv4 and allows 10 IP addresses to send and receive files across the network.
- We enter the range and then set the changes by clicking the OK button. Easy.
We have now configured our TFTP server in just a few simple clicks.
The Fun Part: Actually Utilizing Our New TFTP Server
The setup was pretty straight forward, and using the application is just as easy. Let’s go through the steps to make using our TFTP server a reality.
Port Forwarding Steps
This part is optional because you might not want to access your files from outside the network. This is understandable, especially because TFTP is not designed to be a secure protocol, just a convenient one. However, you can add mappings to port 69 in your router by either finding the NAT or Port Forwarding sections of your router. Each manufacturer is different, so be sure to consult your user manual when attempting to make changes to your router. If in doubt then contact your manufacturer’s support and see if they can assist you with the changes.
For everyone else, lets carry on with our tutorial!
Installing a suitable TFTP Client for Windows
The easiest way to continue is to use the default Windows TFTP that comes with the Operating System. To access it and install it onto our computer we need to do the following:
- Open the start menu and search for the control panel.
- Find Programs and Features and then click on Turn Windows features on or off.
- Find the TFTP client and click on the tick box so that the tick is visible.
- Next, Click on OK to install the client.
- Once finished, you have installed the client.
Important to note that this is the computer without the TFTP server application running, also known as the client PC.
Allow TFTP with a Firewall Configuration Change
There are 2 approaches to getting this right. The first and easiest way is to disable your Windows Firewall. This might be OK in a home setup where you trust all of your devices on the network, or in a corporate environment where management is conducted by the IT department. If you are not willing to do this, then we can create specific rules in our Windows firewall to allow traffic through.
- Click on the start menu and type in Control Panel, then click on that icon when it appears.
- Click on Windows Defender Firewall.
- Next, click on Turn Windows Defender on or off.
- Tick the boxes as seen below and then click ok
- You have now turned off you firewall.
- If you don’t feel comfortable turning off Windows Firewall we create an exception instead. To do this, we must click on Allow an app or feature through Windows Defender Firewall’ in the Windows Firewall settings.
- Click on the Change settings button to add a program.
- Next you must click on Allow another appand then hit Browse.
- Select exein the Windows system32 directory and also TFTPServer in the SolarWinds folder inside Program Files x86.
- Click open and it has been added.
- Tick the boxes called Privateand To finish, click ok.
Transferring Files using TFTP
Let us now do some local tests with the following commands.
- Press the windows key or click on the start menu
- Type cmd and press enter
- You will see a black cmd terminal in front of you. This is where we will type in our commands.
- Change directories to the path where your files are stored for sending and receiving. Let us now send a file. To do this, we use the ‘put’ command.
tftp -i 192.168.31.46 put “Test_File”.mp3
- If you want to receive a file, then the command we will use is called ‘get’.
tftp -i 192.168.31.46 get “Test_File”.mp3
We can look at our TFTP Server logs that display when we open our server app and we are greeted with the following records:
Transferring files by using TFTP is easy, fun and free. By leveraging the free TFTP server from SolarWinds, we can turn any ordinary PC into a file server with remote access capabilities.
This is useful for many reasons, and we hope that the tutorial will help you to get the correct access levels set for your own specific needs. Be sure to download the app from above so that you can follow along with this tutorial.
Better yet, check out SolarWinds and look at the multitude of monitoring, troubleshooting and control software that they have on offer. You are bound to find the right tool for the job, regardless of what you are trying to achieve!
Happy file transferring, and we’ll see you next time.
TFTP Server FAQs
What is difference between FTP and TFTP?
FTP is the File Transfer Protocol – the original file transfer system for the internet. TFTP is the Trivial File Transfer Protocol. This is a lightweight service that is usually used on private networks for moving small files to devices. Both systems can be used to either send or fetch a file and neither system includes security features, such as data encryption. As such, neither of these systems should be used to send files to remote devices outside a private network – user SFTP or FTPS instead.
Why do we use TFTP?
The Trivial File Transfer Protocol (TFTP) is fast and feature-free. It does not include authentication procedures, which means it can be integrated into task automation scripts without the need to store passwords but that also means that it shouldn’t e used to move sensitive data. The access security of private networks provides sufficient protection to make TFTP safe to use. However, even in this location, the protocol isn’t a good option for data movements. TFTP is good for moving configuration files to devices and for gathering log files from endpoints on a network to a central location.
Does TFTP use UDP or TCP?
The Trivial File Transfer Protocol (TFTP) is a lightweight file transfer system and as such, can be considered to be a stripped-down version of the File Transfer Protocol (FTP). The lack of features in TFTP makes it quick and also easy to deploy from a script. TFTP lacks authentication and session features, which are hallmarks of UDP. TFTP connections are initially made to port 69. However, continued communication for a transfer is switched to a random ephemeral port – some TFTP implementations choose to use the same ephemeral port number for all of their transactions.