- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF137:Webmin
Материал из Linuxformat.
- Webmin Управляйте системой со всеми удобствами через web-браузер
Содержание |
Webmin: Стать администратором
- Ответом на жаркие молитвы Шашанка Шармы о простом способе администрирования его компьютеров стал Webmin. Но как его применять?
Прикиньте, как славно бы вам жилось при наличии возможности администрировать компьютер с Linux из web-браузера. Не просто задавать одну-две настройки, а делать почти все – устанавливать дисковые квоты, настраивать процесс загрузки, выполнять резервное копирование, создавать задания Cron, получать почту и многое другое. Ну, хотя это и выглядит бредовой мечтой, такое под силу Webmin, web-инструменту администрирования, который и достаточно хорош для администраторов, и достаточно прост для обычных пользователей. В переводе: это дар Божий.
Вам наверняка известно выражение «Большая власть = большая ответственность». В случае с Linux оно изменится таким образом: «Возможность решать массу различных задач, таких как запуск web-, почтовых и FTP-серверов, плюс хорошая настраиваемость = много конфигурационных файлов». И здесь Webmin снова спешит на помощь, предоставляя простой web-интерфейс. С его помощью вы сможете управлять поведением различных задач, не проводя раскопок во всех этих конфигурационных файлах.
Начинаем
Прежде чем начать, уясним, что одно из фундаментальных требований утилиты администрирования, подобной Webmin – свежая, или точнее, довольно современная система. Это значит, что установить Webmin на старые дистрибутивы Linux непросто. У выпущенного под BSD-лицензией Webmin нет сложных зависимостей, но расположение многих конфигурационных файлов в различных дистрибутивах может отличаться, поэтому Webmin не умеет администрировать системы, которые он не поддерживает. Зато уж если ваша система таким требованиям соответствует, лучшего и пожелать нельзя. Вы найдете ПО в репозиториях многих дистрибутивов; есть и двоичные пакеты, которые можно загрузить с сайта проекта.
После установки откройте свой любимый браузер и введите адрес http://127.0.0.1:10000. Появится экран входа в систему. Воспользуйтесь именем и паролем администратора root. Вскоре вы заметите, что для решения практически любых возможных задач в Webmin есть отдельные модули; они разбиты на категории в левой колонке для облегчения навигации.
Настройка Webmin
Первый шаг в любом мощном инструменте администрирования типа Webmin – настроить его так, чтобы задействовать все возможности по назначению. Для этого в левой колонке выберите Webmin > Webmin Configuration [ Webmin > Настройка Webmin] и нажмите на кнопку Authentication [Аутентификация]. Здесь вы сможете задать пароль Webmin, а также автоматический вход и выход из системы.
Затем у вас может возникнуть желание сменить порт, используемый Webmin. По умолчанию это 10000; изменить его можно, выбрав пункт меню Webmin> Webmin Configuration > Ports And Ad-dresses [Webmin > Настройка Webmin > Порт и адрес].
Так как Webmin требует аутентификации от имени root, можно дополнительно либо авторизовать для администрирования системы других пользователей, либо создать новые учетные записи с правами на выполнение урезанного набора административных задач. При щелчке на пункте меню Webmin > Webmin Users [Webmin > Пользователи Webmin] в левой колонке, будет показан список всех настроенных учетных записей пользователей. Однако по умолчанию есть только одна учетная запись – пользователя root.
Список поддерживаемых систем на сайте проекта Webmin не полон – он не включает производных дистрибутивов.
При установке экспортированного модуля укажите полный путь до GZ-файла. Распаковывать его не нужно.
Пакеты, установленные из Webmin, можно удалить и обычными средствами управления пакетами.
Для определенных административных задач – например, управления логическими томами и дисковыми квотами – Webmin предоставляет ссылку на документацию в правом верхнем углу соответствующей страницы.
Если вам неуютно работать от имени root, создайте нового пользователя с правами администратора, исключительно для управления компьютерами с Webmin. В левой колонке выберите пункт меню Webmin > Webmin Users [Webmin > Пользователи Webmin] и щелкните по ссылке «Create A New Webmin User [Создать нового пользователя Webmin]» в основном окне. Это обычная текстовая ссылка, и ее легко не заметить, так что глядите в оба. Административные задачи делятся на категории, такие как Hardware [Оборудование], Server [Сервер], System [Система] и т. д., благодаря чему набор задач, дозволенных новому пользователю, описывается быстро. Так, если вы хотите, чтобы новый пользователь мог только создавать задания Cron и записывать диски, просто выберите Scheduled Cron Jobs [Расписание заданий cron] и CD Burner [Запись на компакт-диски] в разделах System [Система] и Hardware [Оборудование], соответственно.
Кроме описания задач, доступных новому пользователю, ему нужно задать пароль. Для управления прочими параметрами входа в систему нового пользователя, включая ограничение доступа определенными днями недели или временем, установку минимальной длины пароля и многое другое, воспользуйтесь Security And Limits Options [Параметры безопасности и ограничений].
Модули Webmin
После настройки учетных записей взгляните на разбитый по категориям список в левой колонке. Модулей в нем, скорее всего, больше, чем вам нужно, но управление модулями, как и все административные задачи, в Webmin несложное – их можно удалить или установить всего за несколько щелчков мыши.
Выберите пункт меню Webmin > Webmin Configuration [Webmin > Настройка Webmin] в левой колонке и нажмите на кнопку Webmin Modules [Модули Webmin] в основном окне. На странице модулей Webmin вверху есть вкладки – через них над модулями выполняются четыре действия: Install [Установка], Delete [Удаление],Clone [Копирование] и Export [Экспорт]. Перейдите на вкладку удаления модулей; перед вами появится их список. Выберите модуль (или группу модулей, с помощью клавиши Ctrl), подлежащий удалению, и нажмите на кнопку Delete Selected Modules [Удалить выбранные модули]. Webmin сообщит, сколько места освободит удаление, и запросит подтверждение, прежде чем продолжить.
Если вам вдруг понадобится ранее удаленный модуль, при дется установить его заново. На странице Webmin Modules [Модули Webmin] перейдите на вкладку Install [Установка] и выберите радиокнопку Standard Module From www.webmin.com [Стандартный модуль с www.webmin.com]. Затем введите имя модуля, который вы хотите установить. Альтернатива – щелкнуть по крошечной кнопке рядом с текстовым полем и выбрать модуль из списка. Наконец, нажмите кнопку Install Module [Установка модуля].
Настроенные модули также можно экспортировать из существующей установки. Их (файлы module.wbm.gz) затем можно добавить в другой экземпляр Webmin.
В порядке меры предосторожности, а также потому что это грамотно, стоит также создать резервную копию конфигурационных файлов всех модулей Webmin. Это делается выбором в колонке пункта меню Webmin > Backup Configuration Files [Webmin > Резервное копирование конфигурационных файлов]. Webmin дает возможность сохранить резервную копию в локальном файле или на удаленном сервере FTP или SSH. При желании автоматизировать резервное копирование выберите вкладку Scheduled Backups [Запланированные задания резервного копирования] вверху. Затем вы сможете создать задание Cron для резервного копирования конфигурационных файлов с необходимыми параметрами.
Наконец, в Webmin > Webmin Configuration [Webmin > Настройка Webmin] выберите Logging [Журнал] и включите журналирование для всех используемых модулей. В нижней части страницы установите Include Webmin Logins And Logouts In Actions Log? [Включать в журнал действий входы/выходы в Webmin?], Log Changes Made To Files By Each Action? [Заносить изменения произведенные в файлах при каждом действии?] и Record All Modified Files Before Actions, For Rollbacks? [Записывать все изменяемые файлы перед применением, для возможности отката?] в Yes [Да]. Последняя опция позволит вернуться к предыдущей конфигурации, если вы вдруг неверно настроите модуль.
Выделение дисковых квот
Одна из основных задач администратора – обеспечить, чтобы ни один из пользователей не отъел слишком много дискового пространства. Вы, конечно, не приснопамятный BOFH, но когда дело касается столь важных вещей, нужно быть немного драконом. Установкой квот вы ограничите аппетиты пользователей.
При выделении квот можно задать мягкие или жесткие лимиты – или и те, и другие – на число блоков (или индексных дескрипторов), к которым разрешено обращаться пользователю. Жесткий лимит задает абсолютный максимум дискового пространства, доступного пользователю. При его достижении пользователю больше не дается места, и он должен удалить несколько файлов, чтобы его высвободить, или запросить вашей милости. Мягкий лимит снисходительнее, и при превышении лимита пользователь лишь получает предупреждение. Он все еще может создавать новые файлы и прихватывать дополнительное пространство. Задавая мягкий лимит, нужно также указать «период учтивости» – время, на которое пользователю отводится пространство сверх предела.
Вот примерно и все технические термины, которые нужно знать при выделении квот. Но прежде чем задавать лимиты пользователям, включите квотирование для смонтированных разделов или дисков. Для этого выберите пункт меню System > Disk And Network Filesystems [Система > Дисковые и сетевые файловые системы] в левой колонке. Webmin покажет список всех смонтированных файловых систем в виде таблицы. Чтобы включить квоты для файловой системы, щелкните на ее имени (точке монтирования), и на странице Edit Mount [Изменение параметров монтирования файловой системы] проследуйте вниз до заголовка ext2/ext3 Specific Options [Особые опции ext2/ext3]. В выпадающем списке Use Quotas? [Использовать квоты?] есть три варианта: User Only [Только пользователя], Group Only [Только группы] и User And Group [Пользователя и группы]. Выберите один из них, нажмите Save [Сохранить] внизу слева, и вы вернетесь к основной странице модуля дисковых квот (Disk Quotas).
Теперь щелкните на ссылке Enable Quotas? [Включить квоты?] для активации квот в файловой системе. Страница быстро обновится, и содержимое колонки Status [Состояние] должно измениться на Disk Quotas Active [Дисковые квоты активны].
В списке файловых систем на главной странице модуля кликните на точке монтирования, настройки квот для которой вы хотите изменить. Откроется страница со списком квот для всех пользователей файловой системы. Щелкните на имени пользователя, для которого нужно задать квоты, и укажите жесткие и мягкие лимиты, а также «период учтивости».
Планирование заданий Cron
Задания Cron – это задачи, выполняемые демоном Cron по регулярному расписанию. В файле crontab, где создаются задания Cron, нужно указать параметры запускаемой задачи и время ее выполнения. Обратите внимание, что время можно указать в минутах, часах, днях, месяцах или днях недели – как удобнее. Так, можно создать задание Cron, которое опустошало бы корзину или каталог с резервными копиями каждый день в 15:30, каждый вторник и пятницу в шесть вечера или даже каждые шесть часов.
Подготовив список задач, подлежащих автоматизации, выберите пункт меню System > Scheduled Cron Jobs [Система > Расписание заданий cron] в левой колонке. На главной странице появится таблица со списком всех существующих заданий. Кликнув по ссылке Create A New Scheduled Cron Job [Создать новое задание], вы перейдете на страницу Create Cron Job [Создание задания].
У каждого задания Cron есть владелец, и оно выполняется с правами этого пользователя. Поэтому при создании нового задания сначала нужно указать пользователя для него. Введите имя пользователя в поле Execute Cron Job As [Выполнять задание от имени пользователя] или нажмите на кнопку Browse [Обзор] и выберите его из списка. Опцию Active? [Активна?] можно установить в No [Нет], если вы хотите запустить новое задание не прямо сейчас, а в более поздний день или время. Эта опция также удобна, если нужно временно отменить задание.
В поле Command [Команда] нужно указать точную команду или команды оболочки, которые нужно выполнить. Команды разделяются символом ;. Например, если вы хотите создать архив из файлов в каталоге ~/Pictures и переместить его в каталог backup, команда будет такой:
tar -cf pics.tar;mv pics.tar ../backup
Результат выполнения команды будет отправлен по электронной почте пользователю, который является владельцем задания.
Если же его нужно сохранить в журнале или просто проигнорировать, добавьте в конец команды следующий оператор:
2>&1 >> logfile.log
Команда может выводить данные в два потока: стандартный вывод (STDOUT) и поток ошибок (STDERR). Стандартному выводу соответствует цифра 1, потоку ошибок – 2. Оператором 2>&1 мы объединяем эти потоки. Затем с помощью оператора >> мы добавляем полученный поток к содержимому файла logfile.log. Альтернатива – перенаправить весь вывод команды на устройство null, это специальный файл, который игнорирует все записанные в него данные:
2>&1 >> /dev/null
Перейдите в раздел When To Execute [Время начала выполнения], чтобы указать время выполнения команды. Доступные варианты для ручной установки даты и времени – Minutes [Минуты], Hours [Часы], Days [Дни], Months [Месяцы] и Weekdays [Дни недели]; также можно выбрать любой из вариантов Hourly [Каждый час], Daily [Ежедневно], Weekly [Еженедельно] или Monthly [Ежемесячно] в списке Simple Schedule [Простое планирование].
Чтобы задать время вручную, выберите радиокнопку Times And Dates Selected Below [Время и дата, выбранные ниже]. Так, если вы хотите, чтобы команда запускалась каждую пятницу в 6 вечера, выберите радиокнопку Selected [Выбранные] рядом с Hours [Часы] и «6» в списке. Аналогично выберите день недели Friday [Пятница] из списка Weekdays [Дни недели]. Все остальные опции оставьте в значении All [Все]. Затем нажмите кнопку Create [Создать] в левом нижнем углу страницы, и если все верно, вы вернетесь на страницу модуля Scheduled Cron Jobs [Расписание заданий cron], где новое задание появится в общем списке.
Можно изменить любое из заданий Cron в списке, щелкнув на команде задания, которое нужно изменить – например, назначить другое время запуска или команду.
Установка ПО и обновлений
Software Packages [Пакеты программного обеспечения] – дивный модуль Webmin, который понравится всем домашним пользователям. Хотя почти во всех дистрибутивах есть графические утилиты для установки ПО из репозиториев, преимущество этого модуля в том, что он не ограничивается репозиториями и поддерживает локальные пакеты, FTP, HTTP и т. д.
Webmin автоматически распознает вашу систему и менеджер пакетов: он не только определит, работаете ли вы, например, в Fedora или Ubuntu, но и задаст систему управления пакетами (RPM, Debian, Slackware и т. д.) и систему обновления пакетов (Yum, APT, URPMI, Emerge и т. д.). Чтобы настроить модуль вручную, выберите пункт меню System > Software Packages [Система > Пакеты программного обеспечения] и щелкните на ссылке Module Config [Настройка модуля] в левом верхнем углу главной страницы.
После настройки Webmin на использование должной системы управления пакетами, для установки нового пакета достаточно нажать на кнопку Browse <Name> [Обзор <Имя>] (в Ubuntu или другом дистрибутиве на базе Debian – Browse APT) в разделе Install A New Package [Установить новый пакет]. Имя этой кнопки будет отражать систему пакетов, применяемую на вашем компьютере. После нажатия кнопки откроется новое окно, и вы сможете найти любой пакет для установки. Webmin опросит репозитории ПО на наличие пакета с указанным именем и отобразит список всех подходящих результатов. Выберите пакет для установки и нажмите кнопку Install [Установить] на странице модуля Software Package [Пакет ПО]. Если вы знаете точное имя пакета, выберите радиокнопку Package From <Name> [Пакеты из <Имя>], введите имя пакета в текстовое поле, нажмите Install, а Webmin сделает все остальное.
Обратите внимание, что этот процесс неинтерактивен, т.е. Webmin не будет спрашивать вашего согласия на выполнение запросов, установку «Да для всего», зависимостей и прочего. Обновления можно выполнить и из интерфейса Webmin с помощью модуля Software Updates [Обновления ПО]. Выберите пункт меню Webmin > System > Software Package Updates [Webmin > Система > Обновление программных пакетов]. Теперь выберите Only Updates [Только обновления] в верхней части страницы. Webmin опросит репозитории с помощью настроенной системы управления пакетами и перечислит пакеты, для которых доступны обновления.
После выбора пакетов, которые нужно обновить, нажмите кнопку Update Selected Packages [Обновить выбранные пакеты] в нижней части страницы. В зависимости от того, как давно вы обновляли систему, обновления могут быть доступны для сотен пакетов. Webmin сообщит имя пакета, описание и номер версии. Щелкните на любом пакете в списке, и Webmin сообщит дополнительные детали – например, номер текущей установленной версии.
Настройка брандмауэра
Ни один администратор не обходится без хорошего брандмауэра, да и домашние пользователи привыкли к защите своих компьютеров от нежеланных вторжений. Если вы хотите запретить некоторые виды входящего и исходящего трафика на своих компьютерах, оставив только небольшую часть, например, для просмотра сайтов или удаленного доступа через SSH, это легко сделать в Webmin с помощью модуля Firewall [Межсетевой экран].
Для начала выберите пункт меню Networking > Linux Firewall [Сеть > Межсетевой экран Linux] в левой колонке. Но предупреждаем: делать это можно только в том случае, если вы умеете работать с Iptables. В противном случае вы, недолго думая, вылетите из Webmin, и поправить ничего будет нельзя, потому что система будет заблокирована вашими же действиями.
Начнем с краткой пробежки по основам. С помощью брандмауэра можно блокировать соединение или пакеты по адресу назначения, номеру порта и протоколу. Брандмауэр Iptables содержит три элемента: таблицы, цепочки и правила. Правила определяют, что делать с входящим или исходящим трафиком, и объединяются в цепочки. В свою очередь, цепочки – заданные пользователем или иначе – могут содержаться в одной из трех таблиц: PacketFiltering [Фильтрация пакетов] – цепочки INPUT, OUTPUT и FORWARD, Network Address Translation [Трансляция сетевых адресов] – цепочки PREROUTING и OUTPUT и Packet Alteration [Изменение пакетов] – цепочки PREROUTING и OUTPUT.
В зависимости от вашего дистрибутива Linux, некоторые правила брандмауэра уже могут быть заданы. При выборе пункта меню Networking > Linux Firewall все правила будут показаны в виде блоков, активных внутри цепочек таблицы фильтрации пакетов. Таким образом, вы увидите правила для цепочек входящих пакетов (INPUT), перенаправляемых пакетов (FORWARD) и исходящих пакетов (OUTPUT).
Чтобы посмотреть цепочки или правила в других таблицах, щелкните на выпадающем списке Package Filtering (Filter) [Фильтрация пакетов (Filter)] в левом верхнем углу страницы и выберите другую таблицу – Network Address Translation [Трансляция сетевых адресов] или Packet Alteration [Изменение пакетов].
Чтобы добавить свои правила в любую из таблиц, нажмите на кнопку Add Rule [Добавить правило] внизу справа от цепочки. Например, чтобы добавить новое правило в цепочку INPUT в таблице Packet Filtering, сначала выберите ее из выпадающего списка. Затем перейдите к последнему блоку цепочки INPUT и нажмите на кнопку Add Rule.
Эта тема сама по себе стоит никак не меньше четырех страниц журнала, поэтому не будем углубляться в детали написания правил. В любой книге по администрированию или документации в Интернете можно найти массу информации.
И точно так же, это лишь малая часть возможностей Webmin, и мы советуем вам самим поэкспериментировать с модулями. Только делайте это с большой осторожностью, ладно?