Михаил Флёнов - Linux глазами хакера

Все авторские права соблюдены. Напишите нам, если Вы не согласны.
Описание книги "Linux глазами хакера"
Описание и краткое содержание "Linux глазами хакера" читать бесплатно онлайн.
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.
Для пользователей, администраторов и специалистов по безопасности
cat /home/root/need.txt
tacЭта команда обратная для cat (даже название команды — это слово cat наоборот), т.е. выводит на экран файл в обратном порядке, начиная с последней строки до первой.
cdЭта команда позволяет сменить текущий каталог. Для этого необходимо в качестве параметра задать нужную папку:
cd /home/flenov
Если вы находитесь в каталоге /home и хотите внутри него перейти в подкаталог flenov, то достаточно набрать только имя папки flenov:
cd flenov
Если нужно переместиться на уровень выше, например, из подкаталога /home/flenov в каталог /home, нужно выполнить команду:
cd ..
Как мы знаем, папка с именем из двух точек указывает на родительский каталог. Если перейти на нее, то мы попадем на предыдущий уровень.
cpКоманда копирования файла. С ее помощью можно выполнять несколько различных действий:
1. Копирования содержимого файла в другой документ той же папки:
cp /home/root/need.txt /home/root/need22.txt
Здесь содержимое файла /home/root/need.txt (источник) будет скопировано в файл /home/root/need22.txt (назначение).
2. Копирования файла в другой каталог:
cp /home/root/need.txt /home/flenov/need.txt
или
cp /home/root/need.txt /home/flenov/need22.txt
Обратите внимание, что в этом случае в папке назначения файл может быть как с новым, так и со старым именем.
3. Копирование несколько файлов в новый каталог. Для этого нужно перечислить все файлы в источнике и последним параметром указать папку назначения:
cp /home/root/need.txt /home/root./need22.txt /home/new/
В этом примере файлы /home/root/need.txt и /home/root/need22.txt будут скопированы в директорию /home/new. Можно копировать файлы и из разных каталогов в один:
cp /home/root/need.txt /home/flenov/need22.txt /home/new/
В этом примере файлы /home/root/need.txt и /home/flenov/need22.txt будут скопированы в директорию /home/new.
4. Копирование группы (всех) файлов каталога.
А что если надо скопировать все файлы, начинающиеся на букву "n" из одной директории в другую? Неужели придется их все перечислять? Нет, достаточно указать маску n*, где звездочка заменяет любые символы, начиная со второго:
cp /home/root/n* /home/new/
Если нужно скопировать все файлы, имена которых начинаются символами "ra" и заканчиваются буквой "t", то маска будет выглядеть как ra*t.
mkdirСоздание новой директории. Например, если вы хотите создать подкаталог newdir в текущей директории, то нужно выполнить команду:
mkdir newdir
rmКоманда позволяет удалить файл или директорию (должна быть пустая):
rm /home/flenov/need22.txt
В качестве имен файлов можно использовать и маски, как в команде cp. Для удаления директории может понадобиться указание следующих ключей:
□ -d — удалить директорию;
□ -r — рекурсивно удалять содержимое директорий;
□ -f — не запрашивать подтверждение удаляемых файлов. Будьте внимательны при использовании этого параметра, потому что файлы будут удаляться без каких-либо дополнительных вопросов. Вы должны быть уверены, что команда написана правильно.
Пример удаления директории:
rm -rf /home/flenov/dir
dfЭта команда позволяет определить свободное место на жестком диске или разделе. Если устройство не указано, то на экран выводится информация о смонтированных файловых системах.
Пример результата выполнения команды:
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda2 16002200 2275552 12913760 15% /
none 127940 0 127940 0% /dev/shm
Результирующая таблица состоит из следующих колонок:
□ Filesystem — диск, файловая система которого смонтирована;
□ 1k-blocks — количество логических блоков;
□ Used — количество использованных блоков;
□ Available — количество доступных блоков;
□ Use% — процент использованного дискового пространства;
□ Mounted on — монтировка файловой системы.
mountКоманда предназначена для монтирования файловых систем. Она достаточно сложна, и ее используют системные администраторы.
Если вы работали с ОС Windows, то скорей всего привыкли к тому, что дискеты, CD-диски и другие съемные носители становятся доступными сразу же, как только вы поместили их в устройство чтения. В Linux это не так, и многие не могут сжиться с этой особенностью. К таким пользователям отношусь и я, т.к. до сих пор не могу привыкнуть, что нужно выполнять дополнительные команды, хотя и прекрасно понимаю, что они необходимы.
Итак, чтобы CD-ROM стал доступным, надо выполнить команду mount, указав в качестве параметра устройство /dev/cdrom:
mount /dev/cdrom
После этого содержимое CD можно посмотреть в директории /mnt/cdrom. Получается, что файлы и директории диска как бы сливаются с файловой системой.
Почему именно в директорию /mnt/cdrom подсоединяется CD-ROM? Секрет заключается в том, что для подключения CD-ROM нужно намного больше данных, чем дает одна команда mount dev/cdrom. Эти сведения хранятся в двух файлах, уже имеющихся в ОС и описывающих основные устройства и параметры по умолчанию — файлы fstab и mtab. Давайте по очереди разберем эти файлы.
Для начала взглянем на fstab:
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/hda2 / ext3 defaults,errors=remount-ro 0 1
/dev/hda1 none swap sw 0 0
proc /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
none /dev/pts/ devpts gid=5,mode=620 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
Файл содержит строки для основных дисков. Каждая запись состоит из 6 колонок. Обратите внимание на первую строку. Здесь описывается подключение диска hda2. В моей файловой системе это основной диск, поэтому второй параметр — "/". Это значит, что диск будет монтирован как корневой. Третья колонка описывает файловую систему, в данном случае это Ext2. Параметр rw указывает на то, что устройство доступно для чтения и записи.
Предпоследняя строка в файле описывает устройство CD-ROM. Посмотрите внимательно на второй параметр /mnt/cdrom. Вот откуда берется путь к содержимому CD-диска. Четвертая колонка содержит опции монтирования, в которых можно описать параметры безопасности. В данном случае для CD-ROM здесь указано несколько опций: noauto, owner, kudzu, ro. Очень важным здесь является параметр ro, который говорит о возможности только чтения CD-ROM. Вполне логично установить этот параметр для всех приводов и устройств, с помощью которых хакер сможет снять информацию с сервера.
Файл mtab имеет примерно такое же содержимое:
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/hda2 / ext3 rw,errors=remount-ro 0 0
proc /proc proc rw 0 0
none /dev/shm tmpfs rw 0 0
none /dev/pts devpts rw,gid=5,mode=620 0 0
none /proc/sys/fs/binfmt_misc binfmt misc rw 0 0
/dev/cdrom /mnt/cdrom iso9660 ro,nosuid,nodev 0 0
Если вы создали какие-то разделы на отдельных дисках, то сможете настраивать и их. Я вам рекомендовал выделить таким образом раздел /home с пользовательскими директориями. Если вы так и сделали, то в файле может быть еще одна строка примерно следующего вида:
/dev/hda3 /home ext3 rw,errors=remount-ro 0 0
Посмотрим на четвертый параметр. В нем содержатся опции монтирования, которыми можно управлять для повышения безопасности системы. Они перечислены через запятую. В нашем примере это rw, errors=remount-ro. В качестве опций монтирования дополнительно можно использовать:
□ noexec — запрет выполнения файлов. Если вы уверены, что в разделе не должно быть исполняемых файлов, то можно использовать эту опцию. Например, в некоторых системах директория /home должна хранить только документы. Чтобы хакер не смог записать в этот раздел свои программы, с помощью которых будет происходить взлом, добавьте этот параметр. Точнее сказать, программы поместить можно будет, а запустить — нет;
□ nosuid — запрещает использование программ с битами SUID и SGID. В разделе /home их быть не должно, поэтому можно явно запретить применение привилегированных программ. О SUID- и SGID-программах мы поговорим в разд. 4.5;
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!
Похожие книги на "Linux глазами хакера"
Книги похожие на "Linux глазами хакера" читать онлайн или скачать бесплатно полные версии.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Отзывы о "Михаил Флёнов - Linux глазами хакера"
Отзывы читателей о книге "Linux глазами хакера", комментарии и мнения людей о произведении.