I'm intrested in learning about using Linux as a server. Nothing serious, just serving some files to friends with my extra bandwith. Where should I start to learn about this stuff? I'm next to clueless!
If I have the gift of prophecy and can fathom all mysteries and all knowledge, and if I have a faith that can move mountains, but have not love, I am nothing. 1 Corinthians 13:2
Make required ports accessible
For services, you'll mostly run daemons. These programs are active in the background and listen to certain ports, such as port 80 for the HTTP server, 21 for the FTP server and 22 for SSH. To make services available to your friends, you'll at least need to make these ports accesible from the internet. This is already the case if you're connected directly, but if you're using a router you'll probably have to configure it to forward incoming connections on the ports you want to use to your internet IP.
Install necessary software
For most services you'll have multiple daemons to choose from. For HTTP and FTP, I chose the apache and proftpd packages.
Having them run as a service when you boot your system
I really like Arch Linux' approach on this. Basically for each service it places a script in /etc/rc.d, which accepts start, restart and stop as commands. You can run these manually when you need the service, but generally you want to add them to DAEMONS in /etc/rc.conf. Then they'll start and stop with your system.
Configuring a service
Like many software, these daemons will generally have their configuration files in /etc, like /etc/httpd/conf/httpd.conf and /etc/proftpd.conf. You'll have to see the comments and manuals about how to set things to your own needs.
After changing a configuration, you generally have to restart the service, you can do so with the appropriate script in /etc/rc.d, passing it restart as parameter.
Edit: Yeah, I woke up in the middle of the night. It's almost 4 now.
A Free Real-time Massively Multiplayer Online RPG in development.