Given the following scenario, what's a good way to migrate to Linux?
I realize that this question might be vague, but please hear me out. :)
I'm an intern at a small time software company. We do web hosting, technical support, etc., in addition to producing bits of software no one will ever hear about. Currently, I do most of the tech support and a little bit of sysadminning. I'm not very familiar with Windows servers (which we use), but the regular sysadmin is a wiz with such things, so nothing to worry about, right? Wrong. After he quit, the duty of upkeeping the Windows network has fallen to me.
Now, I'm no Linux expert, but I feel a lot more comfortable using Linux, especially in a server environment. I feel that Windows tends to be clumsy, especially as a server, and that information and help for Linux tends to be a lot cheaper and easier to find. I'd probably be much easier working in a Linux environment, rather than uselessly learning the Windows 200* server family, since we might as well expect a new one in a year or two. Also, I find it very difficult and frustrating to try and work in an already existing Windows network. The previous guy wasn't a fan of documenting what he has worked on.
I am thinking about writing up a proposal and plan for converting the office to Linux boxes, for any obvious reason you might think about -- as well as personal preference. If I'm doing the work, I may as well be enjoying myself. The main idea is to keep as much funcionality as possible, so as not to disrupt overall productivity. Maybe you guys can help me out and recommend some Linux solutions for the following scenario:
We have a primary domain controller (Windows 2003 Server) that also is our DNS and Exchange 2003 server. We use the DNS for any hosted domains and of course our own. The Exchange server is just for office use, no hosted solutions.
We have another Windows machine that acts as our backup domain controller, backup DNS, and primary web server. The other machines are simply...uh...there, not doing anything. We use Active Directory, which basically fuels the Exchange server, as you would imagine.
I was considering this:
Keep the domain controllers and DNS servers as is, but remove Exchange. I can't seem to understand Exchange so I don't want to say that I'd be able to troubleshoot it. Best just create something from scratch, right?
Use Linux (most likely Debian Sarge) boxes for primary web servers, e-mail, ftp, ssh, and any other misc tasks.
Asuming no one can come up with a better idea than the above, I need to consider what programs and servers I'll be using...
Web: Apache, most likely. I might also keep an IIS server on a Windows box in case we need to use ASP.NET.
Mail: I'm completely unsure. Is there a good Exchange equivilant for Linux?
I suppose the mail server was my largest concern, next to interfacing with the Active Directory. I know Linux servers can authenticate against the AD, but what about building user accounts? Is there a way to automatically create user accounts for active directory members? I'd like to give each employee an account on a linux machine...It would most likely make FTP, SSH, and mail accounts easier to handle if each employee had a login to the box.
Any ideas, help, or suggestions you guys can offer would be greately appreciated. I'll linger for a while to answer any questions. Thanks. :)
About mail accounts, I hear that scalix is a good exchange equivalent.
Re: Given the following scenario, what's a good way to migrate to Linux?
I'll put thoughts inline.. :)
Merely thinking ahead here. having proven abilities (e.g. in writing, certificates, such as the M$ MCSE/MCSA) seems to be very important for employers these days.
Have to cut into the Exchange thing here for a second. Consider the possibility that if you remove Exchange, you might break a lot of things for your users. You might lose the ability that when you create a new user in the active Directory, that that user will automatically get a mailbox and global address book attached to his/her account which opens in their favorite Email application (Outlook right now, probably). For another thing, you'll have to find a solution to give everybody their mail back (some users do in fact store every email right back up to the stone age, for 'future reference') and you'll have to redo all the mail addresses or migrate them somehow without loss of data.
Very important point of warning here: A company's email address is very important and should not be changed.
If you do, the company will lose face with it's customers and business contacts, as all of them will have to change that entry in their address books, and your company will have to spend thousands reprinting all those business cards and advertisements, and re-introduce themselves to the public. The user email addresses play a big part in here too, if employee X has direct communication with customer Y, and you change X's address, Y will be confused. Don't underestimate the power of the dark side of something as simple as an email address ;)
for the actual mail server.. don't know really, not enough experience there. I hear good things about Postfix and Qmail however. Our local ISP for instance uses Postfix server farms to handle all their email for example.
User accounts, look into Samba (and LDAP?). it can be configured with AD-like services, and it can be configured to create Samba users when Linux users are added for a bit of automation.
Best way to plan a real migration basically involves researching what your users really use in their daily job, and providing something that works the same or better (basicly meaning that you are trying to avoid interruption of daily tasks), to migrate data without any loss (databases, user data, etc.) to their new homes, and to end up with a solid system you (or your successor) can easily maintain while leaning back in your chair ;) you have to look at things from both an Administrator perspective as well as a regular User perspective.
These are all just my :twocents: worth :) I don't have enough knowledge right now to be more specific/helpful.
May the force be with you!
Hmm, personally I like the idea of a Linux solution, but I know from experience (like here at my work) it's hard to dike out a windows infrastructure and just put a linux one in it's place.
I would start by finding solutions for servers one by one... say start by replacing IIS with Apache, then get sendmail/qmail/postfix going to replace exchange. Later you can think of replacing the Domain Controllers with LDAP.
Firstly, get a system to play with, get say sendmail (or whatever strikes your fancy - here at work we have sendmail, but at my previous place I set up qmail... like with all things it has its good points and its bad...) up and running, then toy with migrating the data. When you've got it running at the same level as the existing server and know it works, then you can do a swap sometime. One by one you will replace the parts of the infrastructure with linux solutions, and one day you will wake up with a windows free system.. :) Something to look forward to.
|All times are GMT -5. The time now is 11:46 PM.|