Node.JS → Node.js демон для FreeBSD: forever + rc.d из песочницы
В процессе работы над проектом с использованием Node.js в качестве серверсайда, возникла задача запуска JS скрипта в качестве сервиса, со всем плюшками типа start, stop, restart. По этой теме в принципе уже достаточно информации, но она в основном сводится к использованию Monit + Init под линуксом, либо кратких советов типа «use nodemon, Luke».
В моём случае в качестве продакшн-сервера была машина на FreeBSD. В качестве утилиты запускающей JS файл как процесс мне приглянулся forever. Эта штука, в отличии от nodemon, умеет следить за запущенными под ней процессами и поднимать их при падении без ожидания изменения в исходниках скрипта, что очень удобно именно на продакшене. К тому же forever умеет показывать текущий список запущеных процессов, с отображением их аптайма, ну и позволяет останавливать/перезапускать процессы по имени или индексу.
Недолго думая, был написан rc.d скрипт:
В моём случае в качестве продакшн-сервера была машина на FreeBSD. В качестве утилиты запускающей JS файл как процесс мне приглянулся forever. Эта штука, в отличии от nodemon, умеет следить за запущенными под ней процессами и поднимать их при падении без ожидания изменения в исходниках скрипта, что очень удобно именно на продакшене. К тому же forever умеет показывать текущий список запущеных процессов, с отображением их аптайма, ну и позволяет останавливать/перезапускать процессы по имени или индексу.
Недолго думая, был написан rc.d скрипт:
Системное администрирование → Еще раз про IPSec, racoon и стереотипное мышление
Поводом для написания этого поста стала прочитанная мною сегодня статья хабраюзера sharptop. Просто начал писать комментарий, но он оказался очень длинным, итак: сказ о том, как мы енота разоблачали.
Системное администрирование → FreeBSD и D-Link DI-804HV через IPSEC из песочницы
Хочу рассказать об одном из своих первых опытов общения с FreeBSD и настройке IPSEC для связи с D-Link DI-804HV и проблемах, которые возникли при этом. Надеюсь, это поможет народу не наступать на мои грабли.
Так получилось, что когда я пришел на новую работу, то в мою сферу ответственности попал сервер с FreeBSD, который был шлюзом в Интернет — на нем крутился почтовый сервер и файерволл. По предыдущей работе был опыт работы с Линуксами, но FreeBSD до этого в глаза не видел. И вот одна из первых задач на новой работе была настроить соединение с удаленным офисом через инет, для этого туда прикупили железку D-Link DI-804HV. Решено было соединить это все хозяйство через IPSEC.
Так получилось, что когда я пришел на новую работу, то в мою сферу ответственности попал сервер с FreeBSD, который был шлюзом в Интернет — на нем крутился почтовый сервер и файерволл. По предыдущей работе был опыт работы с Линуксами, но FreeBSD до этого в глаза не видел. И вот одна из первых задач на новой работе была настроить соединение с удаленным офисом через инет, для этого туда прикупили железку D-Link DI-804HV. Решено было соединить это все хозяйство через IPSEC.
Информационная безопасность → Уязвимость в sudo
Наверное все заинтересованные лица подписаны на соответсвующие рассылки и нет смысла превращать блог в security-notifications, но тем не менее, уязвимость в sudo 1.8.0 — 1.8.3p1 потенциально позволяет выполнить от рута команду любому локальному пользователю, способному запустить sudo. CVE-2012-0809
Во FreeBSD уже пропатчились, линупсы пока спят, а в случае стабильных веток им всё равно — ветка sudo 1.7 уязвимости не подвержена.
Ошибка кроется в передаче vfprintf argv[0] в функции отладочного вывода.
С помощью ключа компиляции FORTIFY_SOURCE можно усложнить эксплуатацию бага, без него эксплоит совсем простой.
Оригинальное описание.
Во FreeBSD уже пропатчились, линупсы пока спят, а в случае стабильных веток им всё равно — ветка sudo 1.7 уязвимости не подвержена.
Ошибка кроется в передаче vfprintf argv[0] в функции отладочного вывода.
С помощью ключа компиляции FORTIFY_SOURCE можно усложнить эксплуатацию бага, без него эксплоит совсем простой.
Оригинальное описание.
Информационная безопасность → Во FreeBSD устранено 5 уязвимостей, включая критическую root-уязвимость в telnetd
Выпущены отчёты об исправлении пяти уязвимостей, затрагивающих базовую систему всех поддерживаемых веток FreeBSD (RELENG_7, RELENG_8, RELENG_9):
Системное администрирование → Централизованное резервное копирование данных Windows и *nix серверов средствами Bacula
Приветствую всех хаброжителей!
Как нетрудно догадаться, речь пойдет о бекапах.
Своевременный бекап — крайне важная часть работы системного администратора. Своевременный бекап делает сон спокойным, а нервы стальными, придает сил и оберегает здоровье.
Думаю вполне резонным будет предположение, что данная тема уже набила оскомину, но все же я рискну поделиться своим опытом. На суд читателя будет представлена клиент-серверная реализация схемы резервного копирования. В качестве инструмента я выбрал open source проект Bacula. По более чем полугодовому опыту его использования остаюсь доволен своим выбором.
Bacula состоит из нескольких демонов, каждый из которых несет свою функциональную нагрузку. На рисунке ниже схематично представлена взаимосвязь этих демонов.
Под хабракатом я опишу все демоны подробно

В моем случае резервному копированию подлежат:
Как нетрудно догадаться, речь пойдет о бекапах.
Своевременный бекап — крайне важная часть работы системного администратора. Своевременный бекап делает сон спокойным, а нервы стальными, придает сил и оберегает здоровье.
Думаю вполне резонным будет предположение, что данная тема уже набила оскомину, но все же я рискну поделиться своим опытом. На суд читателя будет представлена клиент-серверная реализация схемы резервного копирования. В качестве инструмента я выбрал open source проект Bacula. По более чем полугодовому опыту его использования остаюсь доволен своим выбором.
Bacula состоит из нескольких демонов, каждый из которых несет свою функциональную нагрузку. На рисунке ниже схематично представлена взаимосвязь этих демонов.
Под хабракатом я опишу все демоны подробно

В моем случае резервному копированию подлежат:
- Конфигурационные файлы различных демонов со всех серверов.
- MySQL базы данных.
- Документооборот с файлового сервера Windows.
- Различные важные данные с nix серверов(движки сайтов/форумов, etc..)
Системное администрирование → IPv6 шлюз для локальной сети
Для проверки готовности локальной офисной сети к возможности перехода на протокол IPv6 мною был организован испытательный стенд на основе сервера с FreeBSD, являющийся шлюзом для доступа в IPv6 интернет и сервером популярных сетевых ресурсов (WEB, eMail, FTP). Выбор FreeBSD обусловлен наличием уже существующей виртуальной машины с этой системой. Далее я немного расскажу как всё было настроено (не в даваясь в теоретические подробности построения и адресации IPv6) и попытаюсь обрисовать ситуацию о готовности существующих систем и программ к использованию с IPv6 на примере тех сервисов, которые мне удалось протестировать, как со стороны клиента, так и со стороны сервера. Эксперименты активно проводились в период месяц «до» и месяц «после» «Дня IPv6» 8 июня 2011, поэтому сейчас ситуация с поддержкой в некоторых программах может измениться в лучшую сторону.
Системное администрирование → Трудности администрирования гостевых хотспотов. Практика (часть 2)
В предыдущей статье я рассказал о том, как отследить состояние isc-dhcpd, теперь о практических методах применения данной схемы.
При работе в высоко нагруженных гостевых Wi-Fi сетях возникает проблема отслеживания и добавления клиентов, которые имеют расширенный доступ к внешним сервисам. Самый лучший вариант это контроль доступа по MAC адресам (занесение связки адресов в dhcpd.conf), но как показывает практика он достаточно неудобен, т.к. Вы реально не можете контролировать состояние уже занесенных в конфиг хостов и их работу.
При работе в высоко нагруженных гостевых Wi-Fi сетях возникает проблема отслеживания и добавления клиентов, которые имеют расширенный доступ к внешним сервисам. Самый лучший вариант это контроль доступа по MAC адресам (занесение связки адресов в dhcpd.conf), но как показывает практика он достаточно неудобен, т.к. Вы реально не можете контролировать состояние уже занесенных в конфиг хостов и их работу.
Системное администрирование → Трудности администрирования гостевых хотспотов (часть 1)
В этой небольшой статье я расскажу как снять с себя головную боль по администрированию больших подсетей завязанных на раздачу интернета приходящим пользователям.
Основные инструменты:
Желающие узнать про всё написанное под кат, остальным хорошего просмотра остальных топиков.
Ссылка на вторую часть
Основные инструменты:
- Голова
- Еще раз голова
- Руки
- FreeBSD
- PF
- isc-dhcpd
- memcached
- perl
Желающие узнать про всё написанное под кат, остальным хорошего просмотра остальных топиков.
Ссылка на вторую часть
*BSD → text2wave из комплекта Festival в FreeBSD
Доброго вам времени суток.
В данной статье хотелось бы рассмотреть грабли в виде скрипта text2wave из комплекта системы для генерации голоса Festival в FreeBSD. Столкнулся я с этой проблемой при создании голосового меню в Asterisk средствами Festival.
В данной статье хотелось бы рассмотреть грабли в виде скрипта text2wave из комплекта системы для генерации голоса Festival в FreeBSD. Столкнулся я с этой проблемой при создании голосового меню в Asterisk средствами Festival.