Skip to content

Sftp

syntaxConfigure SFTP server on Linux

create directory for the sftp data and set permissions:

1
2
3
sudo mkdir -p /mnt/sftpData
sudo chown root:root /mnt/sftpData
sudo chmod 755 /mnt/sftpData

Create a group to manage SFTP users

1
sudo groupadd sftpusers

Create a subdirectory for the user in /mnt/sftpData and set ownership:

1
2
3
sudo mkdir /mnt/sftpData/sftpuser
sudo chown sftpuser:sftpusers /mnt/sftpData/sftpuser
sudo chmod 750 /mnt/sftpData/sftpuser

Edit the SSH configuration file to set up SFTP with chroot jail:

1
2
3
4
5
6
7
8
9
sudo nano /etc/ssh/sshd_config

#Add into the bottom of the file:

Match user sftpuser
    ChrootDirectory /mnt/sftpData
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

restart sshd and ssh services:

1
2
sudo systemctl restart sshd
sudo systemctl restart ssh