- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF143:Тема номера
Материал из Linuxformat.
- Магия сисадмина
Секреты сисадмина. Советы профессионалов как сделать ваш Linux-компьютер быстрее, безопаснее и умнее
- Выстругайте себе посохи, стряхните пыль с дорожных плащей – мы отправляемся в мир волшебного искусства сисадмина Linux. Ник Вейч раскрывает книгу заклинаний…
Многим из нас для счастья вполне достаточно включить компьютер да и работать себе. И все бы отлично; ну, а вдруг компьютер заартачится? Или — вы знаете, что желаемое возможно, но не уверены в умении это реализовать? Лишние знания бывают крайне опасны, но и крайне полезны, если вы пытаетесь заставить свою Linux-машину плясать под вашу дудку.
Наши ожидания от компьютеров со временем изменяются, и если ваш дом похож на наш, он нашпигован хитрыми сетевыми устройствами, там явно не один компьютер плюс масса алчных до электроэнергии ящиков, мигающих лампочками и соединяющих все это добро между собой. Управление такими системами представляется жутью, и, будучи линуксоидом, вы можете ощутить себя в изоляции. И зря! Вот вам хорошая новость: вы не одиноки. Есть масса информации вам в помощь – и в Internet, и на самом вашем компьютере (вы еще не забыли про все эти man-страницы, которые собирались прочесть?). А теперь к вам в руки вдобавок попала и книга-талмуд с массой ценных заклинаний, которые помогут вам добиться поставленных целей. Прочите ее – и узнаете, какое могучее волшебство таится в вашем Linux-ящике…
Перенести пакеты в новую инсталляцию
Зачем? Вы покалечили свою систему, и теперь ее нужно переустанавливать; или вы просто хотите добавить диск, и вам неохота искать все ваши приложения заново.
Как? В Ubuntu или любой другой системе с менеджером пакетов dpkg определение состава установленных пакетов – задача тривиальная. Команда dpkg имеет для этого специальную опцию:
dpkg --get-selections
Команда выведет список установленных в системе пакетов. Чтобы обеспечить переустановку, сначала сохраним этот список, командой
dpkg --get-selections > packages.txt
Сохраните текстовый файл в безопасном месте (или отправьте его себе по почте), а затем переустановите Linux, установите новый диск или что вы там со бирались сделать. Скопируйте текстовый файл в локальный каталог и дайте следующие команды:
dpkg --set-selections < selections.txt dselect update apt-get dselect-upgrade
СОВЕТЫ ПО РАБОТЕ С ОБОЛОЧКОЙ
Вам нужно следить за своим хозяйством? Поможет команда watch. Она просто очень часто запускает другую команду, обновляя отображение ее вывода и, при необходимости, выделяя изменения. Например, чтобы наблюдать список файлов, скомандуйте: watch -d ls -l
- 1 Перенаправляйте вывод
- Оболочка использует двойные угловые скобки для перенаправления стандартного вывода, и вы можете сохранить его в файл. Например, вот как можно записать отчет о занятости памяти:
free >> ram.txt
- 2 Фильтруйте файлы в grep
- Можно перенаправлять вывод одной команды на вход другой, с помощью символа канала | связывая их в одну строку. Обычно это полезно для фильтрации вывода или аналогичных целей, как показано в следующем примере:
rpm -qa | grep ‘python’ > python-packages
- 3 Сэкономьте на печатании
- Не приходилось ли вам ввести команду и в итоге получить только сообщение о том, что для нее нужны пра ва root? И как тут не разозлиться? Но набирать команду повторно незачем. Просто воспользуйтесь «историей» ввода команд оболочки, вот так:
sudo !!
- 4 Учитесь зацикливаться
- Не тратьте свою жизнь и не утруждайте пальцы, вводя монотонные последовательности одинаковых команд. Вспомните об умении Bash работать с циклами. Вот эти чудеса в действии:
for i in 1 2 3 4 5 do touch myfile.$i done
- 5 Сэкономьте на печатании, ч. 2
- Bash способен на раскрытие скобок и перечислит для вас значения, разделенные запятыми и заключенные в фигурные скобки. Так, “{One, two}” превратится в “one two". С виду это не особо полезно, пока вам не захочется скопировать какой-нибудь глубоко вложенный файл, например:
cp /etc/X11/xorg.conf{,.bak}
- 6 Пользуйтесь поиском
- Команда find часто мелькает в списках советов по работе с Bash, но она умеет не только искать по именам. Ключ -mtime ограничивает поиск файлами, которые были изменены в пределах указанного количества дней назад. Если ваш компьютер взломали, проверьте, не испорчены ли ваши файлы настройки, командой
sudo find /etc -mtime -1 -name “*conf*”
- 7 Берите уроки истории
- Bash ведет историю команд, так почему бы ею не пользоваться? Нажмите Ctrl-R и начните ввод команды. Bash автоматически допишет ее до соответствующей команды, которую вы вводили недавно. Для принятия этой подсказки нажмите Enter.
Управление сервисами
Зачем? Чтобы экономить системные ресурсы или добавить требуемые функции.
Как? При запуске вашего Linux-компьютера происходит инициализация большого количества программ. Многие из них настроены как сервисы – обычно это код, который незаметно работает в фоновом режиме, выполняя задачи вроде синхронизации системных часов или управления web-сервером. Многие из этих сервисов жизненно важны для безопасной работы вашего компьютера (например, Cron), но есть и избыточные – они подключаются при установке дистрибутива, потому что когда-нибудь могут понадобиться. Некоторые сервисы вообще могут бесить – например, сервис ntp, который синхронизирует ваши часы со службой точного времени через Internet. Это, возможно, и неплохо, если ваша машина постоянно сидит в сети, но годится не всем.
Практически во всех дистрибутивах имеется система управления сервисами. В Fedora это делается через опции System > Administration > Services. А Ubuntu имеет инструмент System > Administration > Startup Applications, хотя он настраивает не все сервисы в вашей системе. Но это не проблема: можно настроить систему и из командной строки.
«За кадром» эти системы запускают скрипты, содержащиеся в /etc/init.d, и иногда вы можете захотеть проделать то же самое.
Скрипты различаются друг с другом, поскольку поставляются пакетами, к которым относятся, но все они следуют общим правилам. Каждый предлагает возможность запуска или останова сервиса. Одни могут сообщать текущий статус, а другие умеют выполнять принудительный перезапуск – это бывает удобно после выполнения правок. Например, ваши изменения, внесенные в конфигурацию Apache, не войдут в силу, пока вы не перезапустите сервер, вот так:
sudo /etc/init.d/httpd restart
Вы можете даже возжелать создать собственные скрипты для управления сервисами; а коли так, рекомендуем вам понравившееся читателям руководство по Bash из LXF136: там описаны основные принципы написания таких скриптов.
Информационные страницы – это расширенные версии man-страниц, разбитые на тематические разделы и подразделы с удобной навигацией. Правда, удобна эта навигация, только если знать, на какие магические кнопки жать. К счастью, для них есть своего рода интерактивное руководство. Скомандуйте info info и нажмите клавишу h, чтобы начать процесс ознакомления.
Запуск задач из Anacron
Зачем? Чтобы ваш компьютер не был постоянно включен.
Как? Anacron – это напарник Cron, системного планировщика. Cron – отличный инструмент, гарантирующий, что необходимые задачи выполнятся. Но вот беда: задачи Cron назначаются на выполнение в конкретное время. Если ваш компьютер в этот момент будет выключен, Cron не сможет их запустить.
Выход – обратиться к Anacron. Когда система стартует, этот инструмент проверяет, нет ли невыполненных задач, и если они есть, пытается их запустить. Этот инструмент использует более простой метод планирования задач – ежедневных, еженедельных или ежемесячных – и при каждом запуске проверяет, были ли выполнены эти задачи в течение соответствующего временного интервала.
Итак, вы должны указать для Anacron временной интервал, задержку, идентификатор задачи и команду. Интервал – это количество дней между запусками задачи (например, для еженедельного это 7), а задержка – это временная отсрочка (в минутах) с момента старта сервиса Anacron, чтобы все события разом не навалились на систему во время ее загрузки. Идентификатор задачи – это метка, необходимая для идентификации процесса в системных сообщениях или журналах, а команда – просто команда оболочки. Они перечисляются в файле /etc/anacrontab в виде списка, разделенного пробелами, который может выглядеть примерно так:
# / etc / anacrontab: файл настройки anacron SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # Максимальная случайная задержка относительно базового запаздывания заданий RANDOM_DELAY=45 # Задания начнут запускаться только в указанные часы: START_HOURS_RANGE=3-22 # Период в днях; задержка в минутах; индентификатор задания; команда 1 5 cron.daily nice run-parts /etc/cron.daily 7 25 cron.weekly nice run-parts /etc/cron.weekly @monthly 45 cron.monthly nice run-parts /etc/cron. monthly 7 55 anacron.backup /usr/sbin/ mybackupscript
Проверка средней нагрузки
Оно вроде и очевидно, но стоит позаботиться о том, чтобы ваша аппаратура работала с максимальной скоростью. Например, большинство новых компьютеров, приводов NAS и др. имеют порты Gigabit Ethernet (10/100/1000), а для широкополосного доступа предоставляются маршрутизаторы только с портами Fast Ethernet (10/100), и соединение ваших устройств через такой маршрутизатор замедлит их работу. Купите маршрутизатор получше, или просто соедините более быстрые устройства через коммутатор Gigabit – скорости передачи данных между ними увеличатся раз в 10!
Зачем? Чтобы узнать, потянет ли ваш компьютер требуемые задачи.
Как? Запустив команду uptime или заглянув в файл /proc/loadavg, вы увидите набор из трех чисел, указывающих среднюю нагрузку на ваш Linux-компьютер. И что же эти числа означают?
Во-первых, их три, потому что они получены усреднением по трем разным временным интервалам – одной, пяти и 15 минутам. Число указывает количество процессов, использующих CPU или ждущих своей очереди на его использование. Так, если ваша средняя нагрузка – 0,25, это значит, что процессор активно использовался в течение 25 % соответствующего временного интервала.
Для многоядерных машин ситуация чуть усложняется, поскольку число ядер не учитывается, и надо разделить на это число результат, показанный в файле /proc/loadavg или в выводе команды uptime. Например, средняя нагрузка 1 на четырехъядерную машину на самом деле будет означать то же самое – средняя нагрузка равна 0,25, то есть каждое ядро работает 25 % времени.
Средняя нагрузка – не самый точный показатель скорости CPU, так как процессы могут оказаться подвешены просто из-за медленного ввода/вывода; но дает представление о времени ожидания для пользователей. В идеале средняя нагрузка настольного компьютера должна быть меньше количества ядер. На сервере этот показатель может быть и превышен, но если средняя нагрузка постоянно высока, необходимо дальнейшее расследование.
Добавление к sudoers через visudo
Зачем? Чтобы добавить полномочий пользователям или процессам.
Как? Команда sudo временно предоставляет привилегии root [на самом деле предоставляет процессам привелегии любого другого пользователя, имеющегося в системе, то есть позволяет не только повышать привелегии для них, но и понижать их] пользователям или процессам, чтобы те смогли выполнить задачу, разрешенную только root. Это особенно важно для систем типа Ubuntu: там нет пользователя root [на самом деле пользователь есть, но у него нет пароля и, соответственно, под этой учетной записью невозможно зарегистрироваться в системе], и без команды sudo далеко не уйдешь.
Сведения о том, какие права должны быть предоставлены и кому, хранятся в каталоге /etc, в файле под названием – вы удивитесь – sudoers. Его можно править в Vi, Gedit или любом другом редакторе, но рекомендуется применять Visudo. Данный текстовый редактор гарантирует, что ваш файл sudoers останется цел, пока вы будете его редактировать, поскольку запре щает одновременные правки и проверяет синтаксические ошибки. Это огромное преимущество в случае сбоев или просто человеческих ошибок, способных сделать файл sudoers нечитаемым, вынудив вас восстанавливать его из резервной копии.
Здесь действуют примерно те же правила, что и в Vi. Если вы с ними не знакомы – это означает, что перемещаться по файлу можно с помощью клавиш курсора (а также Page Up/Page Down), для перехода в режим ввода необходимо нажать клавишу i, после чего можно начинать вводить текст. Завершив ввод, наберите последовательность Esc:wq <return>. Если при редактировании файла вы допустите ошибку, часто бывает проще закрыть его без сохранения, а затем попытаться вызвать его еще раз. Для выхода из редактора введите комбинацию клавиш Esc:q! <return>.
Например, чтобы дать через sudo пользователю evilnick все права root без необходимости вводить его пароль – это опасно, но экономит время – добавьте
evilnick ALL=(ALL) NOPASSWD: ALL
Движемся дальше
Посмотрев в начало файла, вы обнаружите, что там определены некие группы. По сути, это метки, применяемые к списку исполняемых файлов (с полными именами путей). При желании вы можете создать собственные группы, но уже готовые обычно определены очень хорошо.
Вместо отдельных пользователей можно также указать и группы, просто поместив символ % перед именем группы. Например, если вы хотите разрешить пользователям из группы users доступ к командам из группы Networking, которые обычно определяются здесь через sudo, и позволить пользователю mike загружать драйверы ядра через modprobe, добавьте такие строки:
%users ALL=NETWORKING mike ALL=/sbin/modprobe
Заметьте, что первое ALL относится к хосту, так как файлы sudoers часто предоставляются в общий доступ через сеть, и при желании здесь можно указывать отдельные хосты.
Копирование файловых систем целиком
Зачем? Чтобы клонировать свой ПК или сделать полную резервную копию.
Как? Существует далеко не один рецепт, как начинить индейку; то же касается создания копий системы Linux. Возможно, простейший из них – применить команду dd, обычно используемую для поблочного копирования больших файлов. Однако, раз уж в Linux практически все является файлами, ту же команду можно применить и для копирования всего диска. Содержимое одного жесткого диска IDE копируется на другой при помощи команды
dd if=/dev/hda of=/dev/hdb conv=noerror,sync
Дополнительные опции этой команды позволяют пропускать ошибки чтения (что удобно при копировании порченого диска) и принудительно синхронизировать копии.
Работать-то она работает, но по ряду причин стоит ее избегать. Во-первых, это процесс весьма долгий – команда dd копирует каждый блок диска, включая и неиспользуемое пространство. Другая проблема – в том, что ваш второй жесткий диск должен быть по возможности идентичен с первым. При использовании данного метода копируется вся информация, и если второй жесткий диск имеет больший размер, окажется, что вы зря теряете дисковое пространство. [это тоже не является пороблемой, просто после корппирования необходимо будет воспользоваться утилитой parted]]
Еще одна потенциальная проблема – при таком копировании установки Linux скопируется и содержимое виртуальных файловых систем, например, /proc, что тоже чревато неприятностями.
Если вам нужна копия файловой системы диска, лучше возьмите команду rsync:
rsync -av /source /target
В особом случае копирования корневой файловой системы, где содержится загружаемая копия Linux, вы, возможно, захотите исключить из копирования часть файлов – например, те, что система генерирует при загрузке. Для этого сгенерируйте список файлов и назовите его blacklist.lst:
Начиная с серии ядер Linux 2.6, параметр ‘swappiness’ стал управлять тем, насколько агрессивно ядро пытается освободить память, вытесняя ее содержимое в пространство подкачки. Значение этого параметра можно найти в файловой системе /proc:
cat /proc/sys/vm/swappiness
Чем выше значение swappiness, тем больше данных вытесняется в раздел подкачки. Это поведение можно изменить, записав в proc другое значение, но слишком завышать его не стоит – если вы часто переключаетесь между приложениями, ваша система станет менее отзывчивой.
# файлы для включения + /dev/console + /dev/initctl + /dev/null + /dev/zero # файлы для исключения - /dev/* - /proc/* - /sys/* - /tmp/*
Некоторые записи dev включены явно, поскольку они не воссоздаются повторно, как и каталог /proc и некоторые другие каталоги: содержимое каталога регенерируется, а сам каталог – нет. Теперь запустите команду rsync со следующими параметрами:
rsync -av --delete-excluded --exclude-from=blacklist.lst destination
Учтите, что это можно сделать и через сеть, но тогда надо сперва должным образом настроить rsync.
Проверка проблем с помощью dmesg
Зачем? Простой способ выявить проблемы с драйверами нужен всем.
Как? Linux и ряд других Unix-подобных операционных систем включают в свой состав очень полезную команду под названием dmesg: она отображает все системные сообщения, имеющие отношение к проблемам, в своем журнале. Это ценная информация, в частности, о драйверах устройств, а также о том, загружены ли они корректно, плюс еще набор полезных сведений. Для просмотра журнала просто запустите команду dmesg из оболочки.
Запуск dmesg сразу же после добавления аппаратного устройства сообщит вам, загружен ли драйвер устройства и работает ли он правильно, или о том, где были выделены ресурсы; но иногда бывает нужно просмотреть журнал. Здесь неплохой идеей будет перенаправить вывод команды dmesg команде less:
dmesg | less
Если вы ищете что-то конкретное – например, устройство SCSI или USB – всегда можно просеять журнал через grep и перенаправить его в less:
dmesg | grep ‘usb’ | less
Управление разделом подкачки
При вводе команде sudo неверного пароля появится зловещее сообщение о замеченном инциденте – угрозе безопасности. Но кто его получит? Это зависит от настройки вашей системы. Можно указать почтовый адрес при сборке пакета sudo или переопределить его в файле sudoers. Обычно это адрес почты админа. А на самом деле кто? См. http://xkcd.com/838.
Зачем? Чтобы ускорить вашу систему или приспособить ее к обстоятельствам.
Как? Раздел подкачки очень важен для Linux-систем, или, по крайней мере, бывает очень важным. Он позволяет ядру отложить в сторонку информацию, которая не является необходимой в данный конкретный момент, и освободить ОЗУ системы под работающие процессы. Старое эмпирическое правило гласит, что объем этого раздела должен быть не меньше объема физического ОЗУ, а желательно – вдвое больше, но это правило больше не покрывает все варианты.
Во-первых, в наши дни вы, скорее всего, богаты физическим ОЗУ, поскольку цены на них стали вменяемыми и при желании вполне можно всадить на материнскую плату 8, а то и 16 ГБ. Поэтому слишком большой раздел подкачки уже ни к чему, но системные администраторы считают идеальным объем около 2 ГБ.
Чтобы узнать фактически используемый объем раздела подкачки, запустите либо команду free, либо команду swapon, например:
swapon -s
Выведется полный объем раздела подкачки в байтах.
Однако, возможно, вам потребуется более эффективно управлять разделом подкачки, если вы запускаете много экземпляров параллельно работающих сервисов (например, баз данных или web-серверов).
Увеличение раздела подкачки
Создав для подкачки дополнительный раздел, можно добавить его к текущему (считая, что новый раздел подкачки – sdb2) командами
mkswap /dev/sdb2 swapon /dev/sdb2 echo ‘/dev/sdb2 swap swap sw 0 0 ‘ >> /etc/fstab
Последняя строка добавляет новый раздел подкачки на постоянной основе, и он будет монтироваться при загрузке.
Интересно, что ядру хватает ума на чередование доступа к разделам подкачки, и вы можете серьезно повысить производительность, предусмотрев разделы подкачки на всех быстрых жестких дисках, имеющихся у вас в системе.
Кроме того, можно использовать для подкачки файл. Хотя обычно это не лучший способ решения проблемы, он помогает в ситуациях, когда требуется временно удалить диск из системы или обеспечить себе дополнительное место для подкачки (например, при визуализации огромной и детальной 3D-сцены).
Чтобы обзавестись файлом подкачки, можно создать пустой файл командой dd, а затем его смонтировать:
dd if=/dev/zero of=/var/swapfile bs=1024 count=2097152 mkswap /var/swapfile swapon /var/swapfile.
Наконец, заметим, что создание раздела подкачки на медленных устройствах – например, USB-брелках – идея отнюдь не здравая. Ядро, конечно, съест и такое, если добавить его к системе, но скорость USB 2.0, около 400 Mbps, существенно снизит производительность. А вот быстрый твердотельный диск – идеальное место.
Ручное добавление и удаление драйверов
Зачем? Потому что драйверы по умолчанию годятся не всегда.
Как? Преимущество современных дистрибутивов Linux – отличная поддержка драйверов. Серьезно, взять произвольное устройство и добиться его работы с Linux намного проще, чем с Windows или Mac OS X, потому что Linux добавляет функции драйверов в ядро посредством модулей. Код модулей открыт, и, за исключением особых обстоятельств, вам ничто не мешает обновить код старого драйвера, чтобы он поладил с новейшей версией ядра.
Вы можете выяснить, какие модули работают в вашей системе, командой lsmod. Она покажет вам загруженные на данный момент модули, а также список модулей, от которых те зависят. Например, модуль kvm_intel зависит от наличия модуля kvm, а модуль snd – от модуля sndcore.
При необходимости можно удалить драйверы из работающей системы с помощью rmmod и вновь загрузить их с помощью modprobe. Например, чтобы отключить и вновь включить джойстик, скомандуйте
sudo rmmod joydev sudo modprobe joydev
Знайте также, что иногда при загрузке модулей доступны опции. Драйверы web-камер часто имеют необязательные параметры, позволяющие отключить инфракрасные светодиоды или изменить размер кадра либо частоту смены кадров. Вы можете прочесть документацию о модуле либо применить команду modinfo. Как правило, список доступных параметров приводится в конце, например:
$ modinfo gspca_ov519 filename: /lib/modules/2.6.35.10-74.fc14.x86_64/kernel/ drivers/media/video/gspca/gspca_ov519.ko license: GPL description: OV519 USB Camera Driver … alias: usb:v041Ep4003d*dc*dsc*dp*ic*isc*ip* depends: gspca_main vermagic: 2.6.35.10-74.fc14.x86_64 SMP mod_unload parm: frame_rate:Frame rate (5, 10, 15, 20 or 30 fps) (int)
Отсюда видно, что при загрузке модуля можно указать частоту смены кадров вручную.
sudo rmmod gspca_ov519 sudo modprobe gspca_ov519 frame_rate=20
Конечно, неплохо иметь такую возможность; ну, а если вы хотите задать эти опции по умолчанию? Для этой цели предусмотрен специальный файл – обычно он называется /etc/modules.d/options.conf. (Если он не существует, создайте его.) Добавьте в него такую строку:
options gspca_ov519 frame_rate=20
Она гарантирует, что данные опции будут браться при каждой загрузке модуля, если вы не отмените их вручную.
Кстати, в том же каталоге обычно имеется и файл blacklist.conf – он пригодится, если понадобится отключить проблемное оборудование или драйверы, которые норовят предъявить права на аппаратные устройства первыми.
Остановите SSH-атаки
Регистрируетесь на удаленных машинах? Люди при этом склонны забывать, на каком компьютере находятся. Поэтому не пожалейте времени на подобающую настройку приглашения командной строки, чтобы отличать компьютеры, на которых вы регистрируетесь, друг от друга. Попробуйте добавить следующий текст в файл .bashrc в вашем каталоге удаленного пользователя:
export PS1=”\ [\e[41;1m\]\u@\ [\e[32;1m\]\H> \ [\e[0m\]”
Зачем? Когда ваш компьютер доступен через Internet, каждая свинья рвется получить к нему доступ.
Как? Открыв доступ к своей машине через Internet – скажем, вы хотите работать на своем домашнем компьютере, будучи в отъезде, или держите web-сервер – вы поразитесь количеству зондирующих атак злоумышленников. Проверки ради, за 60 минут онлайн мы насчитали 43 потенциальных взломщика, каждый из которых неоднократно пытался войти на SSH-сервер.
Есть несколько простых вещей, которые можно сделать, чтобы отражать атаки. Во-первых, проставьте другой порт в файле настройки SSH взамен стандартного 22. Это малость осложняет, поскольку потом нужно будет запомнить номер порта и вручную вводить его при каждой регистрации. Во-вторых, можно блокировать регистрацию с паролем. Но тогда придется установить ключи SSH, чтобы иметь возможность регистрироваться, причем доступ будет выдаваться только известным компьютерам.
Еще один трюк – включать SSH только тогда, когда это действительно требуется. Мы однажды пробовали метод секретного кодового слова, которое отправляли на специальный адрес электронной почты. Кодовое слово перехватывал скрипт на сервере и на час включал SSH. Это было очень хитро, но канительно. Но каким бы вариантом вы ни воспользовались, все равно понадобится развернуть скрипт fail2ban.
Он будет читать ваши журналы и определять, кто предпринял неудавшиеся попытки регистрации. После некого числа неудачных попыток регистрации – скажем, шести за 10 минут – скрипт активизирует iptables, чтобы блокировать соединение с вашим компьютером с этого хоста на заданный промежуток времени. По умолчанию, это 10 минут – вроде и недолго, но большинство таких атак осуществляется скриптами, которые через несколько неудачных попыток прекращают атаку и переключаются на другую мишень.
Скрипт fail2ban вы найдете на сайте sourceforge: http://www.fail2ban.org/wiki/index.php/Main_Page. Внимательно прочтите документацию по настройке этого сервиса и не отделывайтесь значениями по умолчанию. В порядке бонуса, скрипт дает возможность наблюдать за попытками взлома и других сервисов.
Защита паролем при загрузке
Зачем? Чтобы допускать к определенным инсталляциям и вообще к загрузке компьютера только доверенных пользователей!
Как? Большинство основных дистрибутивов переходят или уже перешли на загрузчик Grub 2 (заметное исключение – Fedora). Это позволяет установить аутентификацию пользователей для пунктов загрузочного меню и как минимум отчасти защитить систему(ы) от несанкционированного доступа: например, разрешить только некоторым пользователям загружать конкретные ядра.
Во время загрузки меню отображается как обычно, но когда кто-то попытается вызвать защищенный пункт загрузочного меню, ему предложат ввести имя пользователя и пароль. Выполнить эту настройку не так уж просто, но мы рискнем. Первый порт вызова – заголовочный файл. Он находится в /etc/grub.d/ и называется 00‑header или похоже. Откройте его для редактирования в любимом текстовом редакторе и добавьте в его конец текст
cat << EOF set superusers=”myname” password myname 1234 EOF
Он устанавливает пользователя (myname) и его пароль (1234). Имейте в виду, что если вы здесь что-то напутаете, обвинять будет некого, кроме себя, поэтому позаботьтесь, чтобы в меню был пункт, из которого вы сможете загрузиться и исправить дело, если что-то пойдет не так.
Теперь отредактируйте файл 10‑linux из того же каталога. Вам нужны записи, начинающиеся с
menuentry “$1” {
или с
printf “menuentry \”${title}\” --class linux {
Добавьте в эти строки переключатель --users и укажите имя пользователя сразу же после открывающей фигурной скобки или элемента меню, например:
menuentry “$1” --users myname {
или
printf “menuentry \”${title}\” --class linux --users myname {
Сохраните файл и обновите Grub командой:
sudo update-grub
Теперь вы готовы перезагрузить компьютер и протестировать новое загрузочное меню, защищенное паролем. Можете даже подшутить над любителями влезать в вашу машину: не говорите им, что защитили загрузочное меню паролем, и дождитесь, чтобы они прибежали к вам с вопросами. Вот, кстати, и причина не делать пароли слишком простыми для угадывания – например, просто ‘password’ или ваш день рождения.
NAS: Сделать самим или купить?
Возможно, вас посещала идея превратить свой старый, ни на что другое не годный ПК или ноутбук в сетевое устройство, чтобы хранить там резервные копии, слать через него поток медиа-данных и прочее. Да, это можно; но не факт, что все будет так замечательно, как вы воображали. ПК, превращенный в NAS, хорош тем, что может работать как полноценная версия Linux или настоящий сервер. Однако большинство ПК не рассчитано на круглосуточную работу, и даже если их к этому принудить, очередной счет за электроэнергию вас скорее всего неприятно удивит. Современные NAS-устройства, например, Qnap 219 или Excito B3, умеют интеллектуально управлять электропитанием и потребляют около 20 Вт (а не 200), а также заранее настроены на выполнение функций устройств сетевого хранения данных.
Приложения звездного уровня
Back in Time
Цель: Упрощение резервного копирования
Сайт: http://backintime.le-web.org
Ничего особенного здесь нет; Back In Time просто создает резервные копии указанных вами каталогов, что в принципе делается за пять минут из командной строки. Но вот в чем истинное преимущество этой программы: она настолько упрощает резервное копирование, что вы действительно станете его выполнять; а уж это всем магиям магия.
Webmin
Цель: Управление всем подряд с безопасного расстояния
Сайт: http://webmin.com
Если у вас есть удаленный Linux-компьютер, требующий заботы администратора, вам пригодится Webmin. Это простое приложение с web-интерфейсом упрощает поиск нужных элементов управления, какая бы версия Linux у вас ни была. Кроме того, программа пунктуально обновляется и отличается защищенностью.
Dansguardian
Цель: Безопасный семейный серфинг
Сайт: http://dansguardian.org
Dansguardian – это прокси с web-фильтрацией, который не просто полагается на наскоро созданные черные списки, но и фильтрует содержимое web-страниц, определяя, следует ли его отображать. Естественно, это нельзя считать полноценной заменой контроля за сайтами, которые посещают ваши дети, но помо жет предотвратить их случайные попадания в грязные закоулки сети.
Palimpsest
Цель: Высший пилотаж управления дисками
Сайт: http://library.gnome.org/users/palimpsest/2.32/intro.html.en
Gnome Disk Utility или Palimpsest (название пергамента, очищенного для повторного использования) – великолепный инструмент для управления дисками, хотя лишь немногие вообще знают о его существовании. Помимо обычных монтирования и форматирования, вы можете редактировать разделы и запускать диагностические средства на подключенных носителях. И это средство устанавливается как часть Gnome, так что употребляйте!
FSlint
Цель: Возврат потраченного пространства
Сайт: www.pixelbeat.org/fslint
Изрядная часть вашего дискового пространства тратится без толку. По сути, оно расходуется вхолостую, медленно деградирует и хранит избыточные копии информации. Это только одна из областей, где вам может помочь FSlint. Программа обыщет все области вашего диска и очистит их для вас, выкинув ненужный хлам.
Partimage
Цель: Клонирование ваших дисков
Сайт: http://www.partimage.org/Main_Page
Partimage – инструмент клонирования дисков, способный создавать образы разделов или устройств и даже их резервные копии через сеть. Лежащее в его основе ПО использует интерфейс Curses, и его требования минимальны; но вы можете также рассмотреть одну из опций дисков аварийного восстановления, для простоты использования включающих Partimage – например, Clonezilla (см. http://clonezilla.org).
Шаг за шагом:
Откат обновлений PPA
- 1 Ставим Ubuntu Tweak
- Ubuntu Tweak – отличный инструмент для управления пакетами Ubuntu. Он устанавливается так:
sudo add-apt-repository ppa:tualatrix/ppa sudo apt-get update sudo apt-get install ubuntu-tweak
- Теперь инструмент появится в меню System Tools.
- 2 Чистим PPA
- Выберите опцию Package Cleaner в левом меню, затем опцию Purge PPA в правом нижнем углу главной панели. На данном этапе, вероятно, все будет блокировано. Щелкните по кнопке, снимающей блокировку, и введите пароль, чтобы авторизоваться для внесения изменений.
- 3 Шагаем назад
- В нашем случае выбрано удаление Firefox и ряда других программ. На самом деле, мы не хотим остаться без Firefox или удалить все, что имеет к нему отношение. Ubuntu Tweak понимает это и дает нам возможность снизить версию пакета до последних репозиториев Ubuntu. Дело сделано!
Мониторинг системы с Ksysguard
- 1 Запуск Ksysguard
- Ksysguard – часть базовой инсталляции KDE, и если у вас есть KDE, то Ksysguard у вас тоже есть. Запустив эту программу, вы получите стандартное окно мониторинга ресурсов. Оно очень похоже на эквивалент из Gnome, но дает намного больше возможностей!
- 2 Выбор новых опций
- На панели инструментов выберите New Tab, и создастся новая пустая вкладка. Из расположенного справа дерева теперь можно перетаскивать мышью свойства, за которыми вы решили наблюдать. Ksysguard также отображает аппаратные мониторы вашего CPU и материнской платы.
- 3 Следите за всем
- На один и тот же график можно перетащить множество показателей и мониторить, например, все операции доступа к диску. Если у вас больше одной системы, можно наблюдать за всеми работающими системами в одном окне. Для установки соединения щелкните по кнопке Monitor Remote Machine.