Uses for a Home Server

So I found an extra ethernet card in my closet and decided to turn an old pc into a pfsense router. Now I've read that you can setup a server and virtualize pfsense and a nas on the same box. What are some other interesting ideas to use my server for? Also, what Linux server distro is the most noob friendly, as I've never set up a server before?

It depends what you have in mind. Server's can be lots and lots of things and it really depends on what you define as a server.

Before I get into Operating Systems, virtualization! A nice handy dandy thing especially if you have a machine with copious quantities of CPU cores and RAM. "But wait, this is an old machine!" I hear you cry. Okay maybe it's not a good place to start (unless you want to use OpenVZ containers).

Word of warning about virtualization, due to some inhereint risks, I would advise not to run machines that border networks. (aka a router/firewall like Pfsense with one port on WAN and another on LAN). Although virtualized NAS is perfectly fine, OS's like FreeNAS will require hardware passthrough's to get to the disk controllers so they can use ZFS and can play funny if machine resources become unavailable (such as another VM using them).

Anyway, enough jibbering. If you are just getting started, I would advise you just play around with OS's on bare metal and not worry too much about virtualization. I would say Ubuntu and Debian are the most "Noob" friendly as they both have a lot of community backing and resources. (Ubuntu is based upon Debian, so although Ubuntu is nice Debian has the more "raw" experience.)

With these two you can adapt them to pretty much anything you want. You could setup a file share, website, transcoding machine, mail server, game server....etc).

Ubuntu might be a nice stepping stone, as when I first started dabbling with it all I actually ran the desktop version of the operating system. When I was adequate at using the CLI, I switched to the server OS instead. (At the core they are the same, but the desktop version has extra's for use with the GUI and pre-installed tools)

But anyway, what would you like to achieve? (and what are the machine specs?)

My largest constraint is that I'm on a slow ass DSL connection, so my server is pretty much useless outside of my own network. I tried setting up a VPN, but it was horribly slow. It's a P4, with 2GB of ram, from 2004. Pretty archaic. I have no particular goals; I've just always been interested in setting up a server to mess around with.

Fair enough, if it you are constrained down to just using it locally take a look into centralizing things that exist within your house.

For example, set it up as a central file repository so that you can access files regardless of machine or as a machine to backup to. You could do this through SMB or use a more specialized storage OS like NAS4Free (I wouldn't use FreeNAS as it likes a lot of RAM).

Alternatively you could connect some speakers up to it and use MusicBox as a way to play (audio) media from multiple devices.

If you have no goals, then literally just think of something random and learn how to do it.

And now pfsense keeps randomly dropping to zero download bandwidth every few seconds. I guess that's what you get for using old junk for a router haha. This is what it says when it happens:

Jul 1 17:58:27 check_reload_status: updating dyndns WAN_PPPOE
Jul 1 17:58:27 check_reload_status: Restarting ipsec tunnels
Jul 1 17:58:27 check_reload_status: Restarting OpenVPN tunnels/interfaces
Jul 1 17:58:27 check_reload_status: Reloading filter

Edit: I restarted my modem and it stopped for a few seconds, but started dropping again. :(

Edit 2: The connection only drops out when I'm torrenting?? I'm so confused.

What are you PPPoE setting? Sounds like an issue with the system handling multiple routes.

EDIT: Also what is the modem?

Sounds like you have enough RAM, but what does your state table size look like? Torrents can generate a lot of concurrent connections which can crash your router. I used to have this problem before switching to pfsense by since then haven't really experienced it. You could try lowering the number of peers in your torrent client.

You could also try disabling the apinger service, it monitors your gateway and gives you information about the latency (You've probably seen it on the dashboard). It's also used to switch gateway if you're using a multi-WAN setup if the connection quality drops, but if you're on a single-WAN setup then it restarts the interface. So if it's pings can't get through because of lots of torrent traffic it will restart the interface.

Disabling it is the easiest solution but if that works and you'd still like to have the info on your dashboard let me know and I'll tell you how to change the settings so it will stop dropping your connection.

It's that standard Motorola modem that AT&T hands out to all their DSL customers. I've actually installed Ubuntu Server and am now trying to virtualize pfsense using phpvirtualbox. I got it up and running, but am having trouble configuring the WAN and LAN ports.

Well I removed pfsense and am attempting to virtualize it using Virtual Box and Ubuntu Server. Hopefully I'll manage to get that working by the end of the week haha.

Edit: Finally managed to get it running by cloning the mac addresses of my physical ethernet cards.

Edit 2: For some reason half the sites I access don't work. All Google sites work fine as well as Tek Syndicate...

Edit 3: Now nothing works. Something about bad DNS config...

Edit 4: Fixed the issue by changing my router subnet. There doesn't seem to be much of a performance hit. I wonder what the security implications are to virtualizing my router? The only issue I have now is that I can't access the internet on the server. How do I fix that?

If you are looking at doing things in VM take a look at ProxMox, Nice web interface easy config.

I would like to know too. I don't see a problem especially for a home network.

How are the NICs configured for the VM? Bridged to host?

Correct. They are both bridged with cloned MAC addresses. That was the only way I could get a connection.

I don't know of any known exploits or specific issues with this. But the basic problem is that you have the internet connected directly to your server, which is a core network device. Even though logically it's connected to the router which is an edge network device you still have a physical connection to the server which may be exploitable.

The other issue is that by virtualising you're adding complexity and therefore increasing the attack surface which will increase the probability of an attack.

1 Like

Well right now I can't even get the server to connect to the internet outside of the VM, so that's one thing less to worry about haha. I might just buy a low power pc and dedicate that to pfsense instead. It was more of a do it just to see if I can kind of thing.

I also run pfsense as a VM with essentially the same setup for NICs. Setting the default gateway of the host to the internal IP of the VM works for me.
What sort of behavior are you seeing? Can you ping outside from the host? Can you ping the VM?

I can ping everything on my home network, but nothing outside. I.e. ping -c 3 www.google.com gives me unknown host.

Hard to say with unknown host. Could be a name resolution issue. Can you ping outside by IP such as 8.8.8.8?

100% packet loss. What device did you change the default gateway for?

I configured it like this:

br0 (eth0) LAN network. Host has fixed IP 192.168.63.31 and default gateway 192.168.63.1
br1 (eth1) WAN network. Bridge only. No configuration.

VM bridges to both NICs. WAN IP via ISP dhcp, LAN IP fixed to 192.168.63.1.

Well I did that and it makes the pfsense webconfig inaccessible due to my Apache server running on the same IP. Still can't ping any outside hosts on my server either.