Приветствую на fast-wolker.ru! SSH  подключение – универсальное средство удаленного управления компьютером LINUX  и без него не обойтись. Оно применяется как само по себе (копирование файлов, настройка файлов конфигурации, выполнение сценариев, запуск терминала) так и служит базой для применения других программ для удаленного управления и подключений.

Подключение по SSH очень часто применяется в самых разных ситуациях. Потому как основное его назначение – обеспечить безопасное подключение. Грамотная настройка SSH позволит другим программам работать по безопасному протоколу.

После установки SSH сервера и успешного подключения уже можно работать удаленно. Запустим SSH

 ssh@имя_пользователя удаленного компьютера ай_ пи_ адрес удаленного компьютера 

Напрмер, для копирования, редактирования файлов можно запустить файловый менеджер Midhight Commander с правави суперпользователя удаленного компьютера:

 sudo mc 

Хоть какая -никакая графика, и  легкие операции с файлами (вплоть до установки прав и запуска на исполнение):

Старый добрый файловый менеджер  Far Manager в линуксе по прежнему актуален и вполне способен облегчить работу с файлами и экономить время.

После завершения операции закрываем MC командой exit и продолжаем ввод команд.

Как пользоваться SSH ключом для подключения без пароля по сертификату?

Очень полезной опцией является подключение по ключу. Суть – на компьютере-клиенте генерируется  сертификат безопасности, открытую часть которого будем копировать на сервер.

После чего подключение к серверу по SSH будет происходить без ввода пароля. Сначала нужно сгенерировать ключ на компьютере-клиенте. Закрываем  текущее подключение SSH командой:

 exit 

и генерим  сертификат RSA командой:

 ssh-keygen -t rs 

или

 ssh-keygen -t ds 
  • ключи (открытый и закрытый) будет сохранен по умолчанию в папке ./SSH текущего пользователя с именем по умолчанию.

  • имя ключа не меняем  СРАЗУ ЖМЕМ ENTER;
  • подтверждаем пароль ключа (пустой – жмем ENTER;
  • сгенерируется случайный ключ и будет выведен отпечаток;

Теперь нужно скопировать открытую часть на наш сервер. Но сначала нужно создать для него каталог SSH, тоже в корневой папке текущего пользователя. Закрываем сессию SSH и вводим команду:

 ssh superuser@IPадрес mkdir .ssh 
  • где mkdir – команда на создание каталога;
  • .ssh создаваемая папка.

Далее, добавим ключ на сервер :

 ssh-copy-id -i ~/.ssh/admin.pub superuser@ай пи адрес 

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

… в который добавился наш ключ.

Как скопировать файл по SSH на Астра линукс?

Следующий навык копирование файла с компьютера клиента на сервер. Копирование файла осуществляется утилитой scp входящей в состав SSH (предварительно закрываем соединение SSH):

 scp /home/superuser/.ssh/копируемый файл superuser@ай-пи адрес удаленного компьютера:.ssh 
  • где /home/superuser/.ssh/копируемый файл путь к файлу  на компьютере-клиенте;
  • :.ssh  папка назначения, которую мы создали на сервере SSH или другая.

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

Можно копировать файлы как на удаленный компьютер  так и с него, при этом залогинившись к нему или при остуствии соединения:

Для копирования файла с B на A когда подключены к B:

 scp /путь к файлу имя пользователя@а:/путь к файлу 

Копирование файла с B на A когда подключены к A:

 scp имяпользователя@b:/путь к файлу /путь к файлу 

Как запустить графическое приложение через SSH в Astra Linux?

Для редактирования файлов  например можно использовать тот же встроенный Midnight Commander. Или использовать встроенный текстовый редактор Nano. Но через SSH гораздо привычнее и удобнее использовать приложения, работающие в графической среде X11.

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

 kate 

Файловый менеджер для рабочего стола запускаем:

 fly-fm 

Но не все приложения таким образом удобно запускать. Хорошо бы вывести рабочий стол сервера на  на экран клиентской машины. Об этом будет материал в другой статье.

Передача файлов через SSH в Астра Линукс

Одной из замечательных фишек Линукс является “навык” перенаправления данных вводимых с клавиатуры в текстовый файл. Или чтение содержимого  файла (или каталогов) и передача  в другой файл, на другом компьютере, или экран монитора. По сути это не копирование файла а создание потока данных и сохранение их в нужном месте под именем.

Делается это с помощью команды cat, По умолчанию она выводит данные на экран, но знаками > (больше) или < (меньше) мы указываем направление потока. Прочитаем файл и передадим его содержимое на удаленный компьютер:

 cat /файл/на/локальной/машине | ssh имяпользоватлея@IPадрес  “cat > /файл/на/удаленной/машине” 

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

И обратная ситуация – нужно передать файл с удаленной машины на локальную:

ssh имяпользователя@айпиадрес “cat > /путь/к/файлу/на/удаленной/машине” < /путь/к/локальному/файлу

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

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

Ошибка X11 forwarding request failed on channel 0 при подключении к SSH серверу – как исправить?

Проверить настройки файла sshd.config по пути /etc/ssh/sshd.config

Строка X11UserLocalHost no должна быть раскоментирована и иметь значение “no”.

После сохранения файла перезапускаем службу SSH на сервере:

 sudo service sshd restart 

Аналогичные настройки нужно проверить и на клиентской машине.Закрыть сессию и перезайти в SSH заново.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.