Linux для всех → GrSecurity/PaX: предустановленные security level
(Статья для тех, кто уже в теме. Остальным будет интереснее сначала почитать мои предыдущие статьи про Hardened Gentoo: описание, установка, настройка, впечатления.)
Речь пойдёт про настройку GrSecurity/PaX (я дал русскоязычные ссылки, но англоязычные намного информативнее) в ядре линуха. Всё описанное актуально для Hardened Gentoo (ядро 3.1.5), но применимо в любом дистрибутиве (там не будет предустановленных Gentoo-шных security level workstation/server/virtualization, но по моему описанию в этой статье их легко будет реализовать вручную).
Кроме того я провёл небольшое тестирование производительности с целью определить насколько использование GrSecurity/PaX тормозит работу системы. Тесты проводились на Core2Duo в 32-битной OS в single user mode на компиляции ядра с -j3, бралось среднее значение user+sys по трём прогонам (скорость сборки ядра сравнивалась с эталонной: при отключенных GrSecurity и PaX в ядре и использовании обычного, не hardened, gcc).
Речь пойдёт про настройку GrSecurity/PaX (я дал русскоязычные ссылки, но англоязычные намного информативнее) в ядре линуха. Всё описанное актуально для Hardened Gentoo (ядро 3.1.5), но применимо в любом дистрибутиве (там не будет предустановленных Gentoo-шных security level workstation/server/virtualization, но по моему описанию в этой статье их легко будет реализовать вручную).
Кроме того я провёл небольшое тестирование производительности с целью определить насколько использование GrSecurity/PaX тормозит работу системы. Тесты проводились на Core2Duo в 32-битной OS в single user mode на компиляции ядра с -j3, бралось среднее значение user+sys по трём прогонам (скорость сборки ядра сравнивалась с эталонной: при отключенных GrSecurity и PaX в ядре и использовании обычного, не hardened, gcc).
Linux для всех → Готовим свой Linux на базе Gentoo

Многие любят Gentoo за ее универсальность. Используя портежи, можно сделать инструмент под любые задачи. И пускай вас не смущает то, что секретарь никогда не будет компилировать Firefox — Боже упаси ей дать возможность ставить софт! Что может быть лучше дистрибутива, установив который вам больше ничего не понадобится с ним делать! Представьте себе — 5-10 минут времени и вы получаете систему с необходимым набором софта, собранного, настроенного и оптимизированного по вашим предпочтениям.
Системное администрирование → Ставим Gentoo x64 + xen на диски размером 3Tb в Hetzner из песочницы
Для чего это нужно: Допустим вам нужно организовать пару тройку независимых удаленных рабочих столов. Не арендовать же под каждый rdp, отдельный сервер, можно арендовать один и сделать их там хоть 16 штук.
Арендовав пару серверов класса EX4 на hetzner.de я встал перед проблемой, в сервере установлено два диска по 3Tb и все. Есть известная проблема, что диски с таблицей разделов MBR могут адресовать только 2,2Тб. Было два варианта, либо настраивать MBR и отказываться от 800гигов дискового пространства, либо сделать таблицу GPT и попытаться загрузиться из неё, что весьма не тривиально, но по факту просто.
Плюс небольшой HOWTO как поставить Xen.
Арендовав пару серверов класса EX4 на hetzner.de я встал перед проблемой, в сервере установлено два диска по 3Tb и все. Есть известная проблема, что диски с таблицей разделов MBR могут адресовать только 2,2Тб. Было два варианта, либо настраивать MBR и отказываться от 800гигов дискового пространства, либо сделать таблицу GPT и попытаться загрузиться из неё, что весьма не тривиально, но по факту просто.
Плюс небольшой HOWTO как поставить Xen.
Perl → Установка Perl-модулей в Gentoo
Самый большой недостаток экосистемы языка Perl — управление модулями (другой кандидат на эту роль — долгострой Perl6, но не будем о нём). Что любопытно, самое большое достоинство этой же экосистемы — наличие единого архива модулей CPAN. Поразительно, собрать и организовать модули смогли, а реализовать удобную установку/обновление/удаление — нет.Богатство выбора… или очередное TIMTOWTDI
Существует множество альтернативных подходов к этой задаче (и их количество тоже косвенно указывает на то, что ни один из них не решает проблему достаточно хорошо): cpan, cpanplus, cpanminus, pip, cpansite, minicpan/mcpani, perlbrew, cpan-outdated, cpan-listchanges, local::lib, …Итак, у нас может быть:
- Несколько версий самого perl (разумеется, каждая со своими глобальными модулями), в т.ч. установленные в домашний каталог юзера (см. perlbrew).
- Глобальные (доступные при запуске perl) и локальные (подключаемые из любого каталога/каталогов, обычно располагающиеся внутри отдельного проекта или в домашнем каталоге пользователя) модули.
- Глобальные модули бывают трёх типов: core (идущие вместе с perl), site (устанавливаемые вручную админом) и vendor (устанавливаемые менеджером пакетов вашей ОС).
- Все глобальные модули находятся в подкаталогах «номер.версии.perl/», и эти каталоги никто автоматически не чистит. А при установке новой версии perl создаются новые аналогичные каталоги. И perl подгружает модули из каталогов всех доступных предыдущих версий. Так что умножьте core+site+vendor на количество обновлений perl — вот в таком количестве каталогов/вариантов находятся ваши глобальные модули.
- Источники модулей тоже бывают разные: CPAN, локальные зеркала-оверлеи CPAN с приватными модулями, просто свои или скачанные из инета модули отсутствующие в CPAN-совместимой системе.
Gentoo → Paludis — альтернатива Portage из песочницы
Введение
Традиционным для Gentoo менеджером пакетов является Portage, он берет начало в системе портов BSD и имеет то же свойство, отличающее его от других известных менеджеров, таких как APT, Pacman и RPM — сборка пакетов из исходных кодов.
В то же время, Portage не лишен недостатков — его обвиняют в запутанности кода, медленной работе, обилии костылей и прочем.
Поэтому был создан, изначально планировавшийся как фикс Portage, менеджер Paludis.
Особенности и отличия
- Paludis написан на компилируемом языке C++, в то время как Portage — на интерпретируемом Python.
- В Paludis все источники исходных кодов являются репозиториями, в то время как Portage использует portage tree и оверлеи(overlays)
- Paludis может работать не только с ebuild'ами, но и с другими файлами.
- В Paludis присутствует гибкая настройка вывода, в Portage эта возможность весьма ограничена
Linux для всех → Canterbury
Мы с радостью объявляем о появлении нового свободного дистрибутива под названием Canterbury.
Canterbury является плодом объединенных усилий разработчиков дистрибутивов, ранее известных, как Debian, Gentoo, Grml, openSUSE и Arch Linux.
Canterbury является плодом объединенных усилий разработчиков дистрибутивов, ранее известных, как Debian, Gentoo, Grml, openSUSE и Arch Linux.
Системное администрирование → Конфигурация Mercurial+Nginx для управления большим количеством репозиториев
Под катом описан пример конфигурации связки mercurial+nginx и приведен скрипт автоматизации всего вышеперечисленного.
Linux для всех → Использование, настройка и тестирование distcc и ccache из песочницы
Предистория:
Однажды мне пришла мысль проверить эффективность таких инструментов как distcc и ccache. Использовались они уже давно, но в голове все еще крутилась мысль о целесообразности этого всего. И вот наконец руки дошли проверить на практике, сразу предупреждаю что все делалось для себя, в реальных условиях, и результаты ваших тестов могут не совпадать с приведенными ниже. Рассмотрим установку и настройку этих компонентов, а затем проведем тестирование скорости сборки с помощью команды time.
Cisco → Виртуальная лаборатория для подготовки к сертификации Cisco на базе Linux из песочницы
Введение

Многие при подготовке к сдаче экзаменов Cisco или просто изучения сетей для практических занятий предпочитают собрать и использовать лабораторию из реального железа. В таком случае одним из выходов является покупка подержанного цисковского железа на Ebay, но это вам обойдется не в одну сотню долларов.
Другие довольствуются использованием симулятора сети — Cisco Packet Tracer. Для подготовки к CCNA я использовал именно его. Он прост в использовании, удобен, не требует сильного железа и идеально подходит для начинающих. Но из-за ограниченности в функциях для более серьезного изучения он непригоден.
Если же вы не хотите тратить свои кровные $$ и получить устройства с реальными IOS-ами, то нужно смотреть в сторону использования эмулятора сети GNS3 на базе Dynamips. Введение в его использование уже есть на Хабре.
Я же расскажу как его можно соединить с хостовой ОС Linux (на котором он запущен) и серверами в VirtualBox-е. Это значительно расширяет наши возможности по созданию сложных топологий с использованием роутеров Cisco, серверов с различными сервисами в VirtualBox и выходом в Интернет через хостовую ОС Linux.
Персональные блоги → Облако selectel — не помеха для запуска Gentoo
Сегодня ночью попробовал установить Gentoo в виртуальной машине selectel.ru.
Для начала надо зарегистрироваться и создать виртуалку с какой-нибудь осью.
Для тестов выбрал Debian mini.
После создания, подключаю еще один жесткий диск, размером как минимум 2Gb.
Создаем на нем разделы, форматируем.
При форматировании необходимо учесть, что в стандартной конфигурации (stage3+portage) очень много мелких файлов, по этому inode могут закончиться быстрее, чем место на диске. По дефолту, на 1.9 gb их получается 125568, этого не хватит, что бы распаковать stage3 и portage.
Форматируем раздел размером 1.9 gb:
Для начала надо зарегистрироваться и создать виртуалку с какой-нибудь осью.
Для тестов выбрал Debian mini.
После создания, подключаю еще один жесткий диск, размером как минимум 2Gb.
Создаем на нем разделы, форматируем.
При форматировании необходимо учесть, что в стандартной конфигурации (stage3+portage) очень много мелких файлов, по этому inode могут закончиться быстрее, чем место на диске. По дефолту, на 1.9 gb их получается 125568, этого не хватит, что бы распаковать stage3 и portage.
Форматируем раздел размером 1.9 gb:
mkfs.ext3 -i 8192 /dev/xvda1 — получаем 251136 inodemkfs.ext3 -i 4096 /dev/xvda1 — получаем 502272 inode