Upload Files to Azure Blob Storage with FTP/S | JSCAPE

With the JSCAPE MFT Server, you can easily upload files to Azure. Learn how you can upload files to Azure Blob Storage using FTP/S online at JSCAPE.
  1. Blog

A lot of automated business processes out there use FTP or FTPS to upload data to a server. What if most of it is unstructured data like videos, images, and audio files, and, instead of an FTP/S server, you would like Azure Blob Storage as the final destination for all that uploaded data. That should be fairly easy if your FTP/S service is running on JSCAPE MFT Server. We'll show you how to set up MFT Server for that particular purpose in this post.

Watch the video

Would you prefer to watch a video version of this tutorial instead? You can play the video below. Otherwise, just skip it if you wish to continue reading.

Ok, I'm here on Microsoft Azure Storage Explorer, where you can see a couple of blob containers on the left side of the screen. The container I'm going to use in this tutorial is the one named 'jcpv-test'. Notice that there is currently no data in this blob container.

upload files to azure blog storage via ftp - azure storage explorer

Now, before I proceed, you might ask β€” doesn't Azure Storage Explorer have a way of uploading files directly to Azure Blob Storage? Yes, it certainly does. You can even see an Upload button on the screen. But remember, we're mainly concerned with automated uploads here. So, you probably already have a bunch of FTP/S clients that use some automated mechanism (a script perhaps) to upload files to an FTP server. Azure Storage Explorer isn't suitable for workflows like that.

Now that we have that out of the way, let's proceed to my JSCAPE MFT Server instance. Notice that I already have an FTPS service ready to accept files from FTP clients.

upload files to azure blog storage via ftp - ftps service

The next thing I need to do is add an Azure Blob network storage object. To do that, I just go to the Network Storage module and then click the Add button.

upload files to azure blog storage via ftp - network storage

When the Add Network Storage dialog appears, I simply expand the Protocol drop-down list and select 'Microsoft Azure Blob Service' and then click OK.

upload files to azure blog storage via ftp - add azure blob storage network storage

That should bring up the parameters dialog for this network storage object. Let's proceed by giving this network storage object a name, say, 'ns-azureblob'. Depending on how your target blob container is set up, you might need to tick the Use SSL checkbox.

After that, proceed to the Authentication section and then enter your Storage account name and its corresponding Access key.

upload files to azure blog storage via ftp - azure blob storage parameters

Next, scroll down to the Advanced tab and then enter the name of your blob container in the Remote directory field. In my case, I need to enter 'jcpv-test'.

upload files to azure blog storage via ftp - remote directory

If you want, you can test the connection by clicking on the Test Server button. If the test passed, you may then click the OK button to finalize the network storage creation process.

upload files to azure blog storage via ftp - test server

Once you get back to the main screen, you should see your newly created Azure Blob Storage network storage object among your list of network storage objects.

upload files to azure blog storage via ftp - newly created network storage

We're not yet done here. We still need to create a user's virtual path or just edit an existing virtual path and have that path point to the network storage object we just created.

To do that, just go to the Users module, select an existing user account (in my case, that would be 'user-azureblob') and then click Edit.

upload files to azure blog storage via ftp - edit user

Navigate to the Paths tab and then either create a new virtual path or edit an existing path. In my case, what I want is, when a client logs in using this user account, it shouldn't have to navigate into any other directory anymore. I want that client to simply upload any files it wishes to upload straight into the virtual path it sees upon login. That path is normally the root path of the account.

So, I'll just select the root path, marked by the forward slash (/) here, and then click Edit.

upload files to azure blog storage via ftp - edit path

Next, in the virtual path parameters dialog, I click the Network Storage option and then select the name of the Azure Blob Storage network storage object from the drop-down list.

So, in effect, any upload made on this root virtual path will actually be uploaded to my 'jcpv-test' Azure blob container.

Click Ok to proceed.

upload files to azure blog storage via ftp - edit virtual path

upload files to azure blog storage via ftp - newly edited user

We've got everything set up, so let's give this a test run.

I'm now in a file transfer client, where I've entered all the pertinent details for connecting to my FTP service on my JSCAPE MFT Server instance.

As you might have guessed, 172.31.4.180 is the IP address of my JSCAPE MFT Server instance. 21 is of course the default port number for FTP, which, as you probably noticed earlier, also happens to be the port number I'm using on my FTP service.

Lastly, if you recall, 'user-azureblob' is the username of the account whose virtual root path I edited earlier.

upload files to azure blog storage via ftp - ftp client

Upon connecting, I should see the blob container on the right hand side. Remember that it didn't have anything inside it so the right side is empty. I've now uploaded a couple of files (file01.txt, text1.txt, text3.txt, and text4.txt) to it.

upload files to azure blog storage via ftp - file transfer

... and if I double-check in my Azure Storage Explorer, sure enough, I see those same files in the blob container 'jcpv-test'.

upload files to azure blog storage via ftp - azure storage explorer uploaded

That's it. Now you know how to upload files to Azure Blob Storage via FTP/S.

Try this out

Would you like to try this out yourself? Download the FREE, fully-functional Starter Edition of JSCAPE MFT Server now.


Download JSCAPE MFT Server Trial