LINUX.ORG.RU

Адский полигон

 , ,


10

7

Адский полигон (a.k.a. домашний ынтырпрайз для извращенцев). Из чего «оно» состоит - 4 компьютера:

WORK.LOCAL (линукс на работе) с тремя сконнектнутыми сетями - корпоративной локалкой, приватной сетью для виртуальных машин и приватной сеткой «для личных нужд», в которую подключаются андроиды, ноутбуки и всякая прочая мобильная мелочевка (в третья сетку воткнута точка доступа). Система стоит за страшной коропоративной проксёй (на старой феоре со сквидом). А, виртуалки живут в libvirt/qemu-kvm. Вируталок там чуть-чуть - Win7, 2xWin2003, SL, Fedora-i386. Понятно что не все живут одновременно, но бывает и такое...

VPN.LOCAL (арендованая виртуалка) - её задача обслуживать мои личные нужды где бы я ни находился. Ну, например, она серез VPN соединяет все компьютеры (и ещё два компьютера на разных площадках одного заказчика, чисто чтобы можно было на них прямо делать http, ftp и ssh).

ASUS.HOME.LOCAL (мелкий домашний маршрутизатор) - он поддерживает связь с интернетом (на него заведен линк от провайдера). И ещё на нем подняты два VPN точка-точка, один с WORK.LOCAL, второй с VPN.LOCAL. Ну и ещё один VPN до второго заказчика. Ничего сложного в общем-то.

HOME.LOCAL (домашний компьютер) - вообще просто. Линукс с одним эзернетом воткнутый в LAN-порт маршрутизатора. Хотя, на самом деле не всё так просто - на нем ведь есть ещё внутренняя раутабельная сеть в которой живут виртуалбоксные виртуалки. Почему виртуалбокс? Потому что процессор E5200, и QEMU-KVM на нем не живет, скотина, а без KVM оно издевательски медленное.

BOOK.LOCAL (ноутбук, как наверное понятно) - просто ноутбук. Всё как обычно - линукс, федора, отдельная приватная виртуальная host-only сеть на которой висят виртуалки (опять же libvirt/qemu-kvm, благо процессор позволяет). Вирталок 4 штуки - Fedora-i386, SL-x86_64, SL-i386, Win2003. А, ещё на нем настроен VPN «по требованию», который через интернет цепляется к VPN.LOCAL (это если я через мобильник подключен или через публичный WiFi).

VPN-каналов пачка разной структуры: 3 точка-точка (WORK-ASUS, ASUS-VPN, WORK-VPN) + клиент-сервер на VPN.LOCAL (для нужд «ноутбук уехал далеко и хочет достучаться до дома»)

Ноутбук ездит то на работу, то домой (ну как получится), и соответственно до виртуалок в его host-only сети хрен достучишься. Ну или с них хрен выстучишься на другой конец сети. Поэтому, на WORK, BOOK, ASUS и HOME поднят OSPF - в результате эта четверка всегда друг с другом снюхиваются и сами строят маршруты так как правильней, то есть по наиболее краткому маршруту. Лень - источник прогресса. Три линукса работают DNS-серверами для зон {WORK|VPN|HOME|BOOK}.LOCAL, ну и ещё живет собственно зона LOCAL. Между серверами налажены отношения master-slave. В довершение ко всему, каждый из таких «боевых» линуксов имеет по специальному виртуальному интерфейсу на котором висят адреса с маской /32 (для однозначной идентификации хостов).

Все линуксы (кроме VPN.LOCAL) «оснащены» по типовому сценарию, включающему в себя серверы LDAP, KDC, KADMIN, Samba. Последние три (KDC, KADMIN, Samba) прикуривают от первого (от LDAP). Ну и сама самба также авторизуется через Keberos. Все три сервера LDAP в multi-master репликации «каждый с каждым». Репликация (естественно!) черз ldaps (порт 636). Для целей оного, развернуто жалкое подобие CA с собственным корневым сертификатом. Все виртуальные винды зарегистрированы в Kerberos-домене (дааа, линуксовые скрипты opendirectory и виндовый клиент работают!). Ну и еще SSSD на всех трех больших линуксах (каждый ходит в личный LDAP и личный Kerberos). Смену пароля каждый юзер делает просто командой passwd (которая через SSSD обращается к локальному KADMIN, и тот отправляет всё в LDAP, через который данные и реплицируются).

Ну а на скриншоте - smbclient на book.local (стоящий сейчас дома) обратившийся к work7.local (Win7 в виртуалке на работе), с аутентификацией через Kerberos. Ах да - тикет получен на book.local, и отлично подощел к WORK7 (который проверил его через WORK.LOCAL). На второй половинке- консольки управления LDAP-сервером, зацепленные на два разных сервера.

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

Ах да, из этого стройного ряда выпадает VPN.LOCAL - на нем есть LDAP, но он используется для обслуживания другого домена :-)

>>> Просмотр (1280x1600, 548 Kb)

★★★★★

Проверено: JB ()
Последнее исправление: JB (всего исправлений: 1)
Ответ на: комментарий от no-dashi

это была мелкая придирка. А так - респект. И конечно реквестирую в вику.

drBatty ★★
()

А что с хранением данных?
Как реализована защита в случае выхода из строя одной системы? Просто с нуля развернёшь систему или бэкапы есть?
Как реализовано хранение личных/важных данных? Как делаешь бэкапы? Какие схемы для отказоустойчивости сделаны? А что будет если у тебя накроется винт с личными данными?

Deleted
()
Ответ на: комментарий от Deleted

Как реализована защита в случае выхода из строя одной системы?

Тривиально. Есть ещё две с полностью идентичными базами. Удаляю на них реплику на мертвую систему, на умершей системе переставляю ОС, ставлю необходимые пакеты, разворачиваю «пустышку» LDAP-сервера, настраиваю на нем SSL (сертификаты заныканы в несколько копий), потом инициализирую его с одного из уцелевших копий, копирую каталог krb5kdc и sssd.conf. Всё, готово.

Как реализовано хранение личных/важных данных?

Есть копия фотографий в SkyDrive. Мелкие данные и проекты лежат в ДЦ на арендованой виртуалке. Приватных данных я на компах не держу, вообще. Есть USB-HDD на 60GB свободных, куда также периодически сливаются бэкапы

no-dashi ★★★★★
() автор топика
Ответ на: комментарий от no-dashi

Приватных данных я на компах не держу, вообще.

Это в каком смысле? Где-то же таки надо хранить приватные данные, которые существуют в электронном виде?

fagot ★★★★★
()

снимаю шляпу - у меня схема проще, да и OSPF только в локальных сетях - по VPN делаю redistribute в BGP на приватную AS.

Pinkbyte ★★★★★
()
Ответ на: комментарий от JB

******

невероятно круто. Теперь тебе осталось только написать хауту в нашу Wiki описывающее все вышеперечисленное :)

Шестую звезду за HOWTO!

Camel ★★★★★
()
Ответ на: комментарий от crypt

Кстати, спасибо тебе огромное - я за базовую отправную точку для раскапывания во многом твою статью использовал :-)

А насчет страшного FDS - я специально скрипты-обертки под все типовые задачи написал, так что в интерфейс залазить приходится только для нетипичных случаев, или для совсем муторных.

no-dashi ★★★★★
() автор топика
Ответ на: комментарий от no-dashi

Тебе спасибо. Мне очень приятно было узнать, что одному человеку она точно пригодилась.)

crypt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.