Поиск по сайту:
Нехорошо многовластье: один да будет властитель (Аристотель).

Используйте файл конфигурации 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 * в конце файла? Вы можете использовать эту запись для добавления параметра, общего для всех профилей, если этот параметр явно не был упомянут для профиля.

Читать  Как заменить все после шаблона с помощью команды `sed`

Поэтому, если мы попытаемся использовать профиль 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 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

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


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

Спасибо!

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