Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Уних (вопросы-ответы).doc
Скачиваний:
7
Добавлен:
23.04.2019
Размер:
394.75 Кб
Скачать

18. Форматы хранения данных в Linux.

Однако различные пакеты программ хранят данные по-разному, т.е. используют свой особый формат записи символов для сохранения. В результате Вы, открывая файл, созданный такой программой, в программе с другим форматом хранения символов, не можете читать их обычным способом – Вам необходима специальная программа, которая преобразует символы одного формата в другой. А попытка открытия файла, сохраненного в одном формате, в программе, использующей другой формат, приведет к появлению на экране нечитаемого набора символов вместо стройных рядов понятных нам с Вами букв и цифр.

Файлы данных, содержащие нечитаемые коды, называются двоичными.

Многие программы сохраняют результаты своей работы таким образом. Чтобы увидеть содержание файла, сохраненного в таком формате, наберите cat /bin/echo

Существуют еще и ASCII-файлы (их также называют текстовые файлы). Этот вид файлов не содержит непонятные коды, а содержит символы, которые человек может читать, то есть буквы и цифры.

Аббревиатура ASCII означает Американский стандартный Код для Информационного обмена.

Примером текстового файла может служить файл .profile. Чтобы увидеть его содержание введите команду cat /.profile

Несмотря на видимое преимущество ASCII – файлов, которое состоит в том, что множество программ могут читать их без преобразования, и это, несомненно, облегчает обмен файлами между людьми, использующими различные программы; этот вид файлов имеет недостаток – формат, в котором записана Ваша информация, не сохраняется, т.е. если Вы используете различные шрифты, делаете отступы и другие операции форматирования, то все эти характеристики будут потеряны, если Вы сохраните информацию как ASCII-файл.

Многие программы могут хранить данные как в двоичном виде, так и в виде кодов ASCII, следует лишь указать соответствующие параметры. UNIX позволяет сохранять информацию и в том и в другом виде.

Традиционные Unix системы хранят данные о пользователях вместе с зашифрованным паролем в текстовом файле ``/etc/passwd''. Поскольку этот файл используется многими инструментальными средствами (типа ``ls'') чтобы отобразить владельца файла и другие подобные сведения, файл должен быть открыт на чтение для всех, что, конечно, дает отличный шанс хакерам.

Другой метод хранения информации, тот, который я всегда использую, затенение паролей. Как и раньше, есть файл /etc/passwd с данными о пользователях. Однако, вместо паролей ставится символ “x”, а пароли хранятся отдельно в файле `` /etc/shadow'', в котором хранятся зашифрованные пароли и некоторая дополнительная информация о паролях. Файл /etc/shadow доступен для чтения только root, что повышает защиту.

19. Права доступа на файлы, утилиты для назначения прав, индивидуальные настройки пользователя.

Основным понятием, определяющим все отношение к "правам и обязанностям пользователей" являются атрибуты файла.

Из чего складывается запись прав доступа. Первый символ показывает тип файла. А вот за ним следует три группы из трех символов, определяющих права: владельца файла, его группы и всех прочих пользователей. Для каждой из этих категорий может быть установлен или запрещен доступ к файлу на чтение (r) , запись-то есть внесение модификаций и удаление (w) и на выполнение файла (x). Если соответствующая категория доступа разрешена, она отображается буквой, если нет-дефисом. Поэтому прочитать права доступа при просмотре записей каталога оказывается при наличии некоторых навыков очень легко.

Наряду с защитой от несанкционированного доступа к файлам, каталогам и устройствам механизм прав доступа используется и для контроля целостности программного обеспечения системы.

Системные средства обеспечения безопасности системы

  • Программа поиска уязвимых мест в защите - CRACK

  • "Теневые пароли"

  • npasswd - генератор надежных паролей

Настройка окружения пользователя

При входе любого пользователя в систему для него запускается особый экземпляр оболочки — login shell. В процессе запуска в качестве login shell bash ищет следующие файлы:

/etc/profile

~/.bash_profile

~/.bash_login

~/.profile

(в указанном порядке) и выполняет содержащиеся в них команды. Если bash запускается повторно из командной строки в интерактивном режиме (т. е. не для выполнения какой-то одиночной команды), то он находит файл ~/.bashrc и выполняет содержащиеся в нем команды.

Но какова бы ни была последовательность вызова этих скриптов, с их помощью для каждого сеанса работы пользователя создается так называемая "пользовательская среда" или окружение, представляющая собой набор переменных с установленными для них значениями. Эти значения считываются некоторыми программами и утилитами, и в соответствии с их значениями изменяется поведение системы в тех или иных ситуациях.

Из всех переменных, которые вы увидите по команде set, обычно меняют вид приглашения PS1 и перечень путей поиска PATH.

В отличие от MS-DOS Linux не ищет исполняемый файл в текущем каталоге. Поэтому, если вы хотите, чтобы поиск производился и в текущем каталоге, надо добавить и этот каталог (напомним, что он имеет имя, состоящее из одной точки) в переменную PATH. Но имейте в виду, что с точки зрения безопасности добавлять текущий каталог в перечень путей поиска недопустимо, так как злоумышленник может поместить в один из доступных ему по записи каталогов вредоносную программу, названную именем одной из часто используемых системных утилит. И, когда вы запустите эту программу, считая, что запускаете системную утилиту, она может нанести большой вред вашей системе, тем более, если вы запустили ее от имени суперпользователя.

При желании можно слегка "украсить себе жизнь", включив цветной вывод в команде ls (если по умолчанию он черно-белый). Для этого редактируем файл /etc/bashrc, в который добавляем строку:

alias ls = "ls -F --color"

Кстати, если вы захотите, чтобы Midnight Commander в окне эмулятора терминала был цветным, а не черно-белым, то установите переменную COLORTERM:

COLORTERM = ; export COLORTERM