Цілісно-криптографічна оболонка SSH

SSH (Secure Shell) — це криптографічний мережевий протокол, який забезпечує захищене віддалене керування операційною системою та передачу даних між мережевими пристроями через незахищену мережу. Зазвичай використовується для віддаленого доступу до командного рядка операційної системи, а також передачі файлів з використанням SCP або SFTP. SSH забезпечує шифрування даних, аутентифікацію та захист від атак перехоплення даних.

Аутентификация

Установка ssh-соединения использует аутентификацию одним из двух способов: с помощью классической пары user/password или с помощью пары ключей ассиметричного шифрования.

Пара ssh-ключей

Ассиметричное шифрование SSH использует два связанных кода. Первый используется  для кодирования и называется "открытый ключ", второй используется для декодирования и называется "закрытый ключ". Ключи представляются парой одноименных файлов (имя может быть произвольным). Файл с расширением .pub содержит строку открытого ключа, который также называется "публичным", потому что не является конфиденциальным и предназначен для передачи и использования на стороне клиента. Файл без расширения содержит закрытый ключ, который используется на стороне сервера.

Генерацию пары ключей можно выполнить с помощью утилиты ssh-keygen. Для генерации утилита запрашивает name для файлов и passphrase, который защищает закрытый ключ и требуется для разблокировки закрытого ключа.

Клиенти

Утилита ssh

Утилита командной строки ssh в Windows и Linux работает идентично:

//

Если ключи сгенерированы, публичный ключ установлен на хосте и в файле %USERPROFILE%.sshconfig заполнен раздел этого хоста, то подключение можно выполнить:

//

//

!!! увеличениe таймаута простоя (idle timeout) в файле /etc/ssh/ssh_config значением параметра ClientAliveInterval со стороны клиента нельзя.

//

!!! Xdebug стучится в порт, который слушает IDE. Если мы хотим отлаживать удаленный сервер и сидим за NATом, то наши порты недоступны. Оптимальный вариант — перенаправление удаленного порта на локальный с помощью ssh. Для работы под windows нужно установить Cygwin с пакетом ssh.
$ ssh -R 9000:127.0.0.1:9000 user@server

Putty

//www.putty.org
!!! Самый известный SSH-клиент для Windows. Пожалуй, единственный, что на слуху у всех вебмастеров. PuTTY отличается от конкурентов логичным интерфейсом вкупе с богатым арсеналом возможностей, включая настройку прокси-серверов и сохранение параметров подключения.

Інши

  • KiTTY базируется на PuTTY, но обладает массой преимуществ...
  • MobaXterm комфортный интерфейс,  дополнительные функции, браузер файлов, встроенный XServer (графический интерфейс на удаленном компьютере), плагины, portable-версия,  условно-бесплатный - отличительные от PuTTY функции доступны только за $69.
  • Solar-PUTTY (SolarWinds) современный интерфейс, платная $99.
  • SmarTTY
  • Xshell позволяет создавать скрипты управления сессиями.

 

SCP

SCP (secure copy) протокол копирования файлов между компьютерами, использующий, в отличие от RCP, в качестве транспорта не RSH, а шифрованный SSH.

Одноименная утилита SCP реализует протокол SCP в качестве сервисного клиента. Используется для безопасного копирования. Часто входит в состав пакета OpenSSH. Работает сходно утилите sftp.

Джерела

SSH //wikipedia.org
 Лучшие SSH-клиенты для Windows, Linux и macOS //timeweb.com

 Connect using SSH //learn.microsoft.com/en-us

Leave a Reply