简体   繁体   中英

How to start ssh-agent permantly with python?

I am looking for the equivalent of eval $(ssh-agent) for python, that will start ssh-agent and will stay running after the script finish to run.

I didn't find anything useful with Google.

I was trying to use that https://pypi.python.org/pypi/ssh-agent-setup/0.2.0 , but it was not working for me. Looking at the code on https://github.com/haarcuba/ssh-agent-setup I have found out that is was pretty easy to fix. I did fork and do a pull request https://github.com/haarcuba/ssh-agent-setup/pull/2 .

For those who are interested in using ssh-agent-setup python module, you can follow the instruction https://github.com/haarcuba/ssh-agent-setup#ssh-agent-setup .

If you get:

ssh_agent_setup.setup() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/python3.6/site-packages/ssh_agent_setup/__init__.py", line 34, in setup _setupAgent() File "/usr/local/lib/python3.6/site-packages/ssh_agent_setup/__init__.py", line 18, in _setupAgent raise Exception( 'Could not parse ssh-agent output. It was: {}'.format( process.stdout ) ) Exception: Could not parse ssh-agent output. It was: setenv SSH_AUTH_SOCK /tmp/ssh-thoTQTiOTR0y/agent.47524; setenv SSH_AGENT_PID 47797; echo Agent pid 47797;

The fix is https://github.com/haarcuba/ssh-agent-setup/pull/2/commits/d262228d379a4c58d357c7d5f83a579ca760e054#diff-39dd5525d88610b0c21a9bec4d2534b0

If anyone wants to implement a something similar the code is pretty easy to understand https://github.com/haarcuba/ssh-agent-setup/blob/master/ssh_agent_setup/ init .py .

Reading the code, I now understand how ssh-agent can be started in python.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM