File sharing is the act of sending a file or a document from one device to another over a network. Computer files can be shared with someone in the same homestead, a friend from another continent, or a work colleague. Files and folders are transferred using different methods such as over a messaging application, using your operating system, from a cloud storage service, or with a file transfer tool. In order for the file-sharing process to be successful, File Transfer Protocol(FTP) is applied. FTP is a commonly used network protocol; mainly applied in transferring files between devices over a network. In a File Transfer Protocol architecture, we have a server(sender) and a client(receiver). Thus, files are uploaded to the server from a computer and then sent to a client via FTP protocol.
Notably, when you are on the internet, file sharing is enabled by Hypertext Transfer Protocol(HTTP); which allows you to interact with web pages. Additionally, Web Distributed Authoring and Versioning(WebDAV), which is an extension of HTTP, is responsible for letting clients edit the content on the internet. It makes it possible for a web server to act as a file server and allow authors to interact with web content. Thus, file sharing is crucial and can be done over the internet or through physical devices but the security of the files should be highly observed. In this guide, we will tackle an SFTP(Secure File Transfer Protocol ) by the name SFTPGo which ensures sharing of files is safe and efficient.
What is SFTPGo?
We all like it when we transfer data in a secure manner whether online or offline. Thus, consider using, SFTPGo software which stands for Secure File Transfer Protocol(SFTP) written in Go programming language. It has a full range of functions and features. You will enjoy using SFTPGo from different operating systems such as Windows, macOS, and Linux. It is a highly configurable SFTP server that supports FTP/S and WebDAV protocols. Hence, this guide will take you through setting up a Secure FTP Server(SFTP) on Windows using SFTPGo.Note that these steps will assist in sharing files securely.
Features of SFTPGo
- SFTPGo accounts are stored in a virtual user base:Meaning it does not interfere with the system user database.
- Supports authentication using SSH keys, public keys and passwords.
- MySQL, PostgreSQL, SQLite, Bolt, and CockrachDB are supported.
- Storage backends are supported which include: Local filesystem, S3 Compactible Object Storage, Azure blob storage,Google Cloud storage.
- Supports SCP, FTP,FTP/S, SFTP and WebDAV.
- Terminates idle connections automatically.
- Configure format is flexible:TOML, JSON,HCL.
- HTTP notifications on upload, delete , rename and download.
- Configurable custom commands.
- REST API: users and quota management.
- Free and open source SFTP server.
Installation of SFTPGo on Windows 11 / Windows 10
Bearing in mind that SFTPGo comes with a lot of benefits, it is crucial to install and use it for file sharing.
Downloading of SFTPGo on Windows
Let’s start by downloading the SFTPGo file from Github releases.
From the above illustration, access the SFTPGo file for Windows from the list. Double click on the .exe file that matches the specifications of your computer.
SFTPGo file will take some minutes to download. You can get it from your downloads after the process is completed.
Installing of SFTPGo on Windows
Click on the SFTPGo .exe file and run it as an administrator.
Go ahead and accept the license agreement.
Select where the file will be located on your computer.
The next step will ask for a place where the shortcut for the SFTPGo file will be stored.
Continue the process of installation by clicking on the install button.
A window will open showing the SFTPGo setup as it installs.
On the next step, click on the finish button to complete the installation process.
To start using SFTPGo on your computer, there are a number of things you are required to do. Let’s start by creating an SFTPGo Admin account.
Creation of SFTPGo Admin Account
This step will be done by opening this link on your web browser. A web page will appear where you are required to fill in your preferred username and password.
Click on create an admin and you will be logged in automatically.
You can confirm the admin account you have created by clicking on the Admins icon.
Authentication in SFTPGo Admin
Security is the function that everyone pays attention to when sharing files. Luckily, SFTPGo has a feature on Two-Factor authentication to enhance the safety of data when been shared across users. On the Admin’s account click on the button with 2-FA authentication.
From the screen that will appear, choose default on the configuration part. Go ahead and download the TOTP authenticator app on your mobile device. From the application, Scan the QR code on the SFTPGo Admin account.
After scanning is successful, an authentication code will be generated on your TOTP application which you will fill below the QR Code on the SFTPGo Admin account.
Close the window on authenticating to save the changes. Every time you log in to the SFTPGo Admin account, you will be asked to enter an authentication code generated from the TOTP app.
Creation of SFTPGo Users Account
From the SFTPGo dashboard, click on users. Hit on the + icon to add a user.
A new page will appear where you will fill in the blanks on the required fields for username, password, or public key.
Also, you will have to set up a Home Directory for the new user. Copy-paste this on the Home Dir section:
Then click on submit to create the user account.
A new user account will be created successfully.
Usage examples after Setting up Secure FTP Server(SFTP) on Windows using SFTPGo
Now, you have two accounts which include the Web Admin(server) and Web Client(user). Log in to the user account using the credentials we created as illustrated below.
Uploading a file in SFTPGo Web Client
When you log in, the first thing you see is the SFTPGo WebClient Home where you can perform a couple of activities such as uploading, downloading, editing, deleting, adding a folder, or sharing files. To upload a document, click on the first icon as shown below.
A small window will appear requesting you to choose a file from your computer.
Select the file/files you wish to upload.
Hit on the submit button to upload a file.
The file will be successfully added to the SFTPGo user account.
Creating a folder in SFTPGo WebClient
To create a new folder, click on the + sign on the Home section.
You will be directed to another tiny window. Type the name of the folder then submit to create a new folder.
Here is an illustration of the folder we have created.
Renaming a File in SFTPGo WebClient
In order to rename a file, click on the edit icon then mark the check box of the file you want to rename.
Click on the selected file and give it another name then submit.
From the home section, you will note that the name of the file has changed.
Deleting a File or Folder from the SFTPGo WebClient
Start by selecting the file/folder you want to delete. Hit on the delete icon to get rid of it.
A screen will pop-up asking for confirmation on deleting selected items. Click on the delete button to remove the file or folder.
Downloading a File from the SFTPGo WebClient
To download a file from the SFTPGo user account, select it then click the download button. Find the file on your computer downloads after the downloading process is over.
Add a New Share on SFTPGo
SFTPGo when installed on windows, it allows you to directly add a file from your computer; after you specify the path and file name.
Keep in mind that you can protect the file with a password and add a description.
From the view and manage shares, users can see the file that has been added. From these examples, feel free to install and use SFTPGo on your Windows while sharing files.
When you set up a secure file transfer protocol using SFTPGo on Windows operating system, it means that you don’t have to worry about data security and compliance. Thus, you can easily share files with remote clients and help with technical file transfer issues. Follow the above guidelines, create your server and users’ accounts, then start transferring data. Note that SFTPGo is software that will give you peace of mind since files are not tampered with by unauthorized individuals. In case you need more clarifications, leave a comment below.