Текст книги "Linux"
Автор книги: Алексей Стахнов
Жанр: ОС и Сети, Компьютеры
сообщить о неприемлемом содержимом
Текущая страница: 20 (всего у книги 60 страниц) [доступный отрывок для чтения: 20 страниц]
Офисный компьютер отличает, в первую очередь, использование офисных приложений и однотипность настроек. Поэтому после инсталляции следует установить (если это не было сделано во время инсталляции) офисные приложения, используемые в вашей фирме. Причем крайне желательно, чтобы это были последние версии, поскольку сейчас Linux-сообщество очень серьезно занялось доработкой офисных приложений, и полезные изменения и дополнения появляются буквально каждую неделю. Офисные приложения вы выбираете сами, но есть и общие рекомендации. Если у вашей фирмы велик объем документации, приходящей или отправляемой во «внешний» мир в электронном виде – вам не обойтись без офисных приложений, способных корректно работать с документами формата Microsoft Office. В настоящее время из бесплатного программного обеспечения наиболее корректно работает с такими документами StarOffice фирмы Sun и FreeOffice, базирующийся на исходном коде StarOffice. Однако за функциональность все же необходимо платить, в данном случае – местом на жестком диске и требованиями к процессору и оперативной памяти.
Далее, если сеть не была настроена при инсталляции (офис подразумевает наличие локальной сети), это надо сделать сейчас. Затем, с помощью менеджера пакетов RPM следует отсеять все лишнее программное обеспечение. Как правило, могут быть установлены службы типа finger, r– (rlogin, rcopy и т. п.), telnet (клиент и сервер) и достаточно много такого, что является потенциальной брешью в защите системы. В идеале, на офисном компьютере не должно быть никаких сетевых служб, кроме SSH. По инерции в дистрибутивы входят (и по умолчанию устанавливаются на компьютер) много устаревших пакетов, разработанных лет двадцать-тридцать назад. В те времена о мощи современных персональных компьютеров даже и не мечтали, Интернета не было как такового, а локальные сети только стали появляться. Что такое взлом, подбор паролей, трояны и вирусы – никто не знал. Поэтому пароли в сетевых приложениях типа telnet передавались в открытом виде, а порой вообще не использовались. В современном мире такое недопустимо. Поэтому лучше все потенциально опасное убрать от греха подальше.
После установки необходимого программного обеспечения, настройки сети, электронной почты и службы новостей рекомендуется установить и настроить клиент NTP – службу точного времени. Благодаря ей вы навсегда забудете о проблеме синхронизации системных часов компьютера. (Подробную информацию об NTP см. в гл. 23.)
И теперь, когда операционная система полностью настроена, крайне желательно сделать ее резервную копию. Вариантов может быть несколько:
• каждый компьютер предприятия имеет свою резервную копию;
• группа компьютеров имеет одну резервную копию, а для каждого компьютера резервируются его конфигурационные файлы;
• все компьютеры имеют одну резервную копию, а для каждого компьютера резервируются его конфигурационные файлы.
Первый вариант представляется несколько излишним. Нет смысла организовывать запись и хранение нескольких десятков компакт-дисков только из-за того, что у компьютеров разные имена и IP-адреса. С другой стороны, в случае проблемы на компьютере просто разворачивается резервная копия.
Вариант номер два. В фирме выделяются группы компьютеров, абсолютно идентичных по установленному программному обеспечению. Делается одна резервная копия. Дополнительно резервируются конфигурационные файлы каждого компьютера. В случае проблемы надо развернуть резервную копию и переписать соответствующие конфигурационные файлы (и информацию пользователя).
Третий вариант. Самый неудачный. В случае проблем надо развернуть резервную копию, переписать соответствующие конфигурационные файлы, информацию пользователя и доустановить отсутствующее программное обеспечение (либо наоборот, убрать ненужное).
И конечно – процедура ежедневного резервного копирования. Для ее облегчения рекомендуется выделить сервер, на котором должны храниться файлы и почтовые сообщения пользователей, и производить резервирование содержимого этого сервера.
Компьютер программиста, администратораКомпьютер программиста или системного администратора несколько отличается по установленному программному обеспечению от обычной офисной машины.
Как правило, на такие компьютеры устанавливается достаточно много специфичного программного обеспечения, которое может быть потенциально опасным для безопасности системы. Поэтому доступ к таким машинам должен быть ограничен как в физическом смысле, так и посредством сетевых соединений.
На компьютер программиста помимо разнообразных сред программирования, отладочных средств, компиляторов и интерпретаторов зачастую устанавливаются сервисы баз данных, FTP-, HTTP-демоны и т. п. Это необходимо для того чтобы в процессе отладки программы (или скрипта) программист (или администратор) ставил эксперименты на тренировочной, тестовой базе данных, а не на рабочем сервере базы данных фирмы.
Поскольку компьютер программиста часто содержит достаточно ценную информацию, а из-за особенности программистской деятельности подвергается повышенному риску, резервирование его данных желательно проводить два-три раза в день.
Приблизительно такой же спецификой обладает компьютер системного администратора. Помимо различных компиляторов и интерпретаторов (C/C++ для компиляции ядра и программ, Perl и Pyton для скриптов и т. п.), на него устанавливается специальное программное обеспечение для мониторинга сети и администрирования. Все вновь разработанные или модифицированные скрипты системный администратор должен попробовать сначала "на себе", и только после этого устанавливать на другие компьютеры.
СерверСамым специфичным компьютером, как правило, является сервер. Специфика эта возникает в зависимости от конфигурации, выполняемых задач, количества обслуживаемых пользователей и требований надежности. Поэтому мы дадим здесь лишь весьма общие рекомендации.
Во-первых, сразу по окончании процедуры инсталляции следует проверить, все ли аппаратное обеспечение сконфигурировано и работает правильно. Особое внимание надо обратить на SCSI-устройства и сетевые карты (если их более одной). По умолчанию конфигурируется только одна сетевая карта, все остальные, установленные в системе, приходится конфигурировать самостоятельно. Устройства SCSI так же являются слабым местом. Если на сервере установлены и USB-устройства (правда, для чего они на сервере, представить трудно), надо проверить и их функционирование.
Затем следует установить новое программное обеспечение (и в дальнейшем отслеживать выход новых версий программ). Если необходимо – обновить и/или скомпилировать ядро операционной системы. Здесь надо быть особенно внимательным – для выполнения некоторых функций (например firewall) при компиляции необходимо включить свойства, обычно отключенные по умолчанию. Произвести необходимые настройки сервисов. Удалить все лишние для сервера программы.
Сервер – самая чувствительная к взлому система в локальной сети. От потери функциональности или замедления его работы страдают все работники фирмы, а если сервер почтовый или Web – то проблемы появляются и у людей, желающих отправить вам почту или посмотреть ваш Web-сайт. Именно поэтому, как и с простого офисного компьютера, с сервера необходимо удалить все потенциально опасные службы типа finger, r– (rlogin, гсору и т. п.), telnet (клиент и сервер), NFS и т. п. На сервере, если это сервер, к примеру, только баз данных, должно стоять только программное обеспечение баз данных. И ничего другого. Никаких Web-серверов, игр, X Window и компиляторов.
Ниже приведен небольшой (далеко не полный) список пакетов, которые на серверах общего назначения не нужны:
• ВООТР (Boot Protocol) – используется для загрузки бездисковых рабочих станций. Если сервер не является сервером удаленной загрузки, нет необходимости оставлять этот пакет;
• DHCP (Dynamic Host Configuration Protocol) – протокол, который позволяет отдельным устройствам в IP-сетях получать от сервера конфигурационную информацию (IP-адрес, сетевую маску, широковещательный адрес и т. д.). Если сервер не является сервером DHCP – удалите и этот пакет;
• mt-st – включает программное обеспечение для управления устройствами чтения с магнитных лент: mt (для устройств magnetic tape devices) и st (для SCSI tape devices). Если на сервере не установлен стример – эти пакеты лишние;
• eject – позволяет пользователям извлекать диски (обычно это CD-ROM, Iomega Jazz и Zip) используя программные средства. Эта программа тоже не понадобится;
• apmd – демон расширенного управления питанием и сопутствующие ему утилиты. Такое программное обеспечение должно использоваться на ноутбуках, на сервере ему делать нечего;
• linuxconf – удобная утилита для настройки системы. По умолчанию установка ее не производится. Если она все же установлена, следует знать: помимо того, что эта программа занимает достаточно много места, она так же содержит и ошибки;
• isapnptools – включает утилиты для настройки карт ISA Plug and Play (PnP) и плат, которые совместимы со спецификацией ISA Plug and Play. Поскольку в современном компьютере вот уже на протяжении трех лет не устанавливаются ISA-устройства, наличие этого пакета нецелесообразно;
• setserial – системная утилита для просмотра и установки информации о последовательных портах. Используется на сервере модемного доступа и сервере управления кассовыми аппаратами с последовательным интерфейсом. Может быть необходима для маршрутизаторов, имеющих модемные соединения. Эту утилиту можно использовать при отладке соединения и управления источником бесперебойного питания (UPS). Для всех остальных типов серверов наличие ее нецелесообразно;
• kudzu – утилита для автоматического определения аппаратного обеспечения. Во время загрузки она может определить, какие устройства были добавлены или удалены из системы. Однозначного мнения, нужен или нет данный пакет на сервере, не существует;
• raidtools – включает утилиты, которые нужны для установки и управления программными RAID-массивами. Если программные RAID-массивы не используются – не устанавливайте;
• redhat-logos – файлы логотипов. Трата дискового пространства;
• redhat-release – на сервере не нужен;
• rmt – предоставляет удаленный доступ для резервного копирования. Как и все r-команды – потенциальная брешь в безопасности операционной системы;
• tyx – встроенный в ядро HTTP-сервер. Позволяет ускорить обработку HTTP-запросов. Ни для каких серверов, кроме Web-cepвepa, не нужен. К тому же, на Web-cepвepe традиционно устанавливается сервер Apache.
После инсталляции и компиляции всего необходимого программного обеспечения рекомендуется удалить с сервера все компиляторы и подобные им программы. Это делается для того, чтобы злоумышленник, проникший на сервер, не смог скомпилировать или модифицировать необходимые ему утилиты. Как известно, знаменитый "червь Морриса" пересылал свой исходный код на компьютер жертвы, там себя компилировал и запускал на выполнение.
Создание разных серверов для разных задач упрощает процесс администрирования и управления ими и увеличивает контроль и настраиваемость для каждого из них.
Дальнейшие действия большей частью административные.
1. Создайте список файлов с их правами и владельцами. Регулярно проверяйте, не изменились ли атрибуты, права и владельцы файлов. Изменение этих параметров – один из признаков взлома или некорректной работы пользователей.
2. Заведите на сервере пользователя, которому делегируйте некоторые права – выключение сервера, монтирование дисковых разделов, административные задачи.
3. Проверьте, чтобы пользователь root не мог зайти через сеть или способом, отличным от входа с консоли.
4. Организуйте перенаправление почты пользователя root на обычного пользователя, отвечающего за администрирование. По умолчанию многие сервисы отсылают электронной почтой сообщения о проблемах, возникающих во время их работы.
5. Не работайте пользователем root – этот пользователь случайно может уничтожить операционную систему.
6. Настройте службу logrotate: на серьезных серверах log-файлы в 100–200 Мбайт – в порядке вещей.
7. Разработайте стратегию резервного копирования сервера.
8. Проводите учебное восстановление сервера из резервных копий раз в квартал. Это позволит и хорошо отработать процедуру восстановления, и проверять целостность резервных копий.
9. Обязательно приобретите источник бесперебойного питания с управлением по последовательному порту и установите соответствующее программное обеспечение.
10. Разработайте и утвердите у руководства правила, в которых четко и кратко описано, что может делать пользователь, а что ему запрещено. Ознакомьте с ними всех сотрудников.
11. Периодически производите инспекцию компьютеров на наличие постороннего программного обеспечения и правильное функционирование штатного программного и аппаратного обеспечения.
Более подробные рекомендации можно прочитать в книгах "UNIX: руководство системного администратора" и "Системное администрирование Linux" (см. приложение 5).
Ссылки• www.linuxdocs.org – Network Administrator's Guide.
• www.linuxdocs.org – по этому же адресу расположены и соответствующие HOWTO (см. гл. 13):
– security-howto;
– hacker-howto;
– NFS HOWTO;
– Firewall-HOWTO.
Часть IV
Основные команды Linux
Глава 13
Помощь
Ни одна мало-мальски приличная программа не обходится без справочного руководства. UNIX-системы обладают, пожалуй, самой обширной и объемной документацией, касающейся функционирования операционной системы и программ.
Традиционно информацию о системе или программе можно получить несколькими путями.
AproposКоманда apropos производит поиск заданного ключевого слова (команды) в базе whatis (см. ниже) и выводит на экран краткое его описание.
Man-справкаВ операционной системе Linux справочная система глобальна и использование ее очень просто – в командной строке следует набрать:
man имя_программы
В результате на текущую консоль будет выведена справочная страница по использованию указанной программы. В принципе, параметром команды man необязательно должно быть имя программы, это может быть любой файл операционной системы. В том случае, если для указанного файла не существует справочной страницы, на экран будет выдано соответствующее сообщение.
Если система инсталлирована с языком, отличным от английского, то и справочные страницы (если, конечно, они есть) установятся на языке, который был выбран при инсталляции. К сожалению, для русского языка справочных страниц крайне мало, однако со временем ситуация с локализацией справочных страниц должна быть нормализована.
Программа man сначала пытается найти справочную страницу на языке текущей локали. Если же такой страницы не будет найдено, она выдаст на консоль справочную страницу на английском языке.
WhatisКоманда whatis представляет собой мини-справочную систему. В качестве аргумента указывается имя файла, на выходе – строка информации об этом файле.
HOWTO – как сделатьС помощью программы man можно узнать многое, единственное, что она не дает – это алгоритмов решения сложных проблем. Для подобных вопросов существуют так называемые HOWTO – «как сделать что-то». Это достаточно большой набор файлов, предназначенных для решения разнообразных проблем – настройки сети, почтовых программ, Web-серверов, установки различного аппаратного обеспечения и многого другого. Как правило, эти файлы написаны на английском языке, но существуют версии некоторых HOWTO на других языках, в частности, на русском. Список HOWTO приведен в приложении 2. Нельзя гарантировать, что данный список полный, но, по крайней мере, это практически все известные HOWTO. Найти их в Интернете не представляет трудности – достаточно ввести наименование искомого HOWTO в строку поиска любой поисковой системы, например www.rambler.ru.
Мини-HOWTOВ отличие от HOWTO, решающих достаточно глобальные задачи и имеющих объем порядка пятидесяти-ста страниц, мини-HOWTO решают узкоспециальные задачи и имеют небольшой объем. Список мини-HOWTO приведен в приложении 3. Найти их в Интернете также, как и HOWTO, не представляет трудности.
Руководства пользователя Red HatНа сайте дистрибутива Red Hat существует достаточно большой выбор документации, посвященной инсталляции, работе, настройке операционной системы Linux. Вот только некоторые названия:
• The Official Red Hat Linux Getting Started Guide;
• The Official Red Hat Linux Customization Guide;
• The Official Red Hat Linux x86 Installation Guide;
• The Official Red Hat Linux Reference Guide.
В этих руководствах подробно рассказывается об инсталляции, работе, решениях возникающих проблем в дистрибутиве Red Hat Linux. К сожалению, вся документация на английском языке.
Ссылки• www.linuxdocs.org – одно из полнейших собраний документации о Linux. Ресурс англоязычный, зато почти все, что касается Linux, здесь можно тем или иным образом найти.
• www.redhat.com – сайт фирмы Red Hat, производителя одноименного дистрибутива. Одним из достоинств данного дистрибутива является его хорошая поддержка, начиная с версии 4.x (создан в 1995 году) и заканчивая текущим. Дистрибутив Red Hat получил очень широкое распространение, его уже начали сравнивать с Windows. В настоящее время Red Hat стал стандартом de-facto для производителей коммерческого программного обеспечения и компьютерного оборудования. Дистрибутив существует в трех вариантах: базовый (доступен для скачивания через Интернет), Professional и Advanced Server. Кроме собственно дистрибутива на сайте присутствует и достаточно большое количество качественно написанной документации (на английском языке).
Глава 14
Справочник наиболее часто употребляемых команд
Эта глава посвящена консольным командам и утилитам. Конечно, после продолжительной работы в графической среде, нет особого желания возвращаться в текстовую консоль. Однако не всегда разумно пользоваться X Window там, где достаточно набрать всего три буквы. Да и не везде будет возможность (желание, необходимость) устанавливать и использовать X Window. Нет никакой необходимости занимать на сервере лишние десятки мегабайт и расходовать драгоценную оперативную память и время процессора (камень в огород Windows NT Server, Windows 2000) на обслуживание графической оболочки. Действительно, зачем серверу (конечно кроме сервера приложений X Window) иметь графическую оболочку, если на нем выполняется сервер баз данных, Web-сервер, почтовый сервер или сервер новостей? Этого не требуется и для администрирования. Практически любое приложение имеет понятный, самодокументированный (или имеющий понятное описание в документации) текстовый файл конфигурации. Отредактировать конфигурационные файлы можно либо с текстовой консоли, либо даже удаленно (подключиться к компьютеру, находясь хоть на другом континенте). Для многих приложений существуют также утилиты конфигурирования, имеющие текстовый (а иногда и графический) интерфейс. Многие приложения имеют инструменты удаленного администрирования, использующие Web-интерфейс. Так что наличие консольных команд и утилит для сервера вполне обосновано.
То же и для обычных клиентских машин. Казалось бы, поскольку большинство пользователей безвылазно сидят в X Window, им вообще не надо знать о консоли. Однако это совершенно не так. Как мы уже знаем из главы <5, загрузка операционной системы Linux происходит в текстовом (консольном) режиме и лишь на последнем этапе (и то, если это было определено при конфигурации системы) происходит переключение в X Window. Даже из-за этого уже стоит ознакомиться с консольными утилитами.
И еще. Идеология утилит Linux подразумевает модульность, доведенную до совершенства. В распоряжении пользователя огромное количество утилит, идеально выполняющих какую-то одну конкретную операцию. Из-за узкой специализации утилиты получаются очень маленькими по размеру и, как следствие, – идеально отлаженными.
Замечание
Конечно, пользователю Windows это кажется неудобным. Для утилит Windows принят другой подход – "все в одном" (all in one). В результате– объемный комплекс, в котором достаточно трудно разобраться, который из-за его размеров крайне трудно отладить и который потребляет значительное количество оперативной памяти и процессорного времени.
Кроме того, все утилиты Linux (в отличие от Windows-утилит) способны взаимодействовать друг с другом. Это значит, что с помощью утилит можно организовать цепочку взаимосвязанных операций. А с помощью скриптов командной оболочки создать инструментарий для выполнения часто используемых последовательностей операций. Linux требует от пользователя достаточно обширных знаний и некоторого размышления (планирования) перед выполнением нетривиальных действий. С одной стороны, после Windows с ее достаточно бездумным нажиманием кнопок мыши, это несколько напрягает. Но с другой стороны, это позволяет точно, шаг за шагом, понять процесс получения нужного результата, да, заодно, и память потренировать.
Внимание! Это не конец книги.
Если начало книги вам понравилось, то полную версию можно приобрести у нашего партнёра - распространителя легального контента. Поддержите автора!Правообладателям!
Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.Читателям!
Оплатили, но не знаете что делать дальше?