Данный кусок жизни я уже описывал и он есть в Интернет на моём старом сайтике, но решил выложить его вновь и только чуток облагородить. Эта статья или точнее очерк, как я переезжал на работе с MS Windows XP под FreeBSD 5.2. Не подумайте, что мне было плохо под Windows, нет все было замечательно настроено и работало. Но... обо все по порядку.
Я - сетевой администратор на заводе с количеством пользователей >2000 человек. За Интернет и почту отвечают FreeBSD, а Novell - единственная сетевая операционная система на предприятии. Поэтому основными инструментами для администрирования являются Telneat для коннекта к UNIX серверам по SSH и NetAdmin с rconsole для управления под Novell. Для решения проблем с серверами или для добавления, удаления пользователей этого было достаточно. И я бы не дергался бы с переездом под другую ОС, если бы не одно НО...
Мне нужно обучиться и настроить с нуля то, что реализовано на предприятии, так как на заводе я только до 27 лет из-за военной брони для молодых работников и время торопит.
Мне нужно было повторить следующие технологии, чтобы считать себя неплохим UNIX админом:
Мешала обучению - работа, так как кроме администрирования, в мои обязанности входило:
Вот эти звонки больше всего и мешали, представьте вы загрузились со второго раздела FreeBSD и там лабаете скрипт или копаетесь в конфиг файле и тут звонок. И голос сообщает, что ... осталось жить вам 7 дней, если вы не поможете решить проблему. И в начале приходилось перезагружать машину под Windows XP и решать проблему там. Чтобы обучаться без отрыва пришлось искать альтернативы инструментов только под UNIX.
Тут придется описать, что именно пришлось срочно заменять:
Пока я не смог заменить следующие вещи:
Как вы уже поняли, мой компьютер на работе с одной стороны сервер (proxy Squid, web-сервер Apache, базы данных MySQL, будет еще mail-сервер QMail), а с другой desktop-машина (Xchat, X-Window не нужные на сервере).
Я застрял на связке MySQL + Squid + авторизационные скрипты. В начале мне понравился Squid2MySQL. Но с ними на каждом шагу были проблемы, после того как я связался с автором дело пошло, но проблемы остались. Автор пишет скрипты на php и под Linux и это подразумевает некоторую совместимость, но выяснилось, например, чтобы скрипты работали нужно было в php.ini прописать переменную globalregister=on. Также пришлось править единственный sh-скрипт, так как команды в нем Linux'овые. Успел поюзать также SquidParser, но многое в нем не понравилось, хотя он состоит всего из 2 скриптов и установился без напрягов. Зато SquidParser пишет всех пользователей, которых вы добавите в squid.conf, я лично ужаснулся, когда представил всех 2000 пользователей в файле squid.conf. Поэтому выбор остановился на Squid2MySQL и надо его окончательно перевести с рельс Linux на рельсы FreeBSD. Сейчас Squid2MySQL авторизирует пользователя через MySQL, но не ведет логи, так как надо было создать pipe-канал на месте access.log с помощью команды
mknod /var/log/squid/access.log p
но это синтаксис Linux, а как под FreeBSD я пока не знаю.
Разобрался с mknod. Под FreeBSD тоже есть такая команда с другим синтаксисом, но оказалось нужно было
mkfifo /var/log/squid/access.log
Автор squid2mysql позабыл в своих скриптах поставить в некоторых местах ";". А нам грешным разгребать это. Вообщем, запустил squid2mysql, нужно только добавить скрипт, который будет через N минут проверять не перекачал ли кто свой лимит. Но в целом авторизация пользователей через базу данных готова на 99%.
На работе складывается нехорошая ситуация, так как уходит главный админ Денис Ершов (мой бывший однокашник) и другой админ (мой друг - Иван Андросенко aka YouT). Админов остается двое - я и коллега бывший однокашник Дима Дубровин. Димыч летом уйдет в отпуск и я остаюсь единственным и главным админом. Поэтому детство закончилось, надо срочно разбираться с DNS и маршрутизацией. Срок до 1 июля 2004 г.
Разбирался с DNS. Хорошо что есть такое издательство O'Reilly и оно выпускает замечательные книжки, например "DNS и Bind". Очень быстро сделал главный сервер DNS, а вот со вторичным возникли проблемы. Но они позади, так как теперь на моей машине есть сервер DNS и все программы на моей машине могут делать "прямое и обратное отображение имен" - во как! Самое главное, что я перевел Squid2MySQL на FreeBSD 5.2, теперь у меня 100% рабочая версия:
Все работает в лучшем в виде, так что кому надо Squid2MySQL под FreeBSD, то обращайтесь.
Очень понравилась идея, что пользователь Интернета и почты не обязательно должен быть заведен как пользователь под UNIX. Установил и опробовал немного Qmail, так как дырявый Sendmail не охота копать, хотя по работе надо, и прочел об успешной связке Postfix + MySQL. Хочу реализовать такое же, но Qmail + MySQL, читал пока только статью как делать почтовых юзверей под UNIX. Время бежит неумолимо, а еще много нужно узнать и работа мешает еще до кучи.
Иван скоро уходит и его тестовая машина будет моя. Прям как Мортал Комбат - Your Soul Is Mine. Заново там с нуля все настрою, повторение - мать-перемать учения. Да и так удобнее - сидишь на своей, а админишь другую.
Решил на своём первом сайте uvsw.narod.ru добавить раздел "project". Так кроме squid2mysql, сделал связку qmail_mysql и проектов уже два, а это много. Почта, где все пользователи виртуальные и хранятся в базе, есть поддержка алиасов и всего того, чем славен Qmail. Надо добавить по работе скрипт на Perl для отправки исходящей почты в спецслужбы для контроля, а так как пользователей много, то нужно все продумать до мелочей в плане быстродействия. Скрипт еще должен решать задачу по ограничению отправки писем по доменам. Вот пока на этом завяз, так как времени нет, а делать надо по-уму, так как хотелось бы внедрить эту систему qmail + drweb + mysql + скрипты вместо sendmail + drweb + postgres + скрипты. Все выглядит монстроужасно и ненадежно.
Раздел project будет открывать отдельные окна браузера и выглядеть удобным для распечатки, так как это инструкция для пользователей FreeBSD.
Господи, прошел целый месяц после последнего обновления этой статьи, но времени нет. Остался совсем один, все уехали, кручусь как белка в колесе. Но успел проверить и выложить статью squid2mysql. Затормозилась проверка статьи qmail_mysql - связка Qmail + MySQL + DrWeb + AntiSpam. Времени нет! Вот единственное оправдание. Скоро придет на завод друг Евгений Пашков aka gerion будет начинающим админом, на него свалю все мелкую работу, буду заниматься глобальным - делать свой сайт .
Господи, прошел целый месяц ... о, где-то я уже это видел. Сделано немало: Qmail связан с MySQL + прикручен DrWeb 4.32. Жду Димыча из отпуска, он главный perlo-писатель, ему и писать скрипты для отправки писем в спецслужбы и другую хрень. Но радует одно - пока все работает и без скриптов, все кристально чисто и понятно, в отличии от монстроужасной двухголовой почтовой системы на базе Sendmail + скрипты, которая действует на предприятии сейчас. Но и в новой почтовой системе скрипты нужны для расширения "функциональности Qmail", на заводе слишком много надо из того, что стандартными средствами и не сделаешь.
Просмотрел рынок АнтиСПАМных средств. Вроде программ много, а приглядеться и нет почти. Западные программы русский СПАМ фильтруют по оценкам специалистов только на ~10%. Из русских - если выкинуть программочки от Васи Пупкина, то остается SpamTestServer от Ашманов и Партнеры. Большинство стоящих программ основаны на SpamTestServer, типа Kaspersky Anti-Spam. Но лицензия на SpamTestServer - 500 пользователей стоит 1500$, сейчас руководство размышляет над возможностью приобретения SpamTestServer. Если дадут добро - то впервые на предприятии перед почтовой системой будет стоять АнтиСПАМный фильтр. И соответственно новая почтовая система будет "rulezzz forever".
Жека Пашков во всю уже работает, разгрузил меня, создавая пользователей и обеспечивая им Интернет и почту. За что ему thanks.
Уже год как не разговаривал сам с собой . Да-а-а много воды утекло. Сейчас перечитывал то, что было год назад и все это кажется таким несерьезным и дурацким, но это было. Сейчас намного все легче и проще. FreeBSD уже стала 5.4 под которой и сидим и радуемся, была попытка подключить Novell Netware к FreeBSD, но я побился-побился да и побрился. К черту Новелл. Теперь на моей FreeBSD Desktop нет ничего серверного, чисто пользовательская машинка.
Толи время учебы прошло, толи так умным стал. Осталась в принципе одна задача заставить работать OpenGL и DirectX игры под FreeBSD. Меня устроил бы запуск WarCraft III, а то надоело после работы перезагружаться под Windows, чтобы иногда погамать с друзьями. Но компьютер хоть и дали новый, но в нем видеокарточка ATI, а это значит что дров под не-Windows нету. То есть все усложняется и я уже пообломал клыки об эту задачу, ну как-нибудь со временем допинаем задачу. А пока работаем потихоньку, музыка-видео есть, а что еще надо мультимедийной машинке?
Итоги пребывания на Звёздочке.
Дико благодарен Дмитрию Дубровину, с которым многому обучались вместе и много было чего обсуждено и прочитано в купленных на свои деньги книгах. Дмитрию благодарен за разжёвывание философии портов FreeBSD, это сейчас я понимаю всё об процессе установки программ во Фре, но в те годы, не всё было сразу ясно и понятно.
Уже спустя многие годы, я часто видел Фри с установленными из непонятно откуда взятых исходников и потом разгребать за такими админами всё дерьмо, что всплывало при обновлении программ. Сколько же я матов клал во время удаления такого барахла и установке заново этой же программы из портов, чтобы в будущем иметь лёгкую и удобную возможность поддерживать систему актуальной.
Многие админы до меня на заводе, получив порцию знаний, уезжали в резиновую столицу нашей родины в поисках лучшей доли. С другом Евгением Пашковым тоже решили рвануть в первопрестольную.
Кратко. Женя остался, а Москва мне психологически не понравилась и я после пары собеседований почти сразу вернулся обратно в свой родной Северодвинск.
Связанные темы:
Оглавление ИТ автобиографии.
1. Учёба во ВТУЗе и УЦ Знание.
3. Возвращение блудного сына. Ионит.
4. Северное машиностроительное предприятие.
5. БИУС.