Обзор
ssh-agent безопасно хранит приватные ключи SSH и предоставляет их SSH-клиентам (ssh) по мере необходимости, упрощая процесс аутентификации. После ввода парольной фразы ее не нужно вводить повторно, пока агент запущен, что очень удобно. Это особенно полезно в средах, где часто используется множество SSH-соединений.
Основные функции
- Управление и хранение SSH-ключей
- Предотвращение повторного ввода парольной фразы
- Безопасная связь с SSH-клиентами
- Сохранение ключей на основе сессии
Основные опции
ssh-agent обычно работает в фоновом режиме и устанавливает переменные окружения оболочки, чтобы SSH-клиенты могли найти агент.
Запуск и управление
Сгенерированная команда:
Комбинируйте команды.
Описание:
`ssh-agent` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
Запуск ssh-agent (bash/sh)
eval "$(ssh-agent -s)"
Запускает ssh-agent в фоновом режиме и устанавливает необходимые переменные окружения для текущей сессии оболочки.
Добавление SSH-ключа
ssh-add ~/.ssh/id_rsa
Добавляет приватный ключ в ssh-agent. Если у ключа есть парольная фраза, она будет запрошена один раз.
Завершение работы агента
ssh-agent -k
Завершает работу процесса ssh-agent, подключенного к текущей сессии оболочки.
Запуск агента с сроком действия ключа 1 час
eval "$(ssh-agent -s -t 3600)"
Запускает агент, устанавливая максимальный срок действия для всех добавляемых ключей в 1 час (3600 секунд).
Проверка списка ключей, загруженных в текущий агент
ssh-add -l
Проверяет список SSH-ключей, которые в данный момент загружены в ssh-agent.
Советы и рекомендации
Советы по эффективному использованию ssh-agent и обеспечению безопасности.
Советы
- **Автоматический запуск**: Вы можете добавить `eval "$(ssh-agent -s)"` в файл `.bashrc` или `.zshrc`, чтобы агент запускался автоматически при старте оболочки. Рекомендуется добавить логику для проверки, запущен ли уже агент.
- **Проверка списка ключей**: Используйте команду `ssh-add -l`, чтобы просмотреть список SSH-ключей, загруженных в текущий ssh-agent.
- **Удаление ключа**: Вы можете удалить конкретный ключ с помощью `ssh-add -d ~/.ssh/id_rsa` или удалить все ключи с помощью `ssh-add -D`.
Рекомендации
- **Перенаправление агента**: При использовании опции `ssh -A` для перенаправления агента, удаленный сервер получает доступ к вашему локальному агенту. Это удобно, но при компрометации удаленного сервера ваши локальные ключи могут быть раскрыты, поэтому используйте эту опцию только на доверенных серверах.
- **Срок действия агента**: Вы можете установить максимальный срок действия ключа с помощью опции `ssh-agent -t`. В целях безопасности не рекомендуется устанавливать слишком долгий срок действия.