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")?"
This actually would be your best bet. Perfect for your situation. "Networking For Dummies" can be found at almost any bookstore.
Networking All-in-one Desk Reference for Dummies (For Dummies S.)0 5/qid=1121267178/sr=8-1/ref=sr_8_xs_ap_i1_xgl/202- 7028557-5627019
:)
http://www.amazon.co.uk/exec/obidos/ASIN/07645426
If you have no experience what so ever it might be a good place to start
Move your revision control, backups, security, servers, etc stuff to India.
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:
That is, do you you also want basic connectivity and setup info? (Installing LAN cards, or getting motherboards with builtin LAN, is like Step Zero.) Anyway, remember the Internet as a source of data. Sometimes this is better than books, and sometimes not, due to how data-condensing (less pages to look through). For a Windows setup, here is a tutorial. For a Linux setup, other places certainly exist. Choosing the network environment is probably Step One....
You're a startup and one would assume that you plan to grow and grow rapidly. Either that or you plan for the company to die. These two alternatives offer three possibilities for your network.
1. Do it yourself with Linksys and die.
2. Do it yourself with Linksys and then scrap it all in two months and have a real architect/engineer do it right. Waste money and die.
3. Hire a real network architect/engineer and do it right from the onset planning and scalability are critical from the very begining. Prosper, assuming your business model and plan don't suck.
Yeah, I recommend you phone microsoft. They'll help you out. You'll want a windows server, definitely. Windows 98 is best for this. Don't bother with a firewall, they're a communist conspiracy.
This goes to show that all developers do is read slashdot. Now had the poster of this question copied some of the key phrases into google he would have found more answers than the book he was looking for.
My vote is to give this user a book on "How To Use The Web To Find Information"
Be humble! Seek help when you need it. It sounds like you have a "can do" attitude which can take you a long way, but I can tell you from personal experience that an inexperienced person can spend a lot of time and resources on problems which a call to someone with a bit more experience could quickly resolve. Be honest with your partners! It's real easy for us to position ourselves as gurus, but more difficult to be honest about our strengths and weaknesses. I've seen many shops where systems were poorly designed because the "tech guy" was unwilling to admit that they were in over their head.
For a small office setup, you only need a small set of literature:
- A general practical how-to guide (pick one or two from the dummies books at Barnes & Noble or whatever)
- A recent copy of a PC Connection or CDW catalog (which mostly targets small offices)
Then find a good store within 20 miles that specializes in cabling, connectors and electronics (not Radio Shack), and make nice with the guys. You can bounce ideas off them, and they are usually only too happy to give you their $0.02.
And finally: figure out what you're trying to support, for how long, and for how much $ before you start implementing a technical solution for it. This will help you set scope and expectations, and it will largely determine how successful your efforts are perceived to be in the end.
This is exactly what I am currently doing, so I can offer some advice.
I know the question is about books, but really, I doubt you need 'em. I personally didn't read any books about the subject. I've found that books are far, far inferior to just playing with the damn thing.
First, if you are totally lost about networking, just googling "windows networking" or "networking tutorials" brings up wealths of information. (I will assume you are using Windows...)
Second, I suggest that you review Microsoft's website, and review their excellent documentation. I would suggest, for your needs, that you consider Microsoft SBS: http://www.microsoft.com/windowsserver2003/sbs/tec hinfo/default.mspx
Microsoft does sell some books about SBS and windows 2k3 server, but AFAIK those entire books are just printouts of the material MS provides for free online... say what you like about MS (I despise windows, honestly), but they *do* provide a lot of well-organized information for their clients.
Third, join some good technical message boards. These are the lifeblood of self-taught network admins. :)
Don't be afraid to bug people on message boards... most boards are filled with helpful people who would love to point you in the right direction. Also, I find just going onine and saying, "WTF is this thing doing?" and having a helpful, custom reply is a lot more handy (and educational) than pouring through some clumsy and out-of-date book, not even knowing if the answer is in there.
All of this, of course, is my experience due to my personal behaviors and tastes, so of course YMMV.
oh, and don't forget to have fun with it! ;)
multifariam.net -- yet another nerd blog
Having been the tech guy before, doing all the setup, do yourself a favour and document everything you do. Setup a linux box somewhere and install wiki, and whenever you do something/install a system/change the network, just record it. don't worry about formatting etc, just keep it somewhere. Then, when things quiet down, go back and clean it up. Then you'll know in a couple years why it was important that cable X ran to Y after Y has been moved and you go 'wtf was I thinking'.
... going back to fix these things is a pain in the ass later, but is easy to do from the start.
Or, if you happen to leave, you're leaving a good legacy for the next guy.
I know documentation is the bane of everyones existance, but when you're designing a new network from the ground up (including servers, workstations, etc) a little pain == lots of gain.
Additionally, create (and document) some quick policies and procedures now - things like passwords/external access/storage locations/naming conventions
Good luck.
We emerge from our mother's womb an unformatted diskette; our culture formats us. - Douglas Coupland
Look at Linksys or D-link products for networking. as for source control, Perforce or AlienBrain are reportedly good. Avoid Visual SourceSafe at all costs. StarTeam and ClearCase usually aren't worth the money for a team your size. You can e-mail me.
Or, one could assume that the people involved are interested in having and controlling a successfull small business. Sure, you may not get stupidly rich, but there can be a lot of satisfaction in simply controlling your own destiny and turning a profit every year.
And even if you *do* plan to grow the number of people in the company, the likelyhood is that you're not going to do it in the first six months, and that when you do, you're going to *move*. In the meantime, building up infrastructure is a waste of time. Building a small, reliable net that you don't have to dick around with on a daily basis should be your goal. When it's time to grow, buy new stuff. It will be cheaper and more capable then than it is now.
Intel Lan cards only. Don't cheap out on this one, buy them used on ebay if you don't have the money for new ones. Netgear 16 port 10/100 switch. Buy a 1000' foot spool of stranded, patch cord CAT5 cable, 200 RJ-45 connectors, a decent crimper and learn how to do your own cables. If you're a windows shop, use XP pro and server 2003 small business. It will work and server 2003 can be set up with hot-swap mirror raid for almost nothing. Keep the server (and the desktops) behind the firewall. Alas, I have no good suggestions for a cheap firewall router. If you use Linksys, keep a spare configured and ready to go.
"Eve of Destruction", it's not just for old hippies anymore...
Mac OS X Server packs a heck of a lot of nice functionality - right on spot for what you need to start up your network. Combine that with a nice management interface, virus-free operation and regular upgrades. Lots of the software is open source, so you can extend it more or less in the same way as a Linux setup.
If you can afford it, get an XServe with everything installed. If not, get the software and install on an older machine cheap from eBay. Mini Mac makes nice clients.
The future is in beta
Don't staple through the Ethernet cable.
Find a reliable contractor to come in once a week to set this up for you. You should be focussed on bringing in money, not doing level 1 desktop support.
Code development and system administration are completely different skills. If you understand that you will have a much better chance of suceeding.
The various for dummies, for complete idiots, and similar books are generally good introductions. You are going to need more then one book. At a minimum one that deals with networks, and one that deals with system administration.
You will need to decide on a maximum budget for IT stuff. You can easily spent that ammount, regardless of how much it is. Like buying a car, it is good to determine you maximum ahead of time.
You will need to determine what services your network will provide. Just Internet? Will you want a network printer? A file server? Do you need a revision control depot? Do you want full backup of each client over the network? While working out these details remind yourself that you are building a business network, not a home network.
You will need to decide what OS you will use. A single OS is always easier to work with. A free *nix server will save you money. Your choice of OS must be requirements based. Don't choose MacOS because it is fun when you will need to run an application that is only published for Windows. Don't overlook the alternatives because "windows is the default."
Once you have a basic design you may want to look at outside help. Chances are you know a sysadmin that you would hire on for a short contract.
When putting the system together aim for the mid priced solution. The cheap stuff will cost you time and effort to maintain. The cadillac solution is expensive and you will probably want to replace it in a year or two anyway. The mid priced stuff is almost always going to work well enough. Avoid ordering too much through priceline. Building a good relationship with a local vendor is worth more then the few extra dollars you will pay. Alternatively the (business) tech support from IBM, HP, and Dell is good despite the complaints on the Internet. However IBM, HP, or Dell won't sit down to talk about your setup, while a local vendor will. (do shop around for vendors though. too many are cheap discount shops selling crap.)
Get some help. There are lots of very good people out there who can come sit down with you for a day or two and talk with you. It will not cost you a lot. Read a Dummies book first, but don't buy anything until you talk to them.
Probably check thier references out first.
They can see issues that you will miss until it is too late:
Security issues. Can this cable with this type of cover be run through the drop ceiling. Why you want to be sure not to get a kink in you wires while running them (cable run incorrectly can work but be slow). What a UPS is. Why you want offsite backups, etc..
Another reason to get some help early on is that you want to have someone as a backup. If you are out of town, sick, or dead you want someone who can help and also some one who knows what is going on. You also have a known person you can call at 3:00 am if needed.
I had a client this month who needed to get their home network set back up. The husband had died suddenly. He did all the setup. The home network was a strange mixture of Linux and Apple boxes. They used VPN from between the office and the home and the office.
He had all sorts of tricks setup. One network but it looks like he had different subnet masks setup on different machines. No admin passwords were known or written down anywhere. We did not even know what kernel he was running as he had tried newer ones and stepped back (it didn't help that I was the third person to look at this and the other s tried things). If someone else was involved or if things were written down it would be much much simpler.
Even if you do it completely yourself, run it by someone after you get it stable. I would bet you could even get someone to do the following deal:
You set it up, they come in and look at it and if you do not get told about issues that need to be taken care of that you missed the consult is free.
Good luck
Let's start with the wiring. Generally, you're going to find that if you are in a VERY small office, like it sounds you might be, longer patch cables will be all you need to hook up PCs to the switches. If you need to maintain some formality, with external conduit and the like, you can still do this with longer patch cables. If it is a larger office, you must buy a box of cable and run it. I would suggest paying someone to do this. If you've not done it before, it can be annoying hard work. If you insist on doing it, do it right. Terminate at a punchdown block and at female RJ-45 adapters at the far end. Always run at least two CAT-5e cables to each drop. It would be better to run four, but that can get expensive. Remember to keep the wire as much like rope as possible, and leave yourself a 3 foot whip in the ceiling on each end.
Get yourself a cheap 24 port switch. You'll be glad you did when you find yourself adding more servers or VOIP stuff.
VOIP might be the easiest way to do telephones. You can manage it yourself, and if you get a system like Shoretel or NEC, you can pretty easily manage it yourself. Getting a third party to help install this is a must do.
Avoid anything with the word Cisco on it.
If your data is important, invest in a medium end server. Get a RAID controller and make it RAID 5. If the data is extremely important, pay the extra 100 dollars for a hot spare. You will also need to have a SCSI controller for your tape drive. You will want to buy two weeks worth of tape, plus tapes to be stored offsite for disaster recovery purposes. You will also want a fire-proof safe if the data is important.
If you can, buy identical PCs and make your builds with Norton Ghost. It saves a great deal of work. Always save the image to the local disk, as well as a cheap backup PC for your images (20 gig disk will be plenty for what you need), or to a PC on the network with a large disk (for both the OS and the back ups).
Always buy MS Office Pro. You may find cheap accounting software (this is VERY common) that uses Access for its functions. Different versions of Office can use it, but only if they have Access. Your co-workers will hate you if the do not have Power Point and they feel they need it.
If you need to protect e-mails, skip Exchange, and just backup the .pst files to the server, or leave them there. Floating profiles are nice with this.
Firewall is a must have. Also keep your PCs and server patched. It's annoying work, but should be done.
Hoist Number One and Number Six.
Before dispensing advice you have not really answered the most important question?
What do you want to network?
There are a lot of books on networking, networking a printer, networking work stations, networking computers for internet access, file sharing, IM networking, email server, etc.
It wholly depends on what you want to setup. If you just want internet access and to share a few files you can do this with a Netgear router and a switch and turn on file/folder sharing in Windows. Simple and it works. If you need something more powerful such as file sharing look at adding a SAMBA server or dedicated Windows server. Do you need ftp to the server? Adding an intranet? Then you need to add the appropriate programs.
Was this a wireless network? Well, then the books you want are different.
How about running your own email server? Well that's going to take you a completely different direction than just file sharing (although the cable setup will probably not change).
Saying you want a book on networking is like saying you want to read a book on programming. The real question to you is what do you want to do? Only then can someone give you appropriate direction.
Quality Hosting e3 Servers
Your ambition is commendable, but if you are starting from scratch, don't make the foundation of you new company a first attempt from someone who is learning as they go. From hard experience I can tell you that any "good enough for now" solution will linger on well past when it should have been scrapped.
Hire a professional company to run your cable if you are doing more than a couple rooms.
Hire someone to set up your infrastruce. Programmers are Not Sysadmins and Sysadmins are not programmers. They are very different jobs with overlapping but different skill sets.
If you can't afford a long term employee then just contract the setup with the end goal of minimal maintenance.
If you plan on being the "developer" at this start up, you do Not want to try and be part time amature sysadmin as well.
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
At the outset, try and define what it is you're trying to do, on some sort of priority list, and start at the top and work down. Try not to get diverted onto someone's recent "big idea" - keep an eye on the bigger picture.
Try and avoid overcomplicated solutions to problems. If people are pulling you in different directions, try and get them to talk it through together first.
If there's a modular way of doing something and a non-modular way, pick the modular way so that you can change one element of a solution in the future without throwing everything out.
Ask yourself who's going to be doing the ongoing maintenance. If it's you, also ask what sort of support you want to give (hours of coverage, that sort of thing). It's worth setting some sort of expectations up front (including "if you screw your PC up by doing exactly what I told you not to, don't expect to be at the front of the priority list).
Get the basics right - backups (including off-site), security of access to data both from outside your network and if appropriate from inside, and security patches on servers and desktops.
Reading books is useful, but there's a wealth of information available for free in public (especially on Usenet), and "learning by doing" is often the best way.
Have some sort of test systems that allow you to try stuff out first before doing it for real.
Think about the sort of "disasters" that might happen and try and plan for those that might. Planning doesn't have to be a detailed step-by-step list, but it is worth thinking about potential problems before they happen.
Sorry if this sounds like Mr Bleeding Obvious, but you'd be amazed how many people don't do this stuff. You've done the first (and most important) thing already, which is start asking questions.
I currnetly manage on the side my fathers law firm's network and computers, they currently have 10 computers and one computer acting as a server computer. it sounds like I have something similar to what you are looking to do. the key is simplicity, first thing, don't mess woth a domain, unless you require the security, don't do it.It will only cause you numerous headaches, i know because i currently work for another company with the same number of computers and they are constantly having issues with the domain not functioning. it is also much more complicated to add a computer to the network. we have all the drops in the office go back to one centeral place in a file room. the drops all end at a patch pannel for ease of connectivity. we run a basic dsl modem hooked to a router and then a 24 port switch hooked to it. here is how i set up the server for both simplicity and some security. it is a dell 420sc running windows xp, I have 2 hard drives in it that are mirroring, and also have a external drive that I can copy files to, it also has a cd burner for offsite backups. if you disable easy file sharing in windows xp you can create enough security for your needs. Make sure to run some sort of antivirus on all your computers and server.I am running pands antivirus on all the computers and server, it has been much better, and lower maintence then any other antivirus, in the past have used both macaffee and norton. can also be bought from buycheapsoftware.com for $17 per license. the only downside to the whole setup is that i have to manually backup files to the external hard drive and cd burner. if someone knows of an easy way to automate this please let me know. there are a few printers that I have shared, but are hooked to a computer, the key to it all is simplicity, simple is always better then complex when you are starting, you can always add a more complex system when you feel more compfortable.
Total cost of all the networking hardware, and the server was right around 1500 including windos xp pro software.
Once you've identified this person, pay him to do the work and explain it to you at the same time - that where the multiplier comes in to play.
I've done this type of work for friends/relatives in the past. Just remember that business is business.
Get the Unix System Administration Handbook . Some IT guys even call it "the bible" :)
As for network wiring, get yourself [...] an Ideal Rachet Telemaster. Yes you can get cheaper crimpers, but they suck and you'll hate yourself for trying to save $15.
Hell yes! I picked up the Ratchet Telemaster several years ago when I was wiring my home network, and it's a wonderful tool. I can't recommend it enough. Between the ratchet and the soft grip, it makes it easy and comfortable to terminate even a ton of cable.
I really should have picked up a jacket cutter to go with it, though. I tried both the high-tech "pocketknife" and "plier-wire-cutter" methods, and they sucked. It's doable, but nowhere near as simple as the clip-spin-done method of some of the nicer dedicated cutters.
I can vouch for a lot of the newer tech stuff being absolute crap. I check 'em out regularly in hopes of being able to recommend them to people, but no dice.
Windows Server 2003 for Dummies was a new low, in my opinion. The whole book was pretty much a verbose version of "you do X from the X snap-in." The Win2K3 Server help can tell you more than that, and it's free with the OS.
Their general life stuff is much, much better. The computer stuff should mostly be avoided like the plague.
Building a small, reliable net that you don't have to dick around with on a daily basis should be your goal.
That's a lofty goal for someone with no experience in the field and no knowledge of what equipment is capable of or is required to accomplish the goal. How does a neophyte know whether to buy Celeron or Xeon, IDE, SATA, or SCSI, tape or disk, Linux or Wind^h^h^h^h Netware, 100BaseT or gigabit, Linksys or Cisco, Whitebox or HP, Cat3 or Cat6, one mega server or 4 small servers, RAID or SAN? Read books? Ask Slashdot?
The neophyte cannot possibly be expected to know these things and while it is possible to read up and learn all of the answers, that could take months or even years. This guy is a partner in a startup and networking is not going to be his function. He needs to spend his time and effort concentrating on running the business, producing product and generating sales, not futzing with what will likely be an inadequate network due to lack of knowledge or planning.
Hiring a network architect or an experienced and skilled network engineer to examine the requirements, estimate the growth requirements (if any), select the appropriate equipment and then properly implement it all may be a bit more expensive than just throwing together some crap you bought at Fryes. But in the long run, that money spent now can equate to much larger savings down the road.
What's more, this is a concept that he should learn and live for the rest of his career. As a businessman/business owner he needs to concentrate on his business function and on growing his business. Leave tasks that are not his core competency to employees or vendors and concentrate on his business.
He may be capable of washing the company vehicle himself but, one would assume that his time would be better spent elsewhere and let a carwash do the company vehicle. The same applies to the company network. Until it is large enough to justify in house IT staff, he should farm out the work to experts and concentrate on growing his business.
On a final note, it may be a nice idea that you don't need to grow or die but, it is a fantasy. If you do not grow then your expenses will grow and kill your business. Cost of living is always increasing. Inflation is always increasing. Fuel prices are always increasing. Insurance is always increasing. If you are not increasing your revenue and profit then these things will bleed your company to death. Grow or die!
If you have the IRT, then place the jacketed wires between the dual cutter so that the end goes a little PAST the little stop. Squeeze down until you hear the first click, and spin the IRT around once or so. Pull. It won't be a super clean cut, but it will do just fine.
.02.
Now split the wires and order them (I always do T568A standards since that's what I was originally taught 10+ years ago when I was a desktop support monkey, but T568B is fine too.) Just don't be stupid and order the wires straight since you'll screw up the whole point of an UTP cable.
Anyways, once you have things ordered, clip off the ends of the wires so that everything is nice and even (which is why you strip off more then you're supposed to in the first step).
Put the RJ45 end on and crimp.
Anyways, YMMV... my
-Aaron
P.S. I forgot to say how much I *hate* making cables. I'd rather be poked with a stick.
Yes, perforce is good (very good actually), but it's licenced per seat and while not as complicated as ClearCase isn't the easiest thing in the world to admin.
If you can setup Apache, I would strongly recommend looking at Subversion instead. Very easy to setup and maintain and has most of features of Perforce as well as a few that Perforce doesn't (like true rename/move support).
-Aaron
They tend to have everything you need. Here's some suggestions: Essential System Administration TCP/IP Network Administration Check out the rest of the sysadmin selection at O'Reilly.
If I was stating from scratch I go wireless. No or very few calbe to take care of and it should be fast enough.
f ault.mspx
Also I'd recommend getting a preconfigured server.
If you want Linux then there is
*SME - http://contribs.org/
*ClarkConnect - http://www.clarkconnect.com/
Both have a free version. Basically they wrap everything to together with a web interface. Things are bolted on as plugins.
Or if you want to go the Microsoft way there is
*SBS - http://www.microsoft.com/windowsserver2003/sbs/de
Anyway those are my recommendations.
What will you be doing on this network? Do you have an idea what operating system you'll be running? What are your storage requirements.
There are very different requirements depending on the type of work you'll be doing. For example, if you're doing general office work, you'll probably want a bunch of windows machines sharing an internet connection through a firewall. You might want a single computer to act as a file server. If you're running a law office, you'll need all of the same, plus a file server capable of storing numerous documents, a database to keep track of them, and some way of tracking revisions. If you're running a semiconductor company (God help you) you'll need several high end engineering workstations, LSF, a very robust raid array with about 1TB of storage, and Gigabit Ethernet.
Most networks fall somewhere in between these needs.
It's good to use your head, but not as a battering ram.
Assuming you are starting from scratch :
Buy one brand of hardware, and one model of machine for everybody. Get all the same server model, all the same video card in every machine and the same network card in every machine. Personally I am a Dell fanboy, but only because I have been using them forever and am good at navigating their support site for drivers. This makes system maintenance and repairs very easy, no esoteric crap to worry about (one set of drivers, one system gold disk image to restore from, and one set of spare parts.)
Amen to the guy that said document EVERYTHING. I have seen some of the most freaky undocument hacks this side of the moon - every day was an adventure in discovery (I once saw an extension cord with the ends hacked off used as part of an ARCnet network, spliced to the coax on each side using electrical tape!)
Amen to the guy that said hire a guy that knows what he is doing to come in and set it up. Shadow him and every other breath you take should make the sound 'why' so you know what everything is when he is gone.
GigE is cheap enough for you to use now. Enjoy.
Get LCD monitors and good keyboards / mice. I cringe today watching a $60k / year employee hampered by a $3 keyboard and a old 15" CRT.
PowerQuest Drive Image Professional, or Ghost. I prefer PQDI, but I hear Ghost is good too.
Servers get at least three partitions : OS partition, Applications partition, and Data partition. Once you have a DriveImage of the OS and Apps partitions, you really only need current backups (daily) of the data.
I have no clue how you are going to back up 500G of data each night, but something tells me it isn't going to be by burning it to DVD.
Even if it is just a closet - put your servers in their own room with dedicated power lines and dedicated cooling. It is going to get loud in there, so plan on sitting elsewhere.
Resist the urge to buy one-off items because they are cheap. The $300 one-off computer that some kid built in his garage is going to cost you way more than the difference it would have cost going with a single standardized platform - over the life of the machine.
One person can maintain 300 machines if they are all exact clones of each other. If every machine is unique it would take you 5-6 people keeping the same network fully operational. At $65k apiece fully loaded salary that's a third of a million dollars more per year to support the same 300 machines. At four year turnover on computers, you are talking about an EXTRA $4,000 per computer to save $200 total on purchase price.
The first line of defense in computers is the users. All the firewalls in the world won't stop a (virus / worm / trojan) if your dumb-ass accountant double clicks on a file attachment he gets in email from his golfing buddy, titled I_Love_You.doc.vbs. Knowledge is power.
Build it and design it as if you were going to have 1000 users.
If you wouldn't have a network of 1000 users all using their first name as their user id, why do it at the onset with the original 15?
If you wouldn't let all 1000 users surf porn from work, why do it with the original 15?
Glonoinha the MebiByte Slayer
I can't recommend any books, but I've been using the SMEServer Linux distro for a couple of small businesses I'm involved with. Works right 'out of the box' as a SAMBA file server, gateway & firewall, user/account manager, POP3 server, FTP server, and backup/archiver with a nifty web interface. Nice and simple, and all that our businesses need.
It's a RedHat-based distro, so you might need a good book for that. Install Subversion and you've got a great little repository and revision control system too.
A book I find quite useful making the switch from PM to Site Mgr was the following:
"The Practice of System and Network Administration"
by Limoncelli & Hogan
Excellent book. It will answer questions that you aren't even thinking about.
Quite amusing when someone runs cables poorly or yanks on well terminated cables until the wires pull loose (long hundred foot runs).
Well, unless they are my runs... then I'm usually quite visibly embarassed, as I have occasionally done late night work, and screwed one or two up. Its fun to laugh about years later, but as a teenager first learning... boy did it hurt.
" What luck for rulers that men do not think" - Adolf Hitler
in which case, keeping all your info in your head can be quite a career-extending move...
An excellent book is "The Practice of System and Network Administration" by Thomas A. Limoncelli, Christine Hogan. (ISBN: 0201702711) It is theory not necessarily platform specific. It is focused at unix, but can be applied in a windoze environment. I wish I had read that book years ago. It really does a good job of summarizing all the best practices. It's all the things they don't teach in school. http://www.everythingsysadmin.com/aboutbook.html There are links to reviews there. The average customer review on amazon is 4.5/5.
As far as pulling cable and doing the physical grunt work..make sure you do structured wiring otherwise you end up with a rats nest of wire. Over plan everything. Don't forget the simple stuff, have a dedicated circuit or two for the server(s) and network equipment with adequate UPS protection. Make sure the room is adequately ventialated and physically secure. Make sure you have room to grow, so when you need more equipment you have room for it or can easily make room for it.
revision control, backups, security, servers,
Sounds like you need a book on systems administration. I recommend The Practice of System and Network Administration. The authors have a website.
Backups are for wimps. Real men post their data in comments and have slashdot mirror it
We believe this is money well-spent, as the alternative is to have one of us learn all the issues from scratch (and there are a lot of issues, I promise you).
Just because you can program, it doesn't mean you should do everything that has to do with technology.
You didn't specify what your background in network operating systems are, so I am making the assumption you've never setup or used a server before.
/. not C:\)
In other words, if you're comfortable with Windows, buy a Windows server and use that. People in here (the Linux freaks especially) will scare you into using their system. (Remember this site is called
Don't setup a Linux or BSD server if you've never installed or used one before, unless of course you can afford some downtime reading lots of O'Reilly books. Patience and persistence is a virtue in Unix.
Although personally, I prefer FreeBSD myself, Unix (in any variant), takes time to master and can be tricky to install, use effectively and backup if you're not familiar with Unix's methodologies. One also musn't forget, Open source is just that. Open Source! It's basically, use at your own risk and I wouldn't recommend it to someone who has no concept of shell scripting or working extensively with command prompts. Although some of the Open Source apps (ie. Postgresql, Samba, Apache) are pretty damn good.
Windows has come a long way and if money is not an issue and you're not that comfortable with Unix to start with then why struggle learning a new system? If this is the case, I'd stick with a Windows server and master running a network before taking on a new operating system. You can always add a *nix server down the road.
Debian is a good choice. Apt is a fantastic packaging system. Go with a thin client server, too. Rather than LTSP, I would recommend ThinStation booting from CD. If you have a client who does video, you can give them a gigabit connection to a switch. For more security, you may want to use X over SSH or NX technology. Unfortunately, there is no 64 bit version of NX yet. If you do not need NX, I would defiitely recommend a 64 bit server just for the bus bandwidth on the mobo. Use software RAID 1 for reliability and RAID 0 for speed or RAID 0+1 for both. If you do not put hard drives in each client, RAID actually saves you money as you will use fewer drives overall. A thin client server is very cost effective in your situation as you may have as few as one software installation for as many clients as you can run off one server, typically 30 with 2gB RAM.
Use CAT-5 unless mobility or distance are a problem. It is useful to use a gigabit to 10/100 switch to avoid a bottleneck at the server. Performance is best when everyone can run at full speed. With thin client, the only bottleneck is likely to be CPU, but only for spikes. It is unlikely that two users will spike at the same time in such a small group, except for boot up or log in. Leave the server run 24/7 and the memory cache will speed up everything.
Any sort of networking goes better with LINUX. IF you are going to use LINUX on the server, unless there is a must-use app that is only available for that other OS, go Linux everywhere. A single Debian repository can be mirrored locally for lightening fast installations.
A problem is an opportunity http://mrpogson.com