Общие инструкции

Подключение к облачной платформе RESDS

Получить доступ к Dashboard можно из браузера. Для этого нужно перейти по адресу:

https://cloud.resds.ru/

В поле Domain выбрать AD, и ввести свой логин и пароль.
Будет отображена общая информация по проекту.

Выбрать нужный проект можно в верхней панели.

Необходимо перейти во вкладку Инстансы. Нужно включить инстанс, если он выключен.

Здесь находятся виртуальные машины. Необходимо нажать на имя виртуальной машины. Откроется более подробная информация о ней.

Для того чтобы получить доступ к ВМ, нужно перейти во вкладку Консоль. Здесь видно консоль виртуальной машины (если не работает клавиатура в ВМ, нажмите правой кнопкой мыши на синюю рамку сверху). Для того чтобы открыть консоль в отдельной вкладке, требуется нажать Нажмите сюда для показа только консоли.

Подключение к платформе для выполнения лабораторных работ

Получить доступ к Dashboard можно из браузера. Для этого нужно перейти по адресу:

https://panel.resds.ru/

В поле Domain выбрать AD, и ввести свой логин и пароль.
В правой части экрана, будут отображены под вашим логином будут отображены все доступные вам проекты

Вам необходимо нажать на необходимый проект и в появившемся меню выбрать пункт Инстансы

У вас появится новая информация в основном окне веб-приложения

Далее вам необходимо нажать на вкладку CONSOLE

В верхнем меню рядом с вкладкой Dashboard, появится новая вкладка в которой будет отображено название инстанса

Вам необходимо нажать на эту вкладку, и перед вами появится консоль для работы с виртуальной машинной

Полезные команды linux

Работа с редактором vi

vimtutor - встроенная обучающая программа по работе с vi (vimtutor ru–для отображения на русском языке)

Есть два основных режима - Normal и Insert. для перехода в режим insert нужно нажать i на клавиатуре, для возврата в режим Normal -нажать ESC

Normal – режим навигации по тексту и управление им(удаление строк, символов и проч). В этом режиме:кнопки стрелок, или символы h,j, k, l для навигации по тексту

p - вставка текстаx - удаление символа над курсором

dd - удаление текущей строки

:- режим выбора режима работы(все введённые символы отображаться в самой нижней строке консоли)

Insert –режим для добавления текста(вход из режима normal нажатием кнопки i, выход -ESC)

Visual –режим выделения текста(вход из режима normal нажатием кнопки v, выход -ESC)

Навигация по файловой системе

pwd показать текущую директорию
ls отобразить список файлов и папок
cd сменить текущую папку

Специальные символы для навигации по файловой системе

~ домашняя папка текущего пользователя
. Текущая директория
.. Родительская директория
* маска для любого имени файла или папки
? Маска для любого символа в имени файла или папки
TAB попытка автодополнения

Примеры навигации по файловой системе

cd /usr/local/lib сменить директорию на /usr/local/libcd
cd ~ сменить директорию на домашнюю директорию текущего пользователя
pwd показать рабочую (текущую) директорию
cd .. перейти в директорию на уровень вверх
cd / перейти в корневую директорию
ls –d pro* отобразить директории, имя которых начинается с pro

Просмотри истории команд

history -вся история

стрелки ↑ и ↓ клавиатуры для навигации по прошлым командам

Помощь по командам:

date –-help
man date
info date

Перенаправления через pipe(|)

W Показать всех пользователей, которые в данный момент вошли в систему

w | less показать всех пользователей, которые зашли в формате страниц

w | grep ‘tema’ выбрать всех пользователей, которые были авторизованы, и показать только тех, в имени которых содержится «tema»

обработка текста

cat Отобразить содержимое файла
grep поиск по шаблону
tail вывести последние 10 строк файла
awk язык поиска по шаблонам
cut обрезать конкретные поля в каждой строке файла
diff сравнить два файла
head показать первую часть файла
less показать файл постранично
od сделать дамп файлов в различных форматах
sed потоковый редактор
sort отсортировать текстовые файлы
split разделить файлы
tail показать последнюю часть файла
tr транслитерировать символы
uniq отбросить повторяющиеся строки в файле
wc посчитать количество строк или слов, или символов

Отображение содержимого в файловой системе

ls -a показать все файлы, в том числе скрытые “.”
ls -ld * показать информацию о папке, а не о содержимом
ls -F поместить индикатор в конец каждого имени файла
ls –l простой длинный вывод
ls –lR рекурсивный длинный вывод(с учетом вывода содержимого под папок)
ls –lh отображение размера файлов в читаемом виде
ls –lS отсортировать файлы по размеру
ls –lt отсортировать файлы по времени создания

Набор полезных команд

cp [file1] [file2] скопировать файлы
mkdir [name] создать папку
rmdir [name] удалить пустую папку(если не пустая, то не удалится)
mv [file] [destination] переместить (переименовать файл)
rm [file] удалить (-r рекурсивно)
file [file] идентифицировать тип файлы
less [file] вывести файл в постраничном виде
head -n [file] показать первые n строк файла
tail -n [file] показать последние n строк файла
ln –s [file] [new] создать символьную ссылку на файл
tac [file] вывести содержимое файла в обратном порядке, в сравнении с cat
touch [file] создать файл(если создан, изменить время создания)

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

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

Подготовка к созданию
1. Подключение к облачной инфраструктуре

Перейти по ссылке. Для подключения использовать домен AD, а также учётную запись пользователя, используемую для подключения к WiFi СПбГУТ

Screenshot from 2022-05-12 16-15-31.png

2. Открыть: проект -> сеть -> сети, и убедиться, что там есть сеть external-direct-net или external-net

cr.png

external-direct-net - сеть маршрутизируема в сети бонча

3. Генерация ключевой пары.

При первом входе сгенерировать ключевую пару, для доступа к Linux виртуальным машинам.

Ключевая пара - это взаимосвязанная пара, состоящая из открытого и закрытого асимметричного ключа. Используется для подключение к виртуальной машине, без использования пароля

Открыть: Проект -> ключевая пара -> создать ключевую пару

Создание виртуальной машины, генерация ключевой пары.png

В открывшемся окне ввести имя ключевой пары и тип ключа(ssh-key)

Окно создание ключевой пары.png

Имя ключевой пары может быть любым

Ключ будет сохранен на ваш компьютер, он понадобится в дальнейшем.

Создание виртуальной машины
4. Создать виртуальную машину.

Открыть меню Проект > вычислительные ресурсы > инстансы > запустить инстанс

запустить инстанс.png

В открывшемся окне, во вкладке подробности ввести имя инстанса и нажать Следующая > внизу страницы.

создание инстанса.png

Имя инстанса может быть любым

В следующем меню (Источник) выбрать источник – образ, указать размер тома данных, выбрать удаление диска при удалении инстанса, выбрать необходимый вам образ из доступных (например Ubuntu-server-20.04:docker), и нажать справа от него стрелку вверх

Создание инстанса 2.png

В следующем меню (тип инстанса) определить объем выделяемых виртуальной машине вычислительных ресурсов. Для этого нужно выбрать один из предопределённых типов инстансов (например small), и нажать справа от него стрелку вверх.

тип инстанса.png

В меню сети выбрать нужную вам сеть, к которой будет подключена виртуальная машина (наличие сети было проверено в п.1). Если в инфраструктуре доступна только одна сеть, она будет выбрана автоматически, и выбирать ничего не нужно.

Сеть.png

Затем перейти к меню Ключевая пара, выбрать созданную ключевую пару, и нажать справа от неё стрелку вверх.

Выбор ключа.png

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

5. Настройка правил безопасности.

Для работы с инстансом необходимо разрешить ему сетевое взаимодействие (например 80/TCP – HTTP, 22/TCP – SSH, 51820/UDP - other): Для этого нужно открыть Проект > Сеть > Группы безопасности > выбрать группу безопасности default и нажать – управление правилами

группы безопасности.png

В открывшемся меню добавить правило для входящего трафика

правила безопасности 2.png

В открывшемся меню добавления правил, добавить правило для порта 80(tcp)
Для этого выбрать:
Правило: «Настраиваемое правило TCP»
Направление: Входящий трафик
Порт: 80
Формат записи подключаемого диапазона адресов: CIDR
Сам подключаемый диапазон адресов: 0.0.0.0/0
Последняя запись означает разрешение подключения с любого адреса.
После заполнения всех полей нажать кнопку Добавить в правом нижнем углу.

 80-tcp.png

То же самое необходимо сделать для всех остальных портов.

6. Узнать адрес виртуальной машины

Для этого вернуться во вкладку инстансы и в поле ip адрес будет ip адрес вашего виртуального инстанса. Этот адрес понадобится в дальнейшем, для подключения к нему и его настройки.

find ip.png

Подключение к VM
7. Putty

Сделать это можно, например, с помощью putty. Для этого необходимо перейти на страницу загрузки, выбрать msi установщик, так как понадобятся дополнительные компоненты Открыть puttygen, нажать кнопку load и выбрать скачанный в п.2 ключ с расширением .pem Puttygen автоматически подставит все поля из ключа. Далее необходимо нажать кнопку save private key, и выбрать место, куда ключ будет сохранен

putty.png

Открыть расположение сохраненного ключа, и два раза нажать на него, для запуска помощника авторизации pagent (pagent откроется в трее рабочего стола, пользователь не увидит запуск никаких приложений на рабочем столе) Запустить putty Открыть меню connection -> SSH -> Auth и в открывшемся меню в поле private key for authentication выбрать путь к сгенерированному ключу

putty2.png

Открыть заново вкладку session, ввести адрес нашей ВМ и нажать Open В открывшемся окне терминала ввести имя пользователя cloudadmin. Это позволит получить удалённый доступ к вашей виртуальной машине.

8. Linux

Для подключения в большинстве дистрибутивов уже установлены SSH-агенты и для подключения используя ключ достаточно добавить его в агент.

Для этого нужно выполнить команду, где pemkey.pem, это файл полученный вами на 3 пункте данной инструкции

ssh-add pemkey.pem

Для подключения в данном случае в терминале достаточно ввести команду:

ssh cloudadmin@172.17.5.1

адрес 172.17.5.1 необходимо заменить на ваш адрес полученный из пункта 6 инструкции

9. Windows 10 OpenSSH

В Windows 10 c версии 1809 включен пакет OpenSSH, проверить это можно с помощью команды (выполняется с правами администратора):

Дальнейшие действия выполняются в PowerShell

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*'

Screenshot from 2022-05-12 17-40-45.png

Если SSH клиент отсутствует (State: Not Present), его можно установить:

Add-WindowsCapability -Online -Name OpenSSH.Client*

Далее необходимо включить SSH-агент:

Start-Service ssh-agent

Добавить ключ можно с помощью команды:

ssh-add "C:\Users\username\.ssh\id_rsa"

Теперь вы можете подключиться используя команду:

ssh cloudadmin@172.17.5.1

адрес 172.17.5.1 необходимо заменить на ваш адрес полученный из пункта 6 инструкции

Включение SSH-сервера windows 10

  1. Открыть Power shell с правами администратора и внести команды
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
  1. Проверка, что сервер запущен и ждет подключение на 22 порту c помощью CMD
netstat -na | find ":22"