Начнем с того, что у нас может быть более чем один сервер. В подавляющем большинстве док описывается работа служб в пределах одного сервера, что, как кажется авторам, легко "размазывается" по нужному количеству. Это неправда. То, что легко работает на одном, совершенно необязательно будет работать на многих. Проверено.
Поэтому, первое. Что я хотел от сервера(-ов) перед началом инсталляции.
1. Файловый службы. Чтобы рабочие станции WinXP ходили на сервер, не используя стороннего программного обеспечения (а то Novell Client уже достал изрядно своими ошибками). И чтобы доступ был "как в Netware".
2. Сервер печати. Здесь все просто. Доступ определенных пользователей к определенным принтерам. Автоматическая установка драйверов (по требованию).
3. Почтовый сервер. Нормальный корпоративный почтовик с возможностью работать с почтой через веб (а это значит, что POP3 использовать нельзя, чтобы письма оставались на сервере)
4. Управление пользователями из одной точки (каталога). Novell, знаете ли, разбалывал меня совсем.
5. Нормальный прокси в Инет. С авторизацией, отключением проштрафившихся, резалкой банеров и т.п.
6. Хороший и управляемый файрвол, а не прямолинейно-сержантский Border Manager.
7. Сервер DDNS и DHCP. Ну здесь все просто.
8. Хотелось бы управление компами пользователей. Использование Roaming Profiles. Желательно Group Policy.
9. Некую службу единой авторизации. Чтобы прилогинился к серверу и все. В других местах авторизация на основе некой информации "да-нет".
10. Безопасность на должном уровне. Чтобы никто мои сервера не взламывал.
11. Веб-сайт хочу у себя видеть.
12. Траффик хочу считать проходящий через гейт в инет по разным портам и протоколам как отдельно, так и вместе.
13. Резервное копирование для данных хочу.
14. Чтобы настройки сервера можно было куда-то сбекапить, а потом при необходимости (сервер упал) обратно залить.
15. Автоматическое обновление системы, чтобы можно было к серверам годами не подходить и не отслеживать бюллетени безопасности.
вот вроде и все. скромно.
Вот с примерно таким списком я и пришел к инсталляции серверов.
Изначально была выбрана конфигурация с двумя серверами: первый - основной, на нем все что можно, минус инет, второй - гейт во внешний мир, на нем прокси, файрвол и служба NAT, транслирующая запросы в/из внутренней сети. Почтовик и веб я почему-то решил разместить на первом сервере. Чтобы в дальнейшем, при увеличении нагрузки, ввести в строй третий сервер, специально для этих задач. Т.е. попытка изначально продумать масштабируемость системы.
По подборке используемого софта сильно много думать не пришлось. Во-первых, мне было все равно что, так как я ничего не знал. Во-вторых, я сразу решил по максимуму использовать то, что предлагает Fedora Core 3, чтобы была возможность автоматического апдейта. В-третьих, дистрибутивы обычно составляются так, что не оставляют шансов использовать выбор из нескольких вариантов - бери, то что есть. В случае Fedora, как оказалось, сборщики дистрибутива были умными и грамотными людьми.
Итак, основные пакеты.
Samba - файловый сервер.
Squid - прокси http и ftp.
iptables - firewall с NAT
Postfix - почтовик, точнее MTA
Cyrus-imapd - вторая часть почтовика, IMAP
SpamAssassin - антиспам (но функции антиспама включены также и в Postfix)
SquarreMail - веб-почта
Apache 2 - веб -сервер
MySQL - база данных для хранения разнообразных данных для веб-сайта
BIND - DNS-сервер
CUPS - служба печати, крутая, как оказалось
yum - в качестве автоапдейтера
amanda - как служба резевного копирования
xinetd - как удобная вещь для разграничения доступа к разным портам стека IP сервера
Cyrus-sasl - загадочный механизм авторизации (без него много что, как оказалось не работает, хотя на мой взгляд он нужен лишь для Cyrus-imapd)
OpenSSL - это для шифрования, сертификатов и т.п.
OpenLDAP - это LDAP-сервер - сердце нашей системы.
Вроде как все. Остальное само все встанет и будет работать. Но, конечно, некоторые вещи также будут нуждаться в поднастройке.