Как стать автором
Обновить

Комментарии 48

Полезный материал, благодарю.
Опыт позитивный, только вот есть несколько замечаний.
1. Держать все яйца в одной корзине плохо — упадет корзина — разобьется всё.
2. AD должно обслуживать как минимум 2 сервера, как раз по причине пункта 1.
3. Держать VPN сервер на сервере, являющемся сердцем сети — не очень безопасно, не зря TMG(или ISA, за давностью времен не помню) при попытке установки VPN + Firewall на машину с ролью КД выдавала ошибку и разрешала ставить только консоль управления.
4. С групповыми политиками все ещё веселее — с обычными пользовательскими паролями класса «12345678aaa» толку от впн — никакого, и я не очень уверен, что самба даст настроить хотя бы сложность пользовательских паролей.
5. Вы ничего не сказали о настройке сервера времени, samba уже научилась быть ntpd? разница в несколько минут (а GPO, которые выставляет допустимую погрешность по разнице времени, после которого работ машины в домене становится невозможной) вызовет очень большие проблемы в работе как минимум пользователю на рабочей станции.

6, и последнее: потратить 2,5 недели на то, что можно развернуть в базовом варианте за полчаса, не считая времени на установку ОС (а что, Вы их еще ставите ручками?), неспешно распивая кофе и занимаясь другими делами параллельно, пока ставится винда, после чего оставив сервер обновляться на ночь — очень глупое решение.
Три моих бывших руководителя ИТ департаментов (компании от 50 до >300 человек) посчитали, что такое решение можно использовать разве что в конторах до 10-20 человек, с ну очень ограниченным бюджетом, когда админ реально по большей части занимается всякой фигней.
По поводу пунктов 1, 2, 3 Вы сами по сути ответили своим последним предложением (со ссылкой на ИТ-деректоров) — просто данное решение развёртывалось именно в такой конторе: до 10-20 человек. А иметь несколько серверов для AD в таких конторах — как-то дороговато…
Пункт 4. Как раз-то групповые политики по умолчанию в Samba4 и не разрешают заводить пользователей с простыми паролями, и эти пароли получаются весьма вычурными.
Пункт 5 (и где-то пункт 6). Я ведь ничего не говорил о том, что всё ставил на чистую машину, начиная с операционки и т. д. Наоборот, из текста (в частности об dns) должно было стать ясно, что система была давно установлена и работала. Даже Samba4 была установлена давно и исправно работала, а инструкцию по установке и настройки я привёл для того, чтобы как-то собрать всё (или почти всё) в одном месте. Да и то, про эмуляцию Microsoft DNS на bind9, я пока не стал писать из-за достаточно большого объёма. Соответственно, на этом (ещё раз повторю — рабочем) сервере выполнялись и isc-dhcp-server, и bind9, и ntpd, и pptpd…
Времени же столько было потрачено на то, чтобы понять, какого чёрта samba4 компилируется без поддержки pam, и заставить VPN работать не с PAP (по которому сразу же, из «коробки» Samba4 авторизовала пользователей). А за пол-часа, «неспешно распивая кофе и занимаясь другими делами параллельно» Вы бы получили то, что и получил я с точно таким-же подходом: АD на samba4 сам по себе, Linux, под которым он и крутиться — сам по себе, VPN — с «чудесной» пересылкой пароля по PAP и т.п.
Я правильно понимаю, что тут используется дырявый MS-CHAPv2 (не PEAP-)?
Да, именно он. Но это всё-же много лучше, чем c совсем уж непригодным PAP, который предлагается в руководстве на WiKi?
Есть L2TP. Кстати, как вы решили проблему раздачи маршрутов во внутреннюю сеть для vpn-клиентов? Или сразу к ней присоединяются?
Я же написал — пусть будет, к примеру PPTP. L2TP — лучшее решение, сейчас перевожу на него, принципальных трудностей в настройке не вижу.
Вопрос, это АД домен контроллер с LDAP и керберос внутри и со всеми плюшками полноценного АД или старый легаси мод Самбы 3?

Настройка очень похожа на то что я делал в универе, но с версия тогда была 3.3 ли около того, Очень интересует керберовские плюшки,

Заранее спасибо! Очень интересно!
Именно так — и LDAP, и Kerberos, и DNS — всё это теперь в samba4.
сервер с Ubuntu 12.04. Он должен стать:

PDC Windows-домена c Active-Directory.
Сервером VPN (пусть, например, это будет PPTP, но с обязательной поддержкой MS-CHAP v2 и MPPE-128) с авторизацией на Radius –сервере (для определённости – freeradius).
Соответственно – Freeradius-сервером.
Терминальным сервером, на котором прозрачно авторизуются пользователи AD.

Мои глаза плакать кровью.
1) PDC на чем-то кроме винды.
2) PDC одновременно с VPN сервером (т.е. он хотя бы одним портом доступен снаружи).
3) PDC одновременно с терминальным сервером.
4) Терминальный сервер одновременно с VPN сервером.
Вы еще скажите, что на этом же несчастном сервере подняли прокси и вебсайт.

Ё-мое, под линукс есть бесплатные гипервизоры, я проверял. Точно есть. И мне еще не доводилось видеть настолько грубое нарушение принципа «один сервер = одна задача».
Ё-моё… Вы на какой планете живёте (если в Москве — точно, на другой...)? А у нас в «замкадье» нарушение принципа «один сервер = одна задача» менее грубое прегрешение, чем «разорение» мелких контор на реализации идеологически правильных решений… Если это произойдёт — вся контора будет «плакаль» кровью…
Извините, коли Вам покажется, что чем-то Вас задел, но эта тема как раз меня сильно задевает, ибо хочется хоть иногда поработать в таких условиях, когда на первом месте будет правильность и красота решений… Дайте мне нормальный бюджет, и, если Вам нужен будет PDC на винде — ради Бога, вот 8-ядерный сервер с 8 Гб на борту под Windows Server 2008 R2, рядом с ним — BDC в такой же упаковке и т.д. и т.п. Речь же идёт, насколько я понимаю, о бюджетных альтернативах, именно альтернативах, винды.
у нас в «замкадье» нарушение принципа «один сервер = одна задача» менее грубое прегрешение, чем «разорение» мелких контор на реализации идеологически правильных решений

Вас разорит установка какого-нибудь XEN и виртуализация нескольких minimal инсталляций линукса, даже без DE (как и надо делать на сервере)?
Дайте мне нормальный бюджет, и, если Вам нужен будет PDC на винде

Откуда деньги на клиентские винды?
8-ядерный сервер с 8 Гб на борту

8гб памяти? Сейчас мобильники имеют уже 2гб RAM. Так как в вашем случае сервером наверняка является обычный компьютер с в лучшем случае парой винтов в зеркале — 8гб памяти стоят около 1000р. Я не думаю, что в «замкадье» цены радикально выше.
2-сокетная машина — это десятки виртуалок и десятки ГБ памяти. В вашем случае требования к железу несравнимо выше. Не вижу особых проблем полностью влезть даже в 2гб памяти всеми виртуалками. Не те задачи.
То есть на самом деле вопрос вовсе не в бюджете, а скорее в неумении имплементировать правильные решения. Более красивая архитектура не стоила бы ни на копейку дороже.
Но хочется делать все тяп-ляп, надеясь на «авось не упадет и не похакают» — воля ваша.
«В вашем случае требования к железу несравнимо выше» — оговорка само собой :)
А вот платить деньги за клиентские винды как раз считается необходимым «злом», а разоряться на сервер на винде — это уже с трудом…
Что же касается виртуализации — совершенно с Вами согласен, но это — следующий этап. И всё же, принцип один сервер — одна задача, не является абсолютной ценностью. Вы тогда уж попеняйте Cisco с их IOS на роутере, который и dhcp-сервер, и dns-сервер, и файрволл, и VPN-сервер, и то, и сё…
Вы тогда уж попеняйте Cisco с их IOS на роутере, который и dhcp-сервер, и dns-сервер, и файрволл, и VPN-сервер, и то, и сё…

То, что там можно поднять это добро (да хоть в твиттер логи слать) не значит, что кто-то так делает. По факту IOS редко бывает DHCP сервером (особенно в виндовой среде), никогда — DNS сервером (с этим еще менее удобно работать, чем с DHCP сервером), а роли пограничного роутера, внутреннего роутера, файрвола, VPN сервера, голосового шлюза и так далее как правило разделены по разным устройствам, каждое из которых выполняет одну узкую задачу.
Пример с 2008r2 с ее десятками ролей я уже приводил. На типичном сервере поднимают одну-две, край — три роли (в случае DC, который попутно DNS и DHCP), не более того.
разделены по разным устройствам, каждое из которых выполняет одну узкую задачу

А для кого сделан ISR, который и чтец, и жнец, и на трубе игрец?
Серверная винда — тоже. И?
Вы заметили, что вообще-то у ISRов есть разные наборы функционала? Раньше на ISR были образы voice, advsecurity, enterprise и так далее (есть и «всё-в-одном» adventerprise, но смысла покупать его мало), сейчас есть лицензии на отдельные фичи — data, UC, sec.
Сама киска позиционирует их как всё-в-одном для бранчей, когда одна железка является пограничным рутером, файрволом, телефонией и контроллером вайфая.
Даже была реклама, где парень меняет кучу жуниперов на один ISR и тогда девка даёт ему, а не стороннику принципа «одна железка = одна задача».
Сама киска позиционирует их как всё-в-одном для бранчей, когда одна железка является пограничным рутером, файрволом, телефонией и контроллером вайфая.

Да, если отказала связь с центром — они могут перехватить на себя часть задач. Но это — внештатный режим работы, «лучше, чем ничего». Мне и в страшном сне не придет в голову подключать бранчевые телефоны к местным CUCME, ставить в каждом бранче по собственному контроллеру, поднимать на бранчевых роутерах файрвол либо NAT и т.д.
Даже была реклама

Видел. Там вроде с жунипером сравнивали, и какой-то однокнопочный вебинтерфейс пиарили? И?
У нас по ЦОДам немало ISRов распихано. Каждый — строго под одну задачу. То, что каждый из них умеет многое, здорово — всегда есть запас железа под любую новую задачу, не нужно докупать ничего нового.
но это — следующий этап

Надо было сразу сделать. Потом будет куда сложнее, ибо корячить придется уже боевую инфраструктуру.
Ядрёная смесь, но и принцип «один сервер = одна задача» не является абсолютной истиной. Даже Microsoft выпускает SBS, совмещающий половину серверных продуктов в одном ящике.
«Даже»? Microsoft хочется срубить денег в том числе и на сильно ограниченном бюджетом секторе. Это можно понять.
Обычная серверная винда тоже имеет массу ролей, и если поднять все разом — получится некий «мастер на все руки», особенно если дополнительно поставить SQL, TMG и Exchange. И что? Разве стоит так делать?
И что? Разве стоит так делать?

Если работает и не конфликтует, то почему нет (при условии ограниченных ресурсов)?
Если работает и не конфликтует

Хомячковый подход — «авось не упадет». А нормальный подход — заранее постелить соломки везде, где хотя бы гипотетически можно споткнуться, чтобы, когда авария произойдет, восстановить сервис за минуты, что бы ни случилось.
А вот если ограниченными являются когнитивные ресурсы — вопросов нет.
Да вы батенька перфекционист! И вам еще много раз предстоит умыться слезами )

Одно из таких открытий, которое вам предстоит — это то что такие вот «соломки подстелить где свалюсь через 10 лет на 3 часа» совсем непрактичная вещь в нашем некруглом мире с ограниченными бюджетами, сроками и требованиями к аптайму, Далеко не всем нужно чинить поломанные системы «за минуты, что бы ни случилось»

И да, все выше я написал просто, чтобы быть в топике, на самом деле я очень хочел написать, что вы бы лучше постеснялись упрекать тут всех насчет когнитивных ресурсов, это далеко не лучшим образом характеризует ваши собственные
такие вот «соломки подстелить где свалюсь через 10 лет на 3 часа»

Да вы батенька неизлечимый оптимист!
То-то среди работников мелкого бизнеса бытует мнение, что «админ» — ленивая скотина, у которой вечно все ломается. А если сразу сделать все правильно (увеличение сроков несущественное, увеличение бюджета равно нулю или близко к тому), то и шанс поломки всего сразу резко снижается, и восстановление ускоряется. То есть какие бы сроки ни были потрачены на дополнительное наведение красоты — они очень быстро окупятся.
Вот теперь, кажется, Вы меня рассердили… По-моему, как раз хомячковый подход — это когда всё должно быть «как у людей» и «по-православному». Раз микрософт говорит, что AD — это только Windows, значит — винда, и всё тут… Если эта винда — ресурсоёмкая и «падучая» — значит «одна задача=один сервер», значит, виртуализируем всё и вся, не дай Бог (а он-то, как раз, за «падучесть» винды и не несёт ответственность!) какой-нибудь сервис отвалится! Мы же, по-моему, сейчас ведём обсуждение «на поляне» Linux, не так ли? На моей памяти Linux падал только из-за вышедшего из строя «железа», а в этом случае Вам будет легче от того, что всё виртуализировано? Да и «хакнуть» системы на Linux с правильным iptables нужна такая квалификация и столько времени… Хотите попробовать?.. Да, ещё Linux можно «уронить» корявыми руками, но это относится ко всем системам, и приступы «корявости рук», по-моему, периодически настигают любого работающего IT-специалиста, и от них никто не застрахован, разве что IT-директорат, который уже и не «рулит» конкретной системой, а следит за «православием»…
Неразумное следование же принципам и возведение их в абсолют — это ли не проявление ограниченности когнитивного ресурса — нет? А то я смотрю, этот самый когнитивный ресурс привёл отрасль к тому, что не Microsoft для бизнеса, а любой бизнес — для процветания Microsoft, когда для нормально работы системы нужно городить кучу железа (не дай-то Бог, что-то отвалится — а оно обязательно отвалится!). Тот же когнитивный ресурс сподвиг Google на такие решения, что для нормальной работы телефона — телефона! пусть и «умного», требуется полутарагигагерцовый двухядерный процессор и 2 гигабайта памяти.
Когда затраты (финансовые и прочие, в том числе полюбившиеся Вам когнитивные ресурсы) на «подстеление соломки» (а вдруг что-то случиться!) не соизмеряются со стоимостью бизнеса и возможных (возможных!) потерь этого бизнеса при простоях — вот тогда это «хомячковый» подход, чтоб всё по правилам, всё «как у людей», всё «круто»… Где-то я это уже наблюдал в окружающей ойкумене… Ах, да, вспомнил: уверен — у Вас есть iPhone…
НЛО прилетело и опубликовало эту надпись здесь
как раз хомячковый подход — это когда всё должно быть «как у людей» и «по-православному».

Нет, это — стандартный ентерпрайсный подход. Нацеленный на максимальный аптайм сервиса.
Если эта винда — ресурсоёмкая и «падучая»

Наглая ложь.
значит «одна задача=один сервер»

Вне зависимости от задействованной ОС. Хоть винда, хоть линукс, хоть солярка, хоть AIX.
На моей памяти Linux падал только из-за вышедшего из строя «железа»

Значит, вы слишком мало с ним работали.
Мои коллеги, профессиональные *NIX администраторы (кстати — очень недолюбливающие линукс и обожающие те самые AIX и Solaris) к примеру традиционно побаиваются ставить апдейты на системы с аптаймом в год, потому что после этого наверняка что-то отвалится. Обновление установленного ПО — тоже стремно.
Да и «хакнуть» системы на Linux с правильным iptables нужна такая квалификация и столько времени

А вот это уже не ложь, а признание собственной некомпетентности.
Откройте metasploit, exploit-db или любой другой посвященный анализу уязвимостей ресурс. Возьмите любой установленных у вас сервисов (хоть HTTP, хоть DNS, хоть даже ssh). Посчитайте количество експлоитов «remote code execution». И нет, IPTABLES тут никаким образом спасти не сможет.
Неразумное следование же принципам и возведение их в абсолют — это ли не проявление ограниченности когнитивного ресурса — нет?

Нет конечно. Это просто проявление здравого смысла. Если делаешь что-то, то делай это хорошо.
а любой бизнес — для процветания Microsoft, когда для нормально работы системы нужно городить кучу железа

Вы видели когда-нибудь те же high-end сервера Dell/HP/Oracle? Это когда «одна стойка = один сервер». Там обычно не винда крутится. И нет, это вовсе не суперкомпьютеры.
для нормальной работы телефона — телефона! пусть и «умного», требуется полутарагигагерцовый двухядерный процессор и 2 гигабайта памяти.

Снова бредите.
Когда затраты (финансовые и прочие, в том числе полюбившиеся Вам когнитивные ресурсы) на «подстеление соломки» (а вдруг что-то случиться!) не соизмеряются со стоимостью бизнеса и возможных (возможных!) потерь этого бизнеса при простоях — вот тогда это «хомячковый» подход

А каковы затраты на поднятие автором XEN и создание 5-и виртуалок, по одной на задачу?
Ах, да, вспомнил: уверен — у Вас есть iPhone…

Нет конечно. Не люблю корявые решения.

Желаю вам когда-нибудь набраться опыта и немного поработать в области администрирования сервисов, простой которых даже на минуту — катастрофа. Нередко люди с таким опытом уходят в мелкие компании на крупные IT должности — и внезапно затраты на сопровождение IT снижаются в разы, а стабильность повышается. А все потому, что эти люди умеют делать красиво.
Надо отталкиваться от сути сервисов. Есть родственные роли или по крайней мере одного класса. Их совмещать не такое страшное зло. Если файловый сервер будет уметь отдавать по ftp, http и еще как-то — формально это разные роли, но в этом не будет криминала. Если какой-то сервер обслуживает внутренню DNS-зону, то быть еще по ходу ntp-сервером или DHCP тоже не смертельно. И совершенно другой вопрос, когда совмещение ролей противоречит, например, безопасному дизайну. Сервер электронного каталога (любого) на границе сети с функциями какого-либо фронт-энда — ясно что нонсенс.
Злобствующий выше хочу сообщить, что на данный момент samba4 создает AD домен одной командой в консоли, и попиванием кофе.

Про 1 сервер = 1 сервис. Это мудро, только когда без фанатизма. 1 сервер на dns, второй для dhcp, а третий для ntp? Даже с учетом виртуализации тратиться на такую сегментацию глупо.

Автору вопрос: как вы решили проблему неработающего Network Neighborhood в самбе?
на данный момент samba4 создает AD домен одной командой в консоли

И?
Знаете, можно взять телефоны Nortel и подключить их к астериску, установив на тот плагин, поддерживающий нортеловскую проприетарную сигнализацию — сэкономив сотни долларов на их родных PBX. Разумеется, протокол изучен методом реверсинга, как и в случае самбы, реализованы основные фичи (не все). Но надо быть полным психом, чтобы использовать такое в боевой среде.

Первоначальная настройка — самое простое из всего, что может быть в мире администрирования IT систем. А вот сопровождение уже настроенного и траблшутинг требуют некоторых скиллов. Завтра у самбы отвалится какая-нибудь критичная мелочь, из-за чего вся инфраструктура встанет раком, и придется судорожно гуглить, а ITшник, гуглящий в процессе решения критического инцидента — жалкое зрелище.
Промахнулся, ответил ниже.
Вы имеете в виду то, что samba-сервер не виден в сетевом окружении? Вы же сами ответили — не работает это же… Впрочем, это — не самый, по-моему, страшный недостаток. Я вообще никогда не был в восторге от майкрософтовского Computer Browsing'а и считаю, что незачем пользователю видеть всю сеть, а достаточно знать, что есть такие-то сервисы и ресурсы, расположенные там-то и там-то…
Разумеется, она изучена методом реверсинга, как и в случае самбы.


Это не правда, так было раньше. 4 самба делалась на основе документации предоставленной MS, и вместе с некоторыми сотрудниками MS.

Первоначальная настройка — самое простое из всего, что может быть в мире администрирования IT систем


Спорно. От задачи зависит.

Завтра у самбы отвалится какая-нибудь критичная мелочь, из-за чего вся инфраструктура встанет раком, и придется судорожно гуглить


Это конечно. Поэтому использовать samba4 в продакшене разработчики крайне не рекомендуют.

Спорно.

Неоспоримый факт, известный всем.
(хотя этап «разработка архитектуры» действительно можно отделить от этого пункта, тут тоже требуются некоторые усилия и опыт — однако, сама первоначальная имплементация новой системы с последующим переводом ее в продакшн — самое простое из всего, что есть)
Поэтому использовать samba4 в продакшене разработчики крайне не рекомендуют.

Уважаю таких разработчиков.
Лично для меня «вендор не рекомендует» и «вендор крайне не рекомендует» являются стоп-фактором при выборе решения. С помощью кувалды и такой-то матери можно прикрутить неприкручиваемое, никто не спорит, но кто будет отвечать за работоспособность такого решения? Я не готов.
Лично для меня «вендор не рекомендует» и «вендор крайне не рекомендует» являются стоп-фактором при выборе решения. С помощью кувалды и такой-то матери можно прикрутить неприкручиваемое, никто не спорит, но кто будет отвечать за работоспособность такого решения? Я не готов.

А как Вы думаете, по каким причинам вендор перейдёт от нерекомендованности установки в продакшен как раз к рекомендациям? Наверное, после обкатки продукта в «боевых» условиях. Если Вы не готовы этим заниматься, хорошо, тогда я (и подобные мне) «с помощью кувалды и такой-то матери» будем это всё внедрять, что бы Вы потом спокойно отвечали за работоспособность решения…
НЛО прилетело и опубликовало эту надпись здесь
тогда я (и подобные мне) «с помощью кувалды и такой-то матери» будем это всё внедрять, что бы Вы потом спокойно отвечали за работоспособность решения…

То есть вы готовы добровольно ставить заведомо нестабильное решение в продуктивную инфраструктуру, фактически работая бетатестером? На здоровье. А я лучше воспользуюсь рекомендованным решением. Обкатанным, кстати, не вами, а сотрудниками вендора.
НЛО прилетело и опубликовало эту надпись здесь
> Время, затраченное на их решение (около двух с половиной недель) прежде всего было потрачено на изучение документации в Интернет, опыта подобных решений, сопоставление полученной информации с реалиями, кои я видел своими глазами на нашем сервере, компиляцию-перекомпиляцию samba4, и редактирование, редактирование и ещё раз редактирование конфигов…

Про то, что потратили 2 недели там, где можно было бы потратить полчаса — уже сказали. Но это цветочки. Ягодки начнутся, когда в этом «карточном домике» что-то заработает не совсем так, как хотелось. И автор потратит еще пару недель на гугление, курение манов, правку конфигов и перекомпиляцию. В то время, как работа будет стоять — потому что все яйца в одной корзине, и резервных серверов нет. И вот тогда начальство, возможно, и поймет, что бывает, когда экономят на нормальном железе, софте и людях, которые все это подымают и обслуживают.

> Но результат меня порадовал: в итоге получилась почти полноценная замена Windows Server 2008 R2 c Active Directory, службой политики сети и доступа и службой удалённого рабочего стола (под wine, конечно, но об этом ни слова не написал).

Ну а с этого предложения мы хохотали всем офисом. Очень полноценная замена — особенно учитывая «Решение проблемы с отсутствием вкладки «Dial-in» в оснастке ADUC».
Итак, задача. Есть сервер с Ubuntu 12.04. Он должен стать:
Терминальным сервером, на котором прозрачно авторизуются пользователи AD.

Ждём раскрытия темы, интересуют подробности реализации.
Итак, задача. Есть сервер с Ubuntu 12.04. Он должен стать:

Нет такой задачи.
Есть задача «имеется физический сервер с такими-то характеристиками, и надо на нем реализовать следующие сервисы».
То, что вы держите сервер на убунте, достойно очередного фейспалма :)
Вопрос адресовался автору статьи, это была его фраза.
По всей видимости у него есть какое-то решение на эту тему.
Но спасибо вам за мнение, вы его высказали в достаточном объёме, продолжать не нужно.
Пардон, перепутал alex64 и uriah56 :)
НЛО прилетело и опубликовало эту надпись здесь
Не забываем сделать рестарт системы после внесения изменений в /etc/nsswitch.conf, ибо… В общем, нужна перезагрузка.
Можно подробнее, зачем перезагрузка?
Я понимаю и поддерживаю ваше стремление. Сам похожее делал. И специально для вас сделали Zentyal с удобной веб-мордой. Если в следующий раз будете настраивать нечто подобное, обратите внимание, сильно сэкономит вам время. Есть PPA репозиторий.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории