

Ask HN: Is there "server" software for a Windows Server? - godDLL

For one reason or another I've been given the task of managing a Windows Server.  I've never seen one before, looks just like the client.  Apart from having to manage it through Remote Desktop, it does not seem to have any software on it, or for it that's accessible from within the system (there is "Manage Your Server", but it doesn't seem to do much for me).<p>I used a Windows XP client for a desktop some three years ago, but never touched the Server.<p>If anyone has any experience with I'd very much appreciate a lead in on:<p>- How do you set up SFTP?<p>- How do you set up a light-weight HTTP server?<p>- How do you set up Python + xCGI + Postgres?<p>- Is there some sort of a package manager or a browser for paid server software?<p>- How do you secure it, e.g. what do you use for a server firewall, permission isolation for web-facing software (sandboxing, maybe)?<p>- Where is the configuration kept and the logs written?<p>- Where is the documentation for all of the above?<p>Or more generally -- how do I make it all work?<p>Please be considerate, I know I'm a noob with this.
======
weaksauce
I think the common answer to questions of server administration on HN is to
send people over to <http://www.stackoverflow.com>

They handle the more nuts and bolts aspects of setting up servers and
programming.

The reason that Microsoft calls it a "server" os is because on the XP/vista
they limit the number of concurrent incoming connections that the server can
handle at any time to something like 5 or 10. They also limit the number of
processors to 2. So basically installing software in the server version is
identical to the consumer version.

But to answer your question briefly, setting up server programs in windows
entails going to each of the websites and downloading the programs. Double
click and install. This is a bit different than the *nix way of having a
central repository where you can apt/yum/dpkg/etc... to your hearts content.
Also, while it is of course possible to install software from source it is not
really common on the windows side of the fence.

lightweight webserver: nginx(<http://wiki.nginx.org/Main>), maybe apache if
you configure it. I would steer clear of IIS(which is preinstalled in the
server version usually)

I don't know of a good sftp server for windows but there should be plenty of
them out there.

~~~
bjtitus
This kind of "server administration" topic is probably better suited to Server
Fault but could probably be asked over at Stack Overflow for now (assuming
it's more related to programming).

Server Fault should be out in the next week.

------
pietro
You're trying to make Windows into a Unix, but it's not. Most of your
questions make no sense in a Windows context. It's very, very different.

It would be so much easier to buy a book than to browse the web. That's how
people learn the basics in the Windows community. Web sites are for news,
documentation, etc., not for learning.

Documentation is at Technet and MSDN. It's messy and hard to search, so I'd
buy a few books instead.

But anyway, some basics:

Most of the tools are in Start -> Control Panel -> Administrative Tools.
That's where you'll find Computer Management, Services, Event Viewer (logs),
etc.

Most administration is done using the graphical administration tools. There
are no config files. You point and click, use dialog boxes, double click
installers, etc. Scripts are certainly possible, but don't start there.

Remote administration is done with Remote Desktop. You can mount a local drive
on the server, and that's how you normally transfer files, not using SFTP.

The web server is IIS. It's already installed, but you must enable it.

~~~
godDLL
Thank you. Your insight has been most helpful, particularly the "buy a book"
part.

I'll do everything I can to delegate that job, and somehow escape the
responsibility in the process.

------
jodrellblank
_How do you set up SFTP?_

You would need to install an SSH server. The Windows typical way to transfer
files for administrative use is RDP with reverse maps, network shares if you
have a VPN to the server, the more general way might be IIS as an FTP-over-SSL
or WebDAV server.

 _How do you set up a light-weight HTTP server?_

Install Lighttpd. But you have IIS, unless you need a lighterweight server you
may as well use it.

 _How do you set up Python + xCGI + Postgres?_

Install Postgres and Python for Windows. (NB the free Microsoft database
answer is SQL 2008 Express). I don't know xCGI but Python on IIS is possible
via various WSGI/CGI/ISAPI interfaces.

 _Is there some sort of a package manager or a browser for paid server
software?_

No. There's Add/Remove Windows Componenets in 2003 and Add Features / Add
Roles in 2008 for parts supplied with Windows, but nothing central for 3rd
party software.

 _How do you secure it, e.g. what do you use for a server firewall_

Windows Firewall, but that will only keep traffic away from closed ports and I
am hesitant to trust IIS to the internet. We use dedicated firewall devices
with deep packet inspection and AV scanning for all incoming traffic (we also
do that for Linux servers).

 _permission isolation for web-facing software (sandboxing, maybe)?_

No sandboxing like SELinux or chroot, but a pretty thorough and integrated
permissions system that runs through the filesystem, ASP.Net/IIS, SQL server,
registry, and more. Don't run web-facing software as administrative users, for
instance.

 _Where is the configuration kept_

Typically, the registry (start -> regedit). Sometimes editable directly, but
not much fun. Frequently configuration of individual components is scriptable.

 _and the logs written?_

IIS, FTP, SMTP logs go in c:\windows\system32\logfiles, other programs log to
wherever you configure them or with general system logs into the Eventlog
(proprietary format files). Use Event Viewer to get at them (terrible program
in 2003, improved in 2008) or something like psloglist from SysInternals.

 _Where is the documentation for all of the above?_ Everywhere. Start -> Help,
or press F1 in most of the system management consoles for a lot of text. Lots
more on <http://www.microsoft.com> and <http://technet.microsoft.com>

_Or more generally -- how do I make it all work?_

Why have you been given a Windows server that you know nothing about that
appears to have no software on it? What is it and what's it for? If you want
SFTP, Python, Postgres, lighttpd, you may as well format it and install Linux
really.

Come back when you want an office of desktop computers with central logon,
policies, centralised sharable email calendar and contacts, email available on
the web and Windows Mobile, shared files and folders with granular
permissions, software install and desktop lockdown policies, local file caches
for offline laptops, running software that everyone in your office is familiar
with and can read and write Office documents that everyone you contact can
use. That's where Windows/Exchange(/Sharepoint/etc) strenghs show up, and if
you're not doing that sort of thing then there's not much point using Windows
Server.

~~~
godDLL
Even more helpful, thank you.

With your permission I'll be quoting you to my boss, maybe he'll get into the
idea that this Windows Server is the wrong way to go for our purposes.

Of particular use is the SSL/FTP or WebDAV comment, Add/Remove Windows
Components, dedicated firewall hardware, %system32%\logfiles and PSloglist.
And the more general blurb at the end there.

This might well become instrumental in getting out of the responsibility of
doing our custom web-facing database-driven software on the dreaded thing.

~~~
jodrellblank
_With your permission I'll be quoting you to my boss_

Sure, please do.

