Разбор ДЗ 5 (из занятия 08)
Задание: войти на учебный сервер, создать папку /opt/ГРУППА/ИМЯ, сделать скриншот /opt.
Шаг 1: Войти на сервер
# На вашей локальной машине
ssh -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de
После входа приглашение изменится: [ec2-user@ip-xxx-xxx ~]$
Шаг 2: Создать рабочую папку
# На сервере — замените GROUP/NAME на реальные значения
mkdir -p /opt/GROUP/NAME
Флаг -p создаёт все промежуточные директории и не ругается, если папка уже существует.
Шаг 3: Проверить и сделать скриншот
# Посмотреть содержимое /opt — ваша папка должна быть видна
ls /opt
Результат отправляется преподавателю (скриншот терминала или вывод команды через export_file).
Ответы на экспресс-опрос
- Показать публичный ключ:
cat ~/.ssh/id_rsa.pub - Путь по умолчанию:
~/.ssh/id_rsa.pub(папка~/.ssh/) - Почему нельзя показывать приватный ключ: Тот, у кого есть файл
id_rsa, может подключиться к серверу от вашего имени — без пароля. Приватный ключ = доступ к аккаунту. - Кто следит за входящими: Файл
~/.ssh/authorized_keysна сервере содержит список разрешённых публичных ключей. SSH демон (sshd) проверяет по нему. - Пересоздание ключей: Новая пара ключей перезапишет старые. Публичный ключ изменится, и сервер его не примет — нужно снова отдавать преподавателю новый
id_rsa.pub. - Удаление своего ключа из authorized_keys: Вы лишитесь доступа на сервер — SSH откажет в подключении с вашим ключом.
- Два одинаковых имени: Нет — имена пользователей на сервере уникальны. Но ключи разных студентов добавляются в
authorized_keysодного пользователяec2-user. - Кто может добавлять ключи: Администратор (преподаватель) или сам пользователь, если уже имеет доступ. Файл
authorized_keys— часть домашней директории пользователя на сервере.
Решение задания для закрепления
Шаг 1: Войти и проверить папку
# На вашей локальной машине
ssh -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de
# На сервере: проверить наличие рабочей папки
ls /opt/GROUP/NAME
Если выдаёт ошибку «No such file or directory» — создать:
mkdir -p /opt/GROUP/NAME
Шаг 2: Создать пустой файл через перенаправление
# Оператор > перенаправляет пустой ввод, создавая пустой файл
> /opt/GROUP/NAME/test.txt
# Проверить, что файл создан (размер 0)
ls -la /opt/GROUP/NAME/test.txt
# -rw-rw-r-- 1 ec2-user ec2-user 0 ... test.txt
Шаг 3: Управление правами
# Дать право исполнения владельцу
chmod u+x /opt/GROUP/NAME/test.txt
# Убрать право чтения для группы (g) и остальных (o)
chmod og-r /opt/GROUP/NAME/test.txt
# Проверить результат
ls -la /opt/GROUP/NAME/test.txt
# Ожидаемый вывод: --x------ (только исполнение для владельца)
Шаг 4: Скопировать файл локально через SCP
# Выйти с сервера
exit
# На локальной машине — скопировать файл в текущую папку
scp -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de:/opt/GROUP/NAME/test.txt .
# Убедиться, что файл скопировался
ls -la test.txt
Полный скрипт всех шагов:
# === На вашей машине ===
ssh -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de
# === На сервере ===
ls /opt/GROUP/NAME
mkdir -p /opt/GROUP/NAME # если нет
> /opt/GROUP/NAME/test.txt
chmod u+x /opt/GROUP/NAME/test.txt
chmod og-r /opt/GROUP/NAME/test.txt
ls -la /opt/GROUP/NAME/test.txt
exit
# === Снова локально ===
scp -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de:/opt/GROUP/NAME/test.txt .