Использование SSH для подключения к удаленному серверу Ubuntu
Что такое SSH?
SSH – один из важнейших инструментов системного администрирования.
SSH, или Secure Shell (безопасная оболочка) – это протокол, который используется для безопасного подключения к удаленным системам. Это самый распространенный способ подключения к удаленным Linux- и Unix-подобным серверам (например, к VPS).
В данном руководстве речь пойдет об использовании SSH для подключения к удаленной системе.
Базовый синтаксис
Для подключения к удаленной системе с помощью SSH в Linux существует одноименный инструмент – ssh.
Базовый вид команды:
ssh удаленный_хост
В данном примере фраза «удаленный_хост» заменяет IP-адрес или доменное имя хоста, к которому нужно подключиться.
Эта команда предполагает, что имя пользователя на удаленной и локальной системах совпадают.
Если же на удаленной системе установлено другое имя пользователя, его нужно указать с помощью следующего синтаксиса:
ssh имя_пользователя@удаленный_хост
После подключения к серверу необходимо указать пароль, чтобы пройти авторизацию.
Процедура создания ключей, которые можно использовать вместо пароля, будет описана позже.
Чтобы вернуться в локальную сессию, просто наберите:
exit
Как работает SSH?
SSH работает путем подключения клиентской программы к серверу ssh.
В приведенных выше командах ssh является клиентской программой. Сервер ssh уже запущен на указанном удаленном хосте.
Если сервер ssh еще не запущен на VPS, нажмите кнопку «Console Access», которая находится на странице сервера. Это выведет экран авторизации. Для входа используйте свои учетные данные.
В целом, процесс запуска сервера ssh зависит от используемого дистрибутива Linux.
В Ubuntu для запуска сервера ssh на VPS нужно ввести:
sudo service sshd start
Настройка SSH
При изменении настроек SSH изменяются и настройки ssh-сервера.
В Ubuntu главный конфигурационный файл SSH находится в /etc/ssh/sshd_config.
Создайте резервную копию текущей версии этого файла перед его редактированием:
sudo cp /etc/ssh/sshd_config{,.bak}
Откройте его с помощью текстового редактора:
sudo nano /etc/ssh/sshd_config
Некоторые настройки требуют особенного внимания, например:
Port 22
Данная строка определяет, какой порт ssh-сервер будет прослушивать для соединений. По умолчанию это порт 22.
Желательно использовать нестандартный порт, чтобы защитить сервер от случайных сканирований портов. Позже будет показано, как подключиться к новому порту.
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
Строки HostKey указывают, где находятся ключи хоста (подробнее о ключах хоста позже).
SyslogFacility
LogLevel INFO
Данные строки содержат настройки журналирования и определяют уровень журнала.
При возникновении каких-либо проблем с SSH рекомендуется повысить уровень журнала (что увеличивает количество записываемых данных).
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
Данные параметры содержат некоторую регистрационную информацию.
LoginGraceTime указывает количество секунд, на протяжении которых необходимо поддерживать соединение без авторизации.
Примечание: в данной строке установите немного больше времени, чем обычно необходимо для регистрации.
PermitRootLogin определяет возможность входа в систему как пользователь root.
В большинстве случаев после создания пользователя, имеющего повышенные привилегии (su или sudo) и возможность подключаться через ssh, в данной строке рекомендуется установить «no»
strictModes – это защитное устройство, которое откажет во входе, если файлы аутентификации доступны для чтения всем.
Это предотвращает попытки входа, если файлы конфигурации не защищены.
X11Forwarding yes
X11DisplayOffset 10
Данные параметры настраивают функцию под названием X11 Forwarding, что позволяет просматривать графический пользовательский интерфейс (GUI) удаленной системы на локальной системе.
Этот параметр должен быть активирован и на локальной, и на удаленной машине; для использования функции необходимо передать клиента и опцию –X.
Отредактировав данный файл, не забудьте перезапустить ssh-сервер, чтобы активировать внесенные изменения:
sudo service sshd restart
Кроме того, внесенные изменения необходимо тщательно протестировать, чтобы убедиться, что все работает должным образом.
Рекомендуется открыть несколько сессий при внесении изменений. Это позволит вернуть конфигурации в случае необходимости.
Столкнувшись с проблемами, помните, что войти можно также с помощью кнопки «Console Access».
Вход с помощью ключей SSH
Зачастую аутентификация на основе ключей намного надежнее, чем вход в удаленную систему при помощи пароля.
Как работает аутентификация на основе ключей?
Аутентификация на основе ключей подразумевает создание пары ключей – закрытого и открытого.
Закрытый ключ находится на клиентской машине, должен быть защищен и храниться в секрете.
Открытый ключ можно давать кому угодно и разместить на любом сервере, к которому нужно получить доступ.
При попытке подключиться с помощью пары ключей сервер использует открытый ключ, чтобы создать сообщение для клиентского компьютера, которое можно прочитать только с помощью закрытого ключа.
Затем клиентский компьютер посылает серверу соответствующий ответ, благодаря чему сервер понимает, что клиент является законным.
После настройки ключей весь этот процесс осуществляется автоматически в фоновом режиме.
Создание SSH-ключей
SSH-ключи нужно создать на компьютере, с которого нужно установить подключение (как правило, это локальный компьютер).
В командной строке наберите:
ssh-keygen -t rsa
Чтобы принять настройки по умолчанию, нажмите Enter. Ключи будут созданы в ~/.ssh/id_rsa.pub и ~/.ssh/id_rsa.
Перейдите в каталог .ssh, набрав:
cd ~/.ssh
Обратите внимание на права на файлы:
ls -l
-rw-r--r-- 1 demo demo 807 Sep 9 22:15 authorized_keys
-rw------- 1 demo demo 1679 Sep 9 23:13 id_rsa
-rw-r--r-- 1 demo demo 396 Sep 9 23:13 id_rsa.pub
Как можно видеть, права на чтение и изменение файла id_rsa есть только у владельца. Такие привилегии необходимы, чтобы сохранить ключ в секрете.
В то же время, файл id_rsa.pub можно использовать совместно, потому он имеет соответствующие привилегии.
Передача открытого ключа на сервер
Следующая команда скопирует открытый ключ на удаленный сервер:
ssh-copy-id удаленный_хост
Это откроет сессию SSH, для входа в которую нужно ввести пароль.
После введения пароля открытый ключ будет скопирован на сервер, что позволит в следующий раз войти в систему без пароля.
Клиентские настройки SSH
При подключении по SSH можно использовать ряд флагов.
Некоторые из них нужны для установки соответствующих параметров в файле ssh удаленного хоста.
Например, если номер порта в конфигурациях ssh на локальном хосте был изменен, нужно установить соответствующий порт на стороне клиента, набрав:
ssh -p номер_порта удаленный_хост
Если на удаленной системе нужно выполнить какую-либо команду, ее можно указать следующим образом:
ssh удаленный_хост нужная_команда
Эта строка установит соединение с удаленной машиной и выполнит указанную команду.
Как уже было сказано, если функция X11 forwarding активирована на обоих компьютерах, ее можно использовать, набрав:
ssh -X удаленный_хост
При наличии на локальной системе всех соответствующих инструментов программы с графическим интерфейсом, используемые на удаленной системе, откроются на локальном компьютере.
Итоги
Научиться работать с SSH очень важно хотя бы потому, что это необходимо для выполнения самых базовых задач.
Постоянно используя SSH, можно не только защитить сервер, но и стать продвинутым пользователем, что значительно упростит жизнь. Протокол SSH остается популярным, потому что он безопасен, надежен и полезен в различных ситуациях.
Источник: https://www.8host.com/blog/ispolzovanie-ssh-dlya-podklyucheniya-k-udalennomu-serveru-ubuntu/


Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2025-04-08 » Горшочек, рисуй: 10 бесплатных сервисов для генерации картинок
- 2025-04-08 » SEO-продвижение в 2025 году: 15 трендов, без которых ТОП не светит
- 2025-03-14 » SPF-запись
- 2025-03-07 » SEO на маркетплейсах: как оптимизировать карточку товара для поисковой выдачи
- 2025-02-18 » Топ-10 бесплатных нейросетей для генерации изображений: лучшие ии генераторы 2024 года
- 2025-02-11 » Критическая уязвимость в 1С-Битрикс
- 2025-02-11 » Google Search Console: руководство для начинающих вебмастеров
- 2025-02-11 » Методы измерения результативности рекламных кампаний: плюсы и минусы
- 2025-02-11 » Тренды SEO в 2025 году
- 2025-02-10 » Свой Google в локалке. Ищем иголку в стоге сена
- 2025-01-29 » SEO — это комплексная работа. Шесть главных факторов ранжирования сайтов
- 2025-01-29 » Гайд для главной страницы e-commerce сайта: как оформить, чтобы повысить конверсию
- 2025-01-20 » Krea AI выпустила бесплатную функцию преобразования изображений в 3D-объекты — их можно вращать и вписывать в фотографии
- 2025-01-19 » Отзывы на Яндекс Картах: как пройти модерацию
- 2025-01-15 » Топ-6 лучших российских нейросетей, в которых можно генерировать тексты и изображения бесплатно и без VPN
- 2025-01-14 » 15 бесплатных способов узнать, чем интересуется ваша аудитория
- 2025-01-11 » Бездепозитные бонусы в казино за регистрацию с выводом: особенности и возможности получения
- 2025-01-09 » Новая модель LAM способна выполнять задачи в Word
- 2024-12-26 » Универсальный промпт для нейросети: как выжать максимум из ChatGPT, YandexGPT, Gemini, Claude в 2025
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
"Я думаю, что много людей первоначально думало, что "e" в электронной коммерции было более важным, чем бизнес." |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.
Или напишите нам в WhatsApp
Или напишите нам в WhatsApp