Лабораторная работа №2. Работа в терминале
Цель работы:
изучение команд, связанных с пользователями и группами;
изучение структуры файловой системы Linux, изучение общих команд создания, удаления, модификации файлов и каталогов, функций манипулирования данными, алиасами;
изучение иерархии процессов;
приобретение навыков смены атрибутов объектов, прав доступа;
изучение организации безопасности системы, местонахождение файлов с паролями, просмотр системной информации и получение служебной. информации.
1 Рабочее задание
1. Ввести команду whoami. Залогиниться в терминале под суперпользователем (root) (см. рисунок 4).
Рисунок 4 – смена пользователя насуперпользователя в ОС Ubuntu
2. Ввести команду whoami. Сравнить с предыдущим результатом.
3. Завести в системе нового пользователя = фамилия студента, залогиниться под ним и создать пару папок в разных местах на диске. Ввести whoami.
4. Перейти обратно в суперпользователя. Определите имя текущего каталога.
5. Вывести календари текущего года, текущего месяца, месяца и года рождения студента; вывести дату и время текущее.
6. Перейти в корневой каталог /. Создать папку ot4et.
7. Просмотреть содержимое корневого каталога и вывести на экран. Записать это содержимое в файл 1папки ot4et.
8. Создать 2 текстовых файла (2 и 3) командами cat и touch, записать и них соответственно текущее время и дату, просмотреть содержимое на экране.
9. Получить информацию о работающих пользователях, подсчитать их количество и дозаписать информацию в концы файла и файла 3.
10. В папке ot4et создать каталоги 4ast1 и 4ast2. Переместить 4ast2 в 4ast1.
11. Создайте в 4ast2 файл 4, в который запишите всю историю команд, набранную в терминале до этого момента.
12. В 4ast2 к файлу 4 сделайте 2 ссылки: жесткую и символьную. Переименуйте 4 в 5. Проверьте работоспособность обеих ссылок. Переместите 5 в папку ot4et.
13. Осуществите поиск файла 5 в папке ot4et. Результаты поиска выведите на экран и запишите в файл 6. Удалить 4ast2 и 4ast2.
14. Создать любые ссылки к файлам 1, 2, 3, 5 с названиями ln1,ln2, ln3, ln5.
15. Подробное содержимое папки ot4et с указанием полной информации записать в файл 4. Создать символическую ссылку к файлу. Произвести подсчет количества строк в файле 4.
16. Изучить справку к команде ps, выполнить ее с ключами -a, -e, a, x, ax, записать результаты в файл 6 в папке ot4et.
17. Продемонстрировать знание всех команд, связанных с процессами. Результаты записать в файл 7.
18. Объединить 6 и 7 в файл 8, просмотреть 8 на экране постранично. Продемонстрировать поиски по содержимому файла; каталога. Результат записать в файл 9.
19. Запустить процессы разными способами (в обычном и фоновом режиме). Завершить (убить) любые на свой выбор процессы. Открыть вторую и третью консоль из первого терминала. Закрыть первую и третью консоли из под второго терминала.
20. Изменить приоритеты некоторых процессов.
21. Привести 3 примера назначения и использования алиасов.
22. Изменить (назначить разные) права (доступ, владельцев, группы) на все объекты в папке ot4et отдельно на каждый файл, сохранив таблицу первоначальных доступа, прав, групп в файле 10.
23. Находясь под суперпользователем, зайти в папку /etc/ и найти файлы обычных или теневых паролей пользователей и групп: passwd, group, shadow и gshadow (/etc/passwd - информация об учетных записях пользователей; /etc/shadow - зашифрованные пароли).
24. Изучить ресурс http://suvan.ru/page/zashhita-parolej-1.html
25. Открыть файлы в системе и произвести смену пароля администратору двумя способами; смену пароля неадминистратора двумя способами, предварительно сделав копию файла с паролями в файл 11 папки ot4et.
26. Создать, заблокировать нового пользователя TEST-фамилия студента.
27. Предусмотреть систему защиты от другого студента. Обменяться с ним ноутбуками и взломать (сменить пароль) его администраторскую учетную запись.
28. Продолжить работу на своем компьютере. Изучить команды, такие как du, df, free, quota, uptime, clear, head, tail, sort, file, wc, w, more, uname, whereis, whatis, whichis
2 Методические указания к выполнению
Лабораторная работа выполняется в командной строке (часто используются термины «терминал» или «консоль»), результат работы с объектами можно проверить в любом установленном оконном менеджере.
Командная строка начинается приглашением - подсказка, свидетельствующая о том, что система готова принимать команды пользователя от какого-либо пользователя. Приглашение может быть оформлено по-разному, но чаще всего оно заканчивается символом “$”(права обычного пользователя) или “#”(суперпользователь). Например, в приглашении root@kate-desktop:/home/kate#
до ”@” - имя пользователя; между “@” и “:” - имя домена; после “:” - путь к папке, где находится текущий пользователь.
Команды в терминале выводят информацию на экран, в файл, можно использовать метасимволы для формирования сложных команд:
а) > - запись в файл. Например, существует файл goa с некоторым содержимым, набираем «date>goa» - содержимое файла стирается и в него записывается текущая дата;
б) >> - дозапись в конец существующего файла. Например, существует файл goa с некоторым содержимым, набираем «date>>goa» - содержимое файла остается, + в конец файла goa добавляется строка с текущей датой;
в) | - программный канал - результат одной команды передается другой команде;
г) & - процесс выполняется в фоновом режиме, не дожидаясь окончания предыдущих процессов;
д) ? – любой 1 символ;
е) * - любое количество любых символов;
ж) ; - перечисление команд в 1 строчке, команды выполняются друг за другом;
з) && - при объединении команд: последующая команда выполняется только при нормальном завершении предыдущей;
и) || - при объединении команд: последующая команда выполняется только, если не выполнилась предыдущая команда;
к) () - группирование команд в скобки, как в арифметических расчетах;
л) { } - группирование команд с объединенным выводом;
м) [ ] - указание диапазона данных или перечисление данных (без запятых).
Написав команду ls -l компьютер выдаст информацию о текущей папки в полном объеме по своим атрибутам, дате и владельцу, его группе и правами. Каждому файлу соответствует девять битов разрешений. Данные биты формируют режим доступа к файлу и определяют, какие пользователи и группы имеют права на данный файл.
Первые три бита определяют права для владельца файла; вторые три бита определяют права для группы, которой принадлежит данный файл; последние три бита определяют права для всех остальных пользователей. Однако существуют еще четыре дополнительных независимых бита. Эти биты автоматически устанавливаются при создании файла и не подлежат изменению.
Изменить режим доступа для файлов может только владелец файла или суперпользователь. Код доступа к файлу задается одним из двух режимов:
восьмеричный режим (1- выполнение, 2 – запись, 4 - чтение);
символьный режим (x – выполнение, w – запись, r - чтение).
Обозначения для символьного режима: u – user (владелец файла), g – group (группа владельца), o – other (остальные), a – all (все).
К вопросу об организации безопасности в Linux: каждому студенту необходимо самостоятельно найти и изучить описания файлов passwd, shadow в папке /etc. Ниже дана информация, помогающая осуществить взлом ОС.
Есть только одно место (как правило), куда обычные пользователи могут писать - это их домашний каталог, который имеет имя /home/user_login_name (например, /home/Kate, если пользователь имеет имя Kate). Этот “домашний” каталог содержит все пользовательские файлы: настройки, файлы конфигурации программ, документы, данные, кэш браузера, почту, и т.д. Как пользователь, вы можете создать подкаталоги в вашем домашнем каталоге, организованные по вашему усмотрению. Другие пользователи не могут читать ваши файлы или писать в ваш домашний каталог без вашего разрешения.
Администратор может изменить пароль любого пользователя, хотя он и не может прочесть его. Пароли шифруются, используя однонаправленный алгоритм шифрования, и только зашифрованная версия хранится в системе - в файле /etc/passwd (в старых системах) или /etc/shadow (в более новых системах). В "открытом" виде пароли нигде не хранятся. Разделение администратора и пользователя делает систему безопасной и устойчивой - это создает трудности Linux-вирусам (программы, которые пользователь запускает, могут изменять информацию только в его/ее домашнем каталоге, и не могут воздействовать на жизненно важные части ОС).
3 Список контрольных вопросов
1. Что такое ”командная строка”?
2. Что такое “терминал”?
3. Перечислить состояния процессов в Linux. Как их можно отследить?
4. Зачем используются алиасы в системе?
5. Какие папки есть в корневом каталоге и каково их содержимое?
6. Сколько типов файлов существуют в Linux и как они обозначаются?
7. Какие поля содержатся в файле /etc/shadow и /etc/passwd?
8. Как защитить систему в случае попытки взлома через загрузчик?
9. Перечислить команды (назовите их функции), начинающиеся на ch.
10. Как используются и в каких случаях метасимволы?
Достарыңызбен бөлісу: |