Ssh(ユーザー名とパスワードでログイン)経由でアクセスするリモートリポジトリへ/からgit Pushまたはgit pullを行うたびにsshパスワードを入力したくありません。
ssh-agent
git config --global credential.helper 'cache --timeout=3600'
動作しません。プッシュ/プルするたびにパスワードを入力する必要があります。
動作させるには他に何をする必要がありますか?
私が実行した場合
ssh-agent bash
その後、同じ端末で2回プッシュしようとしても、パスワードを2回入力する必要があります。
ああ、私はsshエージェントの仕事を誤解しました。ユーザー名とパスワードを使用しています。 RAMにのみパスワードを保存できますか?私はそれが私のホームフォルダの中にただ横たわることを望んでいません。 – UTF-8
openssh
標準ツールではなし。 SSHエージェントは、使用する前に追加されるキー用です(最初の使用でも追加できるようになりましたが、話は異なります)。
パスワードを渡すことができるようにするには、環境変数からパスワードを読み取ることができるsshpass
がありますが、セキュリティの観点からはお勧めできません。セキュリティに関心がある場合は、公開鍵認証を設定します。
ssh-agent
は環境に変数を提供する必要があるため、適切な使用方法は次のとおりです。
eval $(ssh-agent)
次に、ssh-add
を使用して、エージェントにキーを追加できます。 man ssh-agent;man ssh-add
を読んでください。
例(YMMV):
w3@aardvark:~(0)$ env | grep SSH
SSH_AUTH_SOCK=/run/user/1003/keyring-ozv0oa/ssh
w3@aardvark:~(0)$ eval $(ssh-agent)
Agent pid 26624
w3@aardvark:~(0)$ env | grep SSH
SSH_AGENT_PID=26624
SSH_AUTH_SOCK=/tmp/ssh-FUVLa89gGIpt/agent.26623
w3@aardvark:~(0)$ ssh-add -l
The agent has no identities.
w3@aardvark:~(1)$ ssh-add
Enter passphrase for /home/w3/.ssh/id_rsa:
Identity added: /home/w3/.ssh/id_rsa (/home/w3/.ssh/id_rsa)
w3@aardvark:~(0)$ env | grep SSH
SSH_AGENT_PID=26624
SSH_AUTH_SOCK=/tmp/ssh-FUVLa89gGIpt/agent.26623
w3@aardvark:~(0)$ ssh-add -l
2048 a7:56:f0:86:ab:d3:ec:56:3c:84:05:9e:61:38:a9:7b /home/w3/.ssh/id_rsa (RSA)
w3@aardvark:~(0)$