Поиск по сайту:
Черная королева: Если не знаешь, что сказать, говори по-французски (Л. Кэрролл).

Используйте файл конфигурации SSH для управления SSH-подключениями к различным удаленным серверам

10.05.2020
Используйте файл конфигурации SSH для управления SSH-подключениями к различным удаленным серверам

Если вы даже немного знакомы с SSH, вы знаете, что можете использовать его для подключения к удаленным системам Linux.

Использовать SSH для подключения к удаленной системе очень просто. Все, что вам нужно сделать, это использовать такую команду:

ssh user@server_IP

 

Эта команда подключается к стандартному SSH-порту 22. Вы также можете указать порт, если хотите.

Теперь все просто и понятно, если у вас только один сервер. Даже если вы не помните IP-адрес сервера, вы можете выполнить обратный поиск в истории с помощью известного сочетания клавиш терминала Ctrl + R и найти команду SSH, которую вы использовали в прошлом.

Но все становится сложнее, когда у вас есть несколько серверов для управления. допустим у вас есть около десяти серверов, к которым вы время от времени подключаюсь. Некоторые из них являются производственными серверами, а некоторые — тестовыми.

Теперь отслеживать эти серверы нелегко. Даже если вы сможете найти команды SSH из истории, трудно угадать, какой IP принадлежит какому серверу.

Конечно, мы можем через панели получить IP-адрес или сохранить список в моей локальной системе.

Лучше и проще использовать конфигурационный файл SSH.

 

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

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

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

Читать  Необычные способы использования переменных внутри сценариев Bash

Позвольте нам показать вам, как его использовать.

 

Шаг 1: Создайте файл конфигурации SSH

При установке SSH у вас будет автоматически создан каталог ~/.ssh. Он будет содержать ваш открытый ключ, личный ключ и файл known_hosts. Ваша конфигурация также хранится здесь.

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

touch ~/.ssh/config

 

Шаг 2: Добавьте профиль SSH в файл конфигурации

Теперь, когда у вас есть файл конфигурации SSH, вы можете редактировать его с помощью Vim или Nano. Позвольте нам показать вам пример синтаксиса, которому вы должны следовать.

Допустим, вы подключаетесь к серверу с IP 213.159.210.151. Ваше имя пользователя -andreyex, а сервер используется для размещения вашего сайта. Чтобы повысить безопасность SSH, вы используете порт 1500 вместо стандартного порта SSH 22.

Вы можете добавить всю эту информацию следующим образом в ваш файл ~/.ssh/config:

Host website
        Hostname 213.159.210.151
        User andreyex
        Port 1500

 

Просто сохраните информацию в файле. Нет необходимости перезапускать какой-либо сервис.

Теперь, вместо того, чтобы писать длинную команду вроде этого:

ssh andreyex@213.159.210.151 -p 1500

 

Вы можете просто использовать эту команду (также работает завершение табуляции):

ssh website

 

Когда вы запускаете указанную выше команду, ssh ищет хост с именем website в ~/.ssh/config. Если он находит хост с таким именем, он получает всю информацию и использует его для установления SSH-соединения.

Читать  Как проверить среднюю нагрузку в Linux

Вы можете спросить о нескольких вещах, поэтому мы упомянем это здесь:

  • При вводе информации о хосте нет никаких ограничений на отступы пробела или табуляции. Отступы пробела или табуляции используются для облегчения понимания файла конфигурации.
  • Имя хоста может быть IP-адресом сервера или именем хоста, которое может быть разрешено в вашей сети.
  • Все параметры, такие как имя хоста, пользователь и порт не являются обязательными. Однако мы лично советуем сохранить хотя бы имя хоста, потому что это то, что вам нужно (и вы забываете) большую часть времени.
  • Если ваш конфигурационный файл SSH настроен неправильно, это приведет к ошибке при попытке использовать его для подключения SSH.
  • Вы не можете сохранить пароли в конфигурации SSH. Мы советуем добавить ваш публичный ключ SSH на сервер для легкого доступа.

 

Шаг 3: Добавление нескольких профилей в конфигурационный файл SSH

Предыдущий шаг дал вам представление о том, как добавить профиль SSH. Давайте перейдем к следующему шагу, добавив в него несколько профилей.

Вот как выглядит файл конфигурации SSH:

Host website
        Hostname 213.159.210.151
        User andreyex
        Port 1500
Host forum-server
        Hostname 275.128.172.47
        User andreyex

Host main-server
        Hostname 275.128.172.49

Host common-test-server
        Hostname test-server

Host *
        User root

 

На этот раз мы добавили четыре различных профиля SSH.

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

Читать  Как использовать команду readarray для чтения 2D-массива в Bash

Поэтому, если мы попытаемся использовать профиль SSH основного сервера, он автоматически получит root-пользователя.

ssh main-server = ssh root@275.128.172.49

 

Порядок настройки SSH

Конфигурация ssh имеет следующий порядок:

  • Параметры командной строки
  • Файл конфигурации пользователя (~/.ssh/config)
  • Общесистемный файл конфигурации (/etc/ssh/ssh_config)

Это означает, что первый приоритет отдается введенной вами команде, а затем она просматривается в ~/.ssh/config, а затем в/etc/ssh/ssh_config.

Итак, если вы хотите переопределить профиль, вы можете сделать это, используя опцию -o в команде ssh.

Например, если мы используем эту команду:

ssh -o "User=destroyer" website

 

Это займет пользователя destroyer вместо пользователя andreyex, как определено в ~/.ssh/config (на предыдущем шаге).

 

Конфигурация SSH намного больше

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

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

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

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
Мы надеемся, что вы сделали свой собственный сайт. Теперь все,…

Спасибо!

Теперь редакторы в курсе.