• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 364
  • Last Modified:

FTP Permissioning

I am running an FTP server on RH6.  I have 2 questions.
I created a directory called upload. I have permissioned the Dir so that everyone has 'rwx' access (chmod 777).  However when I ftp into it I still can not upload files to that dir. It tells me upload access is denied.
Assuming I can get that working, then my second question would be:

How would I give just one user write or upload permission to
the upload dir on my ftp server (/home/ftp/upload)? Would have to make him a new group and do a chgrp on the directory??

1 Solution
If you have an /etc/ftpaccess file, you need a line in it that says something like

upload /home/ftp /incoming yes ftp ftp 0666

in which you should replace /home/ftp with the actual ftp 'root' directory, and under /home/ftp you should have an incoming/ directory with permissions 0777.  I think you also need to have an 'ftp' user created.  the ftpaccess and ftpd man pages have more details, but I think this is the part you might be missing.

The way wu-ftpd (which is what I think that version of redhat uses) handles users by default is it chroots the ftp user to his 'home directory', so the 'ftp' user winds up in the /home/ftp directory (which looks like the only directory since he's chrooted), and the user 'joe' winds up in /home/joe, where he has whatever permissions the upload command gives him.  I could be wrong here though since it's been a while since I messed with this.  
Actually wu-ftp doesn't chroot to the user's dir. Ordinary users (as listed in the passwd file) have normal rights with respect to uploading/downloading. If they can read/write to a dir while directly logged in they can upload/download to those dirs from ftp.

When you set up anonymous ftp, wu-ftp does chroot to the anon ftp dir.

As noted /etc/ftpaccess can be used to limit/grant ftp privs. You can see what can be done by looking at "man ftpaccess"

For fine-tuned config, You'd better off with proftpd. It has Apache-like directory directives to control permission. Also, users will access the sites with the same rights as OS user (so, you can tweak UNIX-style file/directory permission to your like), and it is easy to turn the chroot on for all users, one single directive in the main config file: DefaultRoot ~.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Build your data science skills into a career

Are you ready to take your data science career to the next step, or break into data science? With Springboard’s Data Science Career Track, you’ll master data science topics, have personalized career guidance, weekly calls with a data science expert, and a job guarantee.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now