Make FreeNAS 8 Do More: Configuring FTP, TFTP & SSH Services
- select the contributor at the end of the page -
In this tutorial we will go beyond disks & sharing and configure the FTP, TFTP and SSH services. I will assume you have a FreeNAS system installed with at least one volume configured. For more information on installing FreeNAS and setting up volumes see my NAS Setup Guide.
Before activating the FTP or SSH services it is necessary to create a user. The first step is to add a Group to which all users who access the FreeNAS server will be members. To do this, click “Account” in the left menu tree. Click “Group” and then “Add Group.” Enter a “Group Name” (eg. freenasusers) and click “OK.” To add a user, click “Users” and then “Add User.” In the “Add User” dialog enter the “Username” (eg. “gary”), “Full Name” and “Password” (twice). Set the “Primary Group” to “freenasusers”, select “bash” for the “Shell” and enter a “Home Directory.” The home directory needs to be a directory somewhere on your volume. If there is a volume called “store” its path is “/mnt/store” and a good directory for a user would be “/mnt/store/gary” where “gary” is the user created above. Click “OK.”
Note: If the home directory doesn't exist, FreeNAS will automatically create it with the correct file permissions.
To configure and enable the FTP service, click “Services” on the toolbar below the FreeNAS logo and then click the small wrench icon next to “FTP”. On the “FTP Settings” dialog tick the box next to “Allow Local User Login”. Click “OK.” Now click the “FTP” “Off” switch to make it go from “Off” to “On.”
The FTP service is now running. Connecting to the FreeNAS server from any FTP client (on any OS with an FTP client) will allow the user to login and upload/download files. The working directory will be the home directory specified when the user was created.
Enabling the FTP service is simple. Click “Services” and click the “SSH” “Off” switch to make it go from “Off” to “On.”
The SSH service is now running. Linux and Mac OS X users can connect using the ssh command line tool. Windows users can download a free (and popular) ssh client known as PuTTY.
Enable home directories
It is worth noting that FreeNAS can be configured to provide home directories to all Windows users. To do this click “Services”, click the small wrench icon next to “CIFS”. On the “CIFS Settings” dialog, tick “Enable home directories” and enter the path in the “Home directories” field. The path should be one level up from where you have created the user directories. Above I used “/mnt/store/gary” and so the path should be set to “/mnt/store”. If I had used “/mnt/store/home/gary” as the home directory for the “gary” user, then the “Home directories” path would be “/mnt/store/home”. Click “OK” to set the options.
FreeNAS provides a Trivial File Transfer Protocol (TFTP) service which is a simple, unauthenticated file sharing service often used to boot “dumb” devices or thin clients via the Preboot Execution Environment (PXE) found on more advanced network cards.
To configure and enable the TFTP service, click “Services” and then click the small wrench icon next to “TFTP”. On the “TFTP Settings” dialog set the “Directory” to the place where the files to be shared are stored (eg. /mnt/store/tftproot”). Click “OK”. Click “Services” and click the “TFTP” “Off” switch to make it go from “Off” to “On.”
The directory needs to be created if it doesn't exist and then the files you want to share via TFTP need to be copied into that directory.
As we have seen, FreeNAS 8 is versatile and can do much more than just share files on a Windows network.