ssh-агент

Программа, используемая для соединений Secure Shell

ssh-агент
Разработчик(и)Проект OpenBSD
Репозиторийgithub.com/openssh/openssh-portable/
Написано вС
Операционная системаUnix , Unix-подобный , Microsoft Windows
ТипКоманда
ЛицензияBSD , ISC , общественное достояние
Веб-сайтwww.openssh.com

Secure Shell (SSH) — это протокол, позволяющий осуществлять безопасный удаленный вход в компьютер в сети с использованием криптографии с открытым ключом . Клиентские программы SSH (например, sshOpenSSH ) обычно работают в течение сеанса удаленного входа и настроены на поиск закрытого ключа пользователя в файле в домашнем каталоге пользователя (например, .ssh/id_rsa). Для дополнительной безопасности (например, от злоумышленника, который может прочитать любой файл в локальной файловой системе) обычно хранят закрытый ключ в зашифрованном виде, где ключ шифрования вычисляется из парольной фразы , которую запомнил пользователь. Поскольку ввод парольной фразы может быть утомительным, многие пользователи предпочли бы вводить ее только один раз за сеанс локального входа. Наиболее безопасное место для хранения незашифрованного ключа — это память программы, а в операционных системах типа Unix память обычно связана с процессом . Обычный клиентский процесс SSH не может использоваться для хранения незашифрованного ключа, поскольку клиентские процессы SSH существуют только в течение сеанса удаленного входа. Поэтому пользователи запускают программу под названием ssh-agent , которая работает дольше, чем длится локальный сеанс входа в систему, хранит незашифрованные ключи в памяти и взаимодействует с клиентами SSH с помощью сокета домена Unix .

Проблемы безопасности

ssh-agentсоздает сокет, а затем проверяет соединения из ssh. Каждый, кто может подключиться к этому сокету, также имеет доступ к ssh-agent. Разрешения устанавливаются как в обычной системе Linux или Unix . При запуске агент создает новый каталог в /tmpс ограничительными разрешениями. Сокет находится в этом каталоге.

Существует процедура, которая может помешать вредоносному ПО использовать ssh-agentсокет. Если эта ssh-add -cопция установлена ​​при импорте ключей в ssh-agent, то агент запрашивает подтверждение у пользователя с помощью программы, указанной SSH_ASKPASS переменной среды , всякий раз, когда sshпытается подключиться.

Ssh-агенты могут быть "перенаправлены" на сервер, к которому вы подключаетесь, делая их ключи доступными и там, для других подключений. В локальной системе важно, чтобы пользователь root был надежным, поскольку пользователь root может, помимо прочего, просто прочитать файл ключа напрямую. В удаленной системе, если ssh-agentсоединение перенаправлено, также важно, чтобы пользователь root на другом конце был надежным, поскольку он может получить доступ к сокету агента на удаленной системе (но не к ключу, который остается локальным).

Реализации

Существует множество различных программ, которые выполняют ту же функциональность, что и OpenSSH ssh-agent, некоторые из них имеют совершенно другой пользовательский интерфейс. PuTTY , например, использует графический пользовательский интерфейс в своем встроенном Pageant ssh-agent.

Существуют инструменты, предназначенные для предоставления функциональности key-agent как для симметричных, так и для асимметричных ключей; они обычно предоставляют функциональность ssh-agent как один из своих интерфейсов приложений. Примерами являются GNOME Keyring и KWallet .

Некоторые монолитные клиенты SSH включают возможность запоминания паролей SSH между сеансами. Примеры включают: SecureCRT .

Apple macOS

В операционной системе macOS ssh-agent был интегрирован с версии Leopard 10.5 в 2007 году. Ранее были доступны сторонние реализации ssh-agent с открытым исходным кодом. [1]

Майкрософт Виндоус

Клиентские и серверные программы на основе OpenSSH включены в Windows 10 , начиная с версии 1803. Клиент SSH и ключевой агент включены и доступны по умолчанию, а сервер SSH является дополнительной функцией по запросу. [2] [3]

Ссылки

  1. ^ Дрибин, Дэйв (21 августа 2007 г.). «Предупреждение о SSHKeychain». Блог Дэйва Дрибина .
  2. ^ «Что нового в командной строке в Windows 10 версии 1803». 8 марта 2018 г.
  3. ^ «Использование OpenSSH Beta в Windows 10 Fall Creators Update и Windows Server 1709». 15 декабря 2017 г.
  • Страница руководства ssh-agent из релиза OpenSSH (часть проекта OpenBSD ).
  • Альтернативный сторонний интерфейс ssh-agent для Mac OS X
  • «Использование ssh-agent с SSH»
  • Иллюстрированное руководство по переадресации SSH-агента
  • аспекты безопасности
Взято с "https://en.wikipedia.org/w/index.php?title=Ssh-agent&oldid=1215779839"