Ssh-agent: различия между версиями
Материал из noname.com.ua
Перейти к навигацииПерейти к поискуSirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
| Строка 52: | Строка 52: | ||
=Запуск агента= |
=Запуск агента= |
||
* Загрузить конфигурацию <code>launchctl load ~/Library/LaunchAgents/org.homebrew.ssh-agent.plist</code> |
* Загрузить конфигурацию <code>launchctl load ~/Library/LaunchAgents/org.homebrew.ssh-agent.plist</code> |
||
| + | Ошибка вида: |
||
| + | <PRE> |
||
| + | Bootstrap failed: 5: Input/output error |
||
| + | Try re-running the command as root for richer errors. |
||
| + | </PRE> |
||
| + | Означает что нужно сделать unload |
||
* <code>launchctl list | grep ssh</code> |
* <code>launchctl list | grep ssh</code> |
||
Версия 15:16, 14 мая 2024
ssh-agent
Иногда не удаляется файл сокета - нужно удалить вручную иначе агент молча не стартует
Суть проблемы
- Встроеный агент хоть и есть но не очень удобен так как сокет создает каждый раз новый
- Можно использовать более новый агент из
brew
Устновка своего агента
brew install openssh- Создать файл
~/Library/LaunchAgents/org.homebrew.ssh-agent.plist(кстати в этом месте лежит то что называется login items, точнее часть из них) - все пути с именес пользователя (mmazur) поправить на нужный
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.homebrew.ssh-agent</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/ssh-agent</string>
<string>-D</string>
<string>-a</string>
<string>/Users/mmazur/.ssh-agent.sock</string>
</array>
<key>Sockets</key>
<dict>
<key>Listeners</key>
<dict>
<key>SockPathName</key>
<string>/Users/mmazur/.ssh-agent.sock</string>
<key>SockPathMode</key>
<integer>384</integer> <!-- octal 0600 -->
<key>SockPathGroup</key>
<integer>0</integer>
</dict>
</dict>
<key>EnableTransactions</key>
<true/>
</dict>
</plist>
Обратить внимание на:
/usr/local/bin/ssh-agent- агент установленный изbrew- Ключи
-D-a- нужны для фоновой работы - Путь к сокету
/Users/mmazur/.ssh-agent.sock
Запуск агента
- Загрузить конфигурацию
launchctl load ~/Library/LaunchAgents/org.homebrew.ssh-agent.plist
Ошибка вида:
Bootstrap failed: 5: Input/output error Try re-running the command as root for richer errors.
Означает что нужно сделать unload
launchctl list | grep ssh
2086 0 com.openssh.ssh-agent - 0 org.homebrew.ssh-agent
Далее нужно остановить старого агента и запустить нового
launchctl stop com.openssh.ssh-agent
launchctl start org.homebrew.ssh-agent
launchctl list | grep ssh - 0 com.openssh.ssh-agent 14693 1 org.homebrew.ssh-agent
Использование агента
Для того что бы подключаться к агенту достаточно указать в .bashrc/.bash_profile
export SSH_AUTH_SOCK=/Users/mmazur/.ssh-agent.sock
(путь /Users/mmazur/.ssh-agent.sock указан в настройках нового агента)