Подключиться по SSH к Jupyter Server

Вы можете подключиться к Jupyter Server или исполняемой в регионе задаче по протоколу SSH. Подключение позволяет оперативно просматривать информацию о задачах обучения, а также выполнять отладку необходимых процессов.

Подключение по SSH возможно:

  • С локальной машины, например, из стандартного терминала или с использованием специальных клиентов для протокола удаленного доступа (PuTTY, Windows PowerShell и др.).

  • Из Jupyter Server (из терминала Jupyter Notebook / JupyterLab). Подробнее см. в Работать из терминала Jupyter/JupyterLab.

Внимание

Подключение по SSH доступно для образов версий выше 0.0.82.

Обновление публичных ключей для SSH

Для повышения безопасности SSH будет изменен хост-ключ в ML Space. Старые ключи, указанные в файле known_hosts больше не будут работать.

Новые ключи будут созданы по новой схеме.

Чтобы избежать ошибок, удалите старый ключ и сгенерируйте новый.

Команда для удаления старого SSH-ключа
ssh-keygen -R "<host_name>"

Обратите внимание: "<host_name>" должен быть указан в кавычках.

При попытке подключения с устаревшим SSH-ключом в терминале появится сообщение о том, что ключ устарел.

Пример сообщения

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:UH8ntKHp5Zg47yI2zWxmHrfvaoHXis6+TfNP9PmFO1Q.
Please contact your system administrator.
Add correct host key in /Users/username/.ssh/known_hosts to get rid of this message.
Offending RSA key in /Users/username/.ssh/known_hosts:13
Host key for XXX.XXX.XXX.XXX has changed and you have requested strict checking.
Host key verification failed.

Подключение по SSH с локальной машины

Для подключения:

  1. Напротив Jupyter Server, к которому предполагается подключение, перейти в меню Кнопка с тремя вертикальными точками, выберите SSH.

    ../../../_images/s__ssh_key.png
  2. В диалоговом окне Подключение по SSH нажмите Скачать приватный ключ. Ключ сохранится в указанный при сохранении каталог.

    Примечание

    Нет необходимости скачивать приватный ключ для каждого Jupyter Server. Ключ выдается на пользователя.

  3. Скопируйте команду и выполните ее в терминале, предварительно заменив значения на свои:

    ssh test-name.ai0001011-00055@ssh-jupyter.ai.cloud.ru -p 2222 -i <path/to/private_id_rsa_key>
    

    Где:

    • test-name — название Jupyter Server;

    • ai0001011-11111 — автоматически генерируемый параметр;

    • <path/to/private_id_rsa_key> — путь к приватному ключу на локальной машине.

Примечание

Если вы работаете на OC Windows, то при копировании пути слеши удалятся. Поэтому необходимо вручную добавить обратные слеши \ в путь.

При возникновении проблем с подключением, рекомендуем к параметрам SSH добавить:

-o HostkeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa

Команда для подключения по SSH будет выглядеть так:

ssh -o HostkeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa buckets.ai0001011-11111@ssh-sr002-jupyter.ai.cloud.ru -p 2222 -i <path/to/private_id_rsa_key.txt>

При первом подключении по SSH появится предупреждение о неизвестном хосте. Введите в терминале слово «yes» и нажмите Enter. Обратите внимание на то, что менеджер ключей SSH-agent запоминает SSH-ключи, которые ранее вводил пользователь, и при попытке повторного подключения может использовать не тот ключ. Поэтому рекомендуем перед подключением по SSH выполнить в терминале команду (актуально для unix-подобных операционных систем):

killall ssh-agent

Изменение прав доступа к файлу с приватным ключом

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

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

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

chmod 600 <path/to/key>
Запустили Evolution free tier
для Dev & Test
Получить