Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа по защите информации.doc
Скачиваний:
177
Добавлен:
02.05.2014
Размер:
350.72 Кб
Скачать

17. Bash Shell

vi /usr/share/skel/.bash_logout # Файл .bash_logout созданный в домашнем каталоге каждого

# пользователя с командой 'clear' будет очищать экран при

# выходе пользователя из системы. Скопируем в домашний

# каталог пользователя root.

clear

18. Chflags

Команда chflags увеличивает уровень безопасности (the level of security) на указанных файлах. Эта команда особенно полезна для исполняемых или конфигурационных файлов, код или информация которых может быть испорчены другими программами/действиями.

Рассмотрим возможность применения команды chflags к приложениям которые запускаются на сервере, а также к важным конфигурационным файлам.

Запуск команды производится следующим образом:

chflags [no]appnd или [no]schg имя файла

Наберем ls -ol (буквы o и l в маленьком регистре) для просмотра измененных свойств файла. Должны быть два флажка.

sappnd Переводит файл в append-only режим, и только для пользователя root. Другими словами, в файл можно добавить любые данные, но первоначальная информация не может быть изменена/удалена.

schg Делает файл изменяемым только для пользователя root.

Обе команды имеют префиксы. "u" перед sappnd или schg применяет те же опции, но при этом добавляет владельца файла в список пользователей которые будут иметь доступ к этому файлу.

"no" перед sappnd или schg отменит chflag опцию на файле.

19. Зачистка.

Убедимся что все строки в файле /etc/inetd.conf закомментированы.

sockstat -4 #убедимся что ничего лишнего не запущено

tcpdump -xX #пока сервер только появился в сети, посмотрим кто обращается к нему.

Атрибуты файла и файловой системы

Полезные атрибуты файла:

- A отключает создание метки atime для записи времени последнего

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

к носителю. Не поддерживается многими версиями ядра (до версии 2.0). В

некоторых случаях лучше смонтировать файловую систему с параметром

noatime.

- a Только дозапись данных. Устанавливается суперпользователем.

- d Такой файл будет пропущен при создании backup'а системы.

- i Файл нельзя переименовывать, создавать на него ссылки,

модифицировать.

- s При удалении файла занимаемое им место заполняется нулями.

- S При модификации файла все изменения синхронно фиксируются на НМЖД.

Использование команды:

#Чтение атрибутов:

user$ lsattr my_file.txt

-------- my_file.txt

#Установка атрибутов:

user$ chattr +c my_file.txt

user$ chattr +s my_file.txt

user$ chattr +d my_file.txt

#Чтение атрибутов:

user$ lsattr my_file.txt

s-c---d- my_file.txt

#Снятие атрибутов:

user$ chattr -d my_file.txt

s-c----- my_file.txt

Команда chattr +i используется для запрещения изменения всех файлов

программ в каталогах /bin, /usr/bin, /sbin, /usr/sbin, /lib и т.п. Эти

файлы обычно обновляются редко и желательно знать обо всех случаях,

когда это необходимо.

Securelevel

Ядро BSD поддерживает такую функцию, как securelevel. Securelevel - это уровень защиты, который использует ядро.

# man 8 init

Ядро работает с четырьмя другими уровнями безопасности. Любой процесс суперпользователя может увеличить уровень безопасности, но только init может уменьшить его. Уровни безопасности:

  • -1 Небезопасный режим. Лучше его не использовать.

  • 0 Небезопасный режим. Флаги невозможности изменения и добавления могут быть выключены. Со всеми устройствами можно производить операции записи и чтения

  • 1 Безопасный режим. Диски для монтирования файловых систем, устройства /dev/mem и /dev/kmem могут быть закрыты для записи.

  • 2 Очень безопасный режим. Тоже, что и безопасный режим. Кроме того: диски закрыты от записи (исключая команду mount(2)) вне зависимости от того смонтированы они или нет. Этот уровень предотвращает подделку файловых систем с помощью их демонтирования и выполнение команды newfs(8) в многопользовательском режиме.

Если уровень безопасности первоначально -1, то init оставит это неизменным. В противном случае, init установит уровень 0 для однопользовательского режима и уровень 1 для многопользовательского режима. Если нужен уровень 2 - то его можно устанавить в однопользовательском режиме, например, в сценарии запуска /etc/rc, используя sysctl(8).

Чтобы изменить securelevel:

# sysctl -w kern.securelevel=X где X - 0, 1 или 2.

Файл /boot.config может использоваться, чтобы изменить ядро, используемое при загрузке. Для того, чтобы это было невозможно сделать, следует сделать следующее:

# touch /boot.config

# chflags schg /boot.config

Хорошо также выполнить команду chflags schg для директорий /sbin и /bin. Это сделает более трудным доступ к "черным ходам" в системе (особенно при использовании securelevel).

# chflags schg /bin/*

# chflags schg /sbin/*

Поскольку /sbin может быть перемещен и после этого создан новый /sbin, следует провести туже самую операцию над каталогами:

# chflags schg /bin; chflags schg /sbin

Соседние файлы в предмете Защита информации