Install and Configure SFTP server on ubuntu 15.10 server

Sponsored Link
This tutorial explain how to install SFTP server using MySecureShell on Ubuntu 15.10 server.MySecureShell is a solution which has been made to bring more features to sftp/scp protocol given by OpenSSH. By default, OpenSSH brings a lot of liberty to connected users which imply to thrust in your users. The goal of MySecureShell is to offer the power and security of OpenSSH, with enhanced features (like ACL) to restrict connected users.

MySecureShell was created because of the lack of file transfer features in OpenSSH. OpenSSH was not designed as a file transfer solution, that’s why we made MySecureShell.

MySecureShell Features

Bandwidth control
Only authorized files and folders can be shown
Advanced logging information
ACL can be made with IP/Usernam/Groups/VirtualHost/...
Confined environments (chroot, which is also available in the latests version of OpenSSH)
Restrict users to have sftp only (shell access is disabled by default)

Install MySecureShell on Ubuntu 15.10 Server

Open the terminal and run the following command

sudo apt-get install mysecureshell

This will complete the SFTP server installation.

Add users for MySecureShell

You can add users using useradd command .You can also update the existing user account to get access to MySecureShell server by edit the /etc/passwd file.

Add New User

sudo useradd -m -s /usr/bin/mysecureshell test1

sudo passwd test1

Adding Existing user to MySecureShell Server

From Command line

sudo usermod -s /usr/bin/mysecureshell test2


sudo vi /etc/passwd

Change columns "shells" and replace it by "/bin/MySecureShell".

test2:x:1006:500:DSE Testing:/home/sftpusers/test2:/bin/sh


test2:x:1006:500:DSE Testing:/home/sftpusers/test2:/bin/MySecureShell

Save and Exit the file.

You can test your SFTP server using any SFTP client or from ubuntu system use the following command

sudo sftp [email protected]

How to check who is connected to SFTP server

Use the following command to check who is connected to SFTP server


How to Control of bandwidth

You need to edit the /etc/ssh/sftp_config file and Global Download tag allows to limit the maximum download bandwidth for the overall server.


In this example, all users will be able to download up to a 100k maximum bandwidth and the total maximum bandwidth allowed for the server is 1M


Home /SFTP
GlobalDownload 1M
Download 100k


Check Mysecureshell Documentation for detailed configuration options.

Sponsored Link

You may also like...

1 Response

  1. Pawel says:

    Would you know how to define the monthly bandwidth usage per a user in MySecureShell? Let say a given user’s account is going to be suspended to the next month if this user downloaded 2 GBs of data?
    I don’t want to limit download/upload speed but I want to stop any download activity for the user if this use hit the maximum allowed amount of data per month.

Leave a Reply

Your email address will not be published. Required fields are marked *