Перейти к содержимому
Перейти в KPanelПерейти в KPanel
Содержание
Серверы

Подключение к облачному серверу через SSH

Машинный перевод. Английский оригинал доступен.

SSH предоставляет вам root-оболочку на облачном сервере из вашего собственного терминала, и все детали, необходимые для подключения, отображаются на странице сервера в KPanel, готовые к копированию.

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

Поиск данных для подключения

  1. Войдите в KPanel.
  2. Нажмите Облачные серверы на левой боковой панели, затем нажмите на ваш сервер.
  3. Найдите карточку Connection.

Карточка содержит три поля для копирования в буфер обмена:

ПолеЧто это такое
SSH CommandПолная команда, готовая к вставке в ваш терминал
IPv4 AddressОбщедоступный IPv4 адрес сервера
IPv6 AddressIPv6 адрес сервера, отображается при наличии

Карточка Connection на облачном сервере в KPanel

Если карточка показывает "IP address will appear here once provisioning is complete", сервер все еще строится. Подготовка облачного сервера занимает примерно шестьдесят секунд, и страница обновляется после завершения.

Подключение с использованием SSH ключа

Если вы вставили публичный ключ в поле SSH Public Key при заказе сервера, аутентификация с использованием ключа уже настроена и нет пароля для ввода.

  1. Скопируйте SSH Command из карточки Connection.
  2. Вставьте его в ваш терминал и нажмите Enter.
ssh root@203.0.113.1

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

ssh -i ~/.ssh/my-kapsule-key root@203.0.113.1

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

Настройка ключа в первый раз

Создайте пару ключей на вашей машине, а не на сервере:

ssh-keygen -t ed25519 -C "your-email@example.com"

Нажмите Enter, чтобы принять расположение по умолчанию, и установите парольную фразу при появлении запроса. Теперь у вас есть два файла:

  • ~/.ssh/id_ed25519 является вашим приватным ключом. Он никогда не покидает вашу машину, и вы никогда не вставляете его никуда.
  • ~/.ssh/id_ed25519.pub является вашим публичным ключом. Это тот, который вы предоставляете серверам.

Выведите публичный ключ и скопируйте всю одиночную строку, включая префикс ssh-ed25519 и завершающий комментарий:

cat ~/.ssh/id_ed25519.pub

При заказе сервера вставьте эту строку в поле SSH Public Key. Собственное описание поля говорит об этом четко: "Paste your public key to enable key-based authentication. If left blank, a root password will be emailed to you."

Никогда не вставляйте содержимое файла без .pub в конце. Это ваш приватный ключ, и любой, кто его имеет, может войти как вы на каждый сервер, которому он доверяет. Если вы когда-либо случайно поделитесь приватным ключом, создайте новую пару и замените публичный ключ везде немедленно.

Чтобы добавить ключ на уже имеющийся сервер, подключитесь любым способом, который доступен сегодня, и добавьте строку публичного ключа в /root/.ssh/authorized_keys.

Подключение с использованием пароля

Если вы оставили поле SSH Public Key пустым во время заказа, root пароль будет отправлен вам по электронной почте после подготовки сервера.

  1. Скопируйте SSH Command из карточки Connection.
  2. Вставьте его в ваш терминал и нажмите Enter.
  3. Введите полученный по электронной почте root пароль при появлении запроса.

Измените этот пароль как можно скорее после входа, используя passwd, и добавьте SSH ключ в то же время. Пароль, отправленный по электронной почте, прошел через большее расстояние, чем должны пройти учетные данные.

Консоль браузера

Консоль браузера предоставляет вам терминал внутри KPanel без SSH клиента и без прохождения через порт 22. Это инструмент для момента, когда ваш собственный доступ является тем, что сломалось.

  1. Откройте страницу сервера и нажмите Browser console в кнопках действия или перейдите на /cloud-servers/<server-id>/console.
  2. Нажмите Start console. KPanel запускает терминал на сервере через HTTPS с одноразовыми учетными данными.
  3. Username и Password отображаются на странице с кнопкой Copy credentials. Терминал открывается в самой странице, и ваш браузер может запросить у вас эти учетные данные.
  4. Работайте как в любой другой оболочке.

Сеансы консоли автоматически прекращаются после 30 минут. Запуск нового сеанса выдает свежие учетные данные, поэтому ничто не остается прослушивающим после того, как вы закончите. Консоль браузера также требует настроенного домена с HTTPS на сервере, что означает приложение, установленное через панель. На голом сервере консоль сообщит об этом, а не отключится молча.

Используйте консоль, чтобы отменить правило брандмауэра, которое вас заблокировало, сбросить пароль или восстановить конфигурацию sshd. После того как вы вернетесь в обычное подключение SSH, она больше не понадобится.

Сохранение безопасности доступа SSH

Порт 22 всегда открыт на брандмауэре сервера KapsuleHost по умолчанию, поэтому изменение брандмауэра никогда не сможет полностью лишить вас доступа к машине.

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

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

Cloud Server Firewall and Security Management охватывает оба вопроса, а также пользовательские правила для портов, которые требует ваше приложение.

Устранение неполадок

"Connection refused." Ничего не прослушивает. Проверьте, что сервер показывает Running в KPanel, включите его, если он отключен, и используйте консоль браузера, чтобы проверить, что sshd работает.

"Connection timed out." Трафик не поступает. Убедитесь, что вы используете IPv4 адрес из карточки Connection, и проверьте, блокирует ли ваша собственная сеть исходящий порт 22. Корпоративная или кампусная сеть иногда это делает.

"Permission denied (publickey)." Сервер не распознает ваш ключ. Убедитесь, что вы вставили строку .pub полностью и без изменений, и что ваш клиент предлагает соответствующий приватный ключ. Добавьте -v к команде ssh, чтобы увидеть, какие ключи она попыталась.

"Permission denied, please try again" на пароле. Пароль неверен или аутентификация по паролю отключена, потому что вы предоставили ключ. Используйте ключ или консоль браузера.

"REMOTE HOST IDENTIFICATION HAS CHANGED." Хостовый ключ сервера отличается от того, который запомнил ваш клиент. Это ожидается после восстановления, потому что операционная система была переустановлена. Удалите устаревшую запись для этого IP адреса из файла known_hosts и подключитесь заново. Если вы ничего не восстанавливали, остановитесь и свяжитесь с нами перед подключением.

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

Если ни один из вышеперечисленных вариантов не дает вам доступ к оболочке, отправьте письмо на support@kapsulehost.com с указанием имени сервера, адреса, с которого вы подключаетесь, и точного текста ошибки.

Это было полезно?

Вы ИИ? Читайте эту страницу в Markdown

Похожие статьи

Обзор облачных серверовОблачные серверы представляют собой виртуальные машины, которые вы развёртываете за несколько минут, масштабируете при изменении нагрузки и управляете из KPanel…Обзор выделенных серверовВыделенный сервер дает вам целую физическую машину, которой никто другой не делится: ваши ЦП, память и диски используются только вами.…Обзор серверов храненияЧто такое сервер хранения Сервер хранения, это выделенная физическая машина, конструкция которой намеренно асимметрична: скромный процессор, большое количество…Обзор серверов GPUGPU серверы, это однопользовательские bare-metal машины с ускорителями NVIDIA, предназначенные для обучения AI, инференса и рендеринга.…

Всё ещё нужна помощь?

Спросите Kora, она знает ваш аккаунт, или свяжитесь с нашей командой.

Связаться с намиНаписать в поддержку