Чтобы включить автоматическое использование password-free SSH-ключа, необходимо убедиться, что ssh-agent работает корректно и что ключ добавлен к агенту. Ниже приведены шаги, которые следует выполнить для устранения проблемы:
1. **Запустите `ssh-agent`**:
Если вы работаете в терминале, попробуйте выполнить команду:
```bash
eval "$(ssh-agent -s)"
```
Это запустит ssh-agent и экспортирует необходимые переменные окружения.
2. **Добавьте ключ к `ssh-agent`**:
После запуска `ssh-agent`, добавьте ваш ключ с помощью команды:
```bash
ssh-add ~/.ssh/id_rsa
```
Вас попросят ввести парольную фразу для ключа, но как только ключ будет добавлен, он сможет хранить данную информацию в течение текущей сессии терминала.
3. **Убедитесь, что `ssh-agent` будет запущен автоматически**:
Чтобы ssh-agent запускался automáticamente при каждом входе в систему, добавьте следующую строку в ваш файл конфигурации оболочки (например, `~/.bashrc`, `~/.bash_profile`, `~/.zshrc` или аналогичный):
```bash
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
```
Не забудьте перезапустить терминал или загрузить изменения, выполнив:
```bash
source ~/.bashrc # или другой файл конфигурации, который вы изменили
```
4. **Проверьте ваш `~/.ssh/config`**:
Убедитесь, что в файле `~/.ssh/config` у вас действительно прописаны необходимые параметры. Он может выглядеть так:
```bash
Host *
AddKeysToAgent yes
IdentityFile ~/.ssh/id_rsa
```
5. **Проверьте, что не запущен другой ssh-agent**:
Убедитесь, что не запущен другой экземпляр `ssh-agent`, который может конфликтовать. Это можно сделать с помощью:
```bash
ps aux | grep ssh-agent
```
Если есть лишние процессы, попробуйте их завершить.
6. **Тестирование**:
Теперь попробуйте подключиться к серверу снова:
```bash
ssh root@192.168.228.8
```
Если все сделано правильно, система не должна запрашивать парольную фразу.
Если после выполнения всех этих шагов проблема продолжает существовать, возможно, стоит рассмотреть возможность генерации нового SSH-ключа без парольной фразы (если это приемлемо с точки зрения безопасности) или использовать менеджер паролей, подобный `pass`, для управления парольными фразами.