Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I asked this a little bit ago, but instead of specifying Pure-FTPD I just said Apache. Per the answer to that question, I'm asking again with "Pure-FTPD" in the title this time.

I need to allow someone access to my VPS via FTP, but there are a number of directories that the person must not be allowed to view or modify. For example, something like this:


In this example, the FTP user would need to be allowed to do stuff in the public directories, but not the private ones.

How do I go about doing this with Pure-FTPD? I have cPanel and SSH access.

share|improve this question
Just curious, how is apache relevant to the question? I am referring to the apache2 tag and the "apache server running pure-ftpd" statement. – chutz Dec 9 '12 at 23:56
@chutz - I guess nothing? I removed the apache tag. – Nate Dec 10 '12 at 1:02
up vote 1 down vote accepted

If you use PureDB users, you could use the -d homedirectory option to chroot user to his home directory on account :

pure-pw useradd myuser -u ftpuser -g ftpgroup -d /home/ftp/myuser

To provide access to specific folders (often seen for webservers), use symlinks.

www -> /srv/www/myuser

[UPDATE] Misread the post about jailing user.

You could either create another virtual user/group which would restrain filesystem access, although I'm not sure it would be safest thing to do (some people with better experience than me could answer).

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.