Setting up a Small Office Network?
A not-so-anonymous Anonymous Coward asks: "I am embarking on a startup with some business contacts. I'm the only tech-guy in the group so I'll be the one to set up the network for our small office of 5-7 people. I've spent the last 15 years immersed in the development end of things (numerical analysis software and parallel computing codes). The downside of this is that I'm quite naive when it comes to networking: there's always been someone else taking care of revision control, backups, security, servers, etc., even purchasing stuff and running cable. What advice would you give someone who isn't afraid to roll up his sleeves, but is starting from ground zero on setting up a small office network? Can you recommend any books that are up-to-date and practical (e.g. "howto")?"
You won't find many better guides to layer one than Cabling: The Complete Guide to Network Wiring.
While the other parts of the equation are very important, you need to start with a firm foundation, and if you're doing your own wiring, this is the place to start.
Whatever you do, pay very close attention to your backup strategy to ensure all important data is backed up (duh). But, a backup strategy is useless if you can't restore it. You should "practice" restoring the systems you are responsible for backing up to a new hard drive and ensure the systems and data are restored correctly. While doing this you should develop a restore guide to help out when it really matters.
Doing this will provide you with:
Personally, I've found that the 'x for dummies' / 'x for complete idiots' are about as useful as a rudimentary Google search.
...
I like O'Reilly's "Missing Manual" series, so I'd suggest O'Reilly's Home Networking: The Missing Manual (coming in july 2005).
If you don't want to wait until this comes in print, I'd recommend Cisco's "Home Networking Simplified", which was reviewed on Slashdot a few days ago. From the review:
This is an almost perfect book on home networking for the person who has a Windows computer or two (and nothing else) and knows nothing. It pains me to admit that I have a number of friends who fall into this category and I would have no hesitation in lending them a copy of this book. Given the cost, I'm not sure I'd recommend this book to everyone, but I do feel that it is the perfect volume for the local library; borrowing it for two weeks while setting up the home net would be the ideal solution for people like my mate Tim, who (while a pediatric specialist) has trouble hooking up a router, or the neighbours downstairs who can't properly secure a wireless network.
Table of Contents:
Part II Simple Home Networks
Chapter 5 Creating a Basic Home Network
Planning a Network
Designing Your Network
Building Your Network
How to Build It: Connecting Two Computers
Decide on the Type of NICs
Physically Install the NIC
Internal NIC in a Desktop Computer
Internal PCMCIA NIC in a Laptop Computer
External NIC for a Desktop or Laptop Computer
Configure Windows to "Talk To" the NIC
Build a Network Between the Two Computers
Back-to-Back
Using a Hub, Switch, or Router
Set Up the Network in Windows
Troubleshooting Tips: Building a Network
Chapter 6 Sharing Network Resources
File Sharing
Printer Sharing
Practicing Safe Share
Sharing Guidelines
Network Design Guidelines
How to Build It: File and Printer Sharing
Enable File and Printer Sharing
Share a File Over the Network
Map a Shared File Folder as a Disk Drive
Share a Printer Over the Network
Map a Shared Printer
Add Security Precautions to File and Printer Sharing
If you don't know the difference between a $20 linksys router and a $1,000 cisco monstrosity, buy the linksys. If you want a file server for 6 people, buy the $300 dell dimension desktop and not the $2500 powervault file server. Setup a simple backup script, ignore raid and complex programs like veritas until you are ready to deal with them.
Other tips:
I'm employee #3 at a small startup. Since I'm the only one with an IT background (Unix, networking and security) I get to do all the IT work + the other work.... Lucky me. Here's what I did:
:( Apparently 2.6.x still hasn't worked out the bugs for LVM2 snapshots and you can get a hung kernel. LVM2 is still worth it since it allows you to resize partitions. Just don't put your root partition on it.
/etc/hosts files. hosts files work fine when you're small, but don't scale at all and getting bind/dhcpd working is easy enough where you might as well do it from the start.
Our server is a Supermicro dual Xeon box w/ Adaptec SATA hardware raid controller doing RAID10 (4x250G drives) with a Quantum VS160 DLT drive for backups. Works great and was cheaper then Dell. Linux support is great as I'm sure Windows is if you want to go that route. If you go Linux, you should only consider XFS or ext3 since those are the only journaled, relatively stable FS with a version of dump. You'll need dump (or xfs_dump) to do incremental backups once your data is larger then a single tape and tar/star won't do anymore. (Note, XFS may be unstable under LVM2... before picking it, you should do some research, but ext3 seems rock solid so far.)
OS is CentOS 4.1. Has been very stable except for doing LVM2 snapshots.
I've standardized on putting user accounts in OpenLDAP. Was somewhat a pain in the ass to setup, but now that it's working it's really worth it. Currently we have authenticating off of LDAP:
- Unix accounts
- SAMBA
- Jabber
- Bugzilla
- Snipsnap (wiki)
- Subversion (source control)
- Apache (HTTP Authentication)
- WebCal (calendaring)
Currently we outsource email, but once we bring that in, we'll do that too. Everyone loves having only ONE password which is ALWAYS in sync. Makes creating new user accounts a breeze too since there's only one database to manage.
Of course there's all the other tools like CruiseControl, Doxygen and ViewCVS which make the developers life easier. YMMV depending on your needs.
Run DHCP and DNS (I use ISC's dhcpd and bind9) and turn on dynamic updates of DNS via DHCP so you don't get in the trap of using
As for network wiring, get yourself a spool of Cat5e, some RJ45 connectors (make sure they're for solid cable, not stranded), a tester and an Ideal Rachet Telemaster. Yes you can get cheaper crimpers, but they suck and you'll hate yourself for trying to save $15.
I've standardized on Dlink DES-1026G switches. They're 24 port 10/100 with 2 Gig ports for your servers or stacking. Cost is under $200 if you look on Froogle. According to the specs, they're "real" switches with a decent backplane. I personally prefer managed swithes with VLAN's, but when you're a startup, $$$ matters.
For small companies, VoIP seems to be the way to go, but once you're around 50 people, going with a real PBX seems to be the cheaper option. Either way, expect relatively high startup costs associated with getting the related phones/etc installed and configured.
As for firewalls, well run what you know. Most firewall insecurity comes from miss-configurations, not flaws in the firewall itself. If you know how to harden a box and run iptables, I still wouldn't use that since there is a lot of effort involved. Just find some packaged firewall (OSS or COTS) which meets your needs.
Just remember to do things right the first time. It's better to put in some long hours initially to get things running well then fighting fires each week when problems start happening as you grow.
-Aaron