Шаг 1: Генерация пары ключей
Выполняется один раз на вашем компьютере (не на сервере).
ssh-keygen
Программа задаёт вопросы — нажимайте Enter на каждый:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): [Enter]
Enter passphrase (empty for no passphrase): [Enter]
Enter same passphrase again: [Enter]
Your identification has been saved in /home/user/.ssh/id_rsa
Your public key has been saved in /home/user/.ssh/id_rsa.pub
После этого в ~/.ssh/ появятся два файла:
id_rsa— приватный ключ. Только у вас!id_rsa.pub— публичный ключ. Для передачи на сервер.
Шаг 2: Просмотр и копирование публичного ключа
cat ~/.ssh/id_rsa.pub
Вывод выглядит примерно так:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9XYz... user@hostname
Скопируйте всю строку целиком и отправьте преподавателю в чат.
Шаг 3: Преподаватель добавляет ключ на сервер
Преподаватель добавляет ваш публичный ключ в файл ~/.ssh/authorized_keys на сервере:
nano .ssh/authorized_keys
# Вставить ваш публичный ключ
После этого вы сможете подключиться.
Шаг 4: Подключение к серверу
ssh -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de
При первом подключении может появиться:
The authenticity of host 'linux.itcareerhub.de' can't be established.
ECDSA key fingerprint is SHA256:...
Are you sure you want to continue connecting (yes/no)? yes
Введите yes и нажмите Enter. После этого вы окажетесь на сервере.
Шаг 5: Создать рабочую папку на сервере
# Вы уже на сервере (ssh подключён)
mkdir /opt/ИМЯ_ГРУППЫ/ВАШЕ_ИМЯ
ls /opt
Обратите внимание: работаем в папке /opt, где есть папки всех групп. Все последующие домашние работы выполняются в вашей личной папке на сервере.
Шаг 6: Копирование файлов через scp
Выполняется с вашего компьютера (не с сервера). Сначала выйдите с сервера командой exit.
# Скопировать файл с сервера в текущую папку (. = текущая папка на вашем ПК)
scp -i ~/.ssh/id_rsa ec2-user@linux.itcareerhub.de:/opt/ГРУППА/ИМЯ/file .
# Отправить файл с вашего компьютера на сервер
scp -i ~/.ssh/id_rsa ./myfile.txt ec2-user@linux.itcareerhub.de:/opt/ГРУППА/ИМЯ/
Точка . в первой команде — текущая директория на вашем компьютере.