Need help setting up an FTP server

Status
Not open for further replies.

Pyroflea

Distinguished
Mar 18, 2007
2,156
0
19,960
Me and a bunch of friends have all embarked on a rather large project, and I'm trying to ease the sharing of files. Since I have a server sitting around and not getting much use, I figured I could make an FTP server where people can just drop/grab the files we need.

I have never done anything like this, and have never even exposed anything externally, so I'm a bit hesitant. I also just don't know which protocols or packages to use, and have even less of an idea how to configure them.

Basically here is what I want to achieve:
- SECURE access to my sever
- Separate user accounts for each person (mostly for logging purposes)
- Each user is confined to a single, specified directory, and can upload/download files from here

I've seen people recommend using FTPS via the vsftpd package, and use SSL. I've also see people just suggest installing the OpenSSH-server package and using SFTP.

No real idea what I'm doing here, so suggestions would be fantastic! :D

Thanks guys,


- Jesse
 
Solution
I would use SSH and SFTP. But, may I make another suggestion:

If there is any possibility of more than one person wanting to work on the same file, then you should consider a Revision Control System rather than simple FTP. This way you can avoid the possibility of conflicts between multiple updates to the same file.

A widely used system, and my favourite, is Subversion. There a free book available that will explain how to install, configure and use Subversion. It's an O'Reilly title, so the provenance is good.
I would use SSH and SFTP. But, may I make another suggestion:

If there is any possibility of more than one person wanting to work on the same file, then you should consider a Revision Control System rather than simple FTP. This way you can avoid the possibility of conflicts between multiple updates to the same file.

A widely used system, and my favourite, is Subversion. There a free book available that will explain how to install, configure and use Subversion. It's an O'Reilly title, so the provenance is good.
 
Solution

Pyroflea

Distinguished
Mar 18, 2007
2,156
0
19,960
Well, after a few frustrating moments (which were most likely due to my own errors :D), I got a Subversion server set up, using SSL. All just local so far.

One thing I was wondering. What do you guys generally recommend for a web interface (if you have a preference)? The rest of the people in this project aren't exactly Linux-savvy, so I don't want to force them to learn Bash/SSH and whatnot. Would just like a nice easy interface they can use.
 

Pyroflea

Distinguished
Mar 18, 2007
2,156
0
19,960
Alright, thank you. The problem is the tools we're using are available only on Windows. If they worked on Linux, I'd just get everyone to use that and use the CLI since that's so much easier (IMO). I'll have to look into toirtoisesvn and similar alternatives.

Thanks again,


- Jesse
 

Pyroflea

Distinguished
Mar 18, 2007
2,156
0
19,960
Alright, well I tried out WebSVN and it's working just fine. Got SSL working with it as well, and have account/password authentication. Sweet!

I think I might try to convince them to just use the CLI though, as it's just so easy. I'd write them a batch script, but I'm not sure how to handle the username/password prompts with that. We'll see though.
 
Good stuff!

I think you'll find that revision control is a great boon for a system with separate users/developers. It's even quite a good thing to use on a system with a single-user. For starters, a repositry of /etc and any changes to it could be a good idea.

I use it mainly because I like to use different machines to develop the same system, but it's also handy to be able to roll back to previous versions and to be able to compare files to see what changes you have made.
 

Pyroflea

Distinguished
Mar 18, 2007
2,156
0
19,960
I've still got to learn how to do a few more things, but I've made a test repo, checked out locally, modified files locally, and then committed them to the server. All working so far!

Thanks again for the help,


- Jesse
 
Status
Not open for further replies.