Articles of ssh agent

从cron使用ssh的探针

我正在尝试自动执行通过ssh在远程机器上执行命令的脚本。 我有使用ssh-agent的机器之间的公钥authentication设置。 脚本从命令提示符执行时运行正常。 我怀疑我的问题是,由于它的极简主义环境,cron没有启动ssh-agent。 下面是我向ssh添加-v标志的输出: debug1: Authentications that can continue: publickey,gssapi-with-mic,password debug1: Next authentication method: gssapi-with-mic debug1: Authentications that can continue: publickey,gssapi-with-mic,password debug1: Authentications that can continue: publickey,gssapi-with-mic,password debug1: Next authentication method: publickey debug1: Offering public key: /home/<user>/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: […]

Ssh代理不会在Ubuntu Oneiric上运行

我已经安装了Ubuntu 11.10。 我被ssh-agent行为ssh-agent糊涂了:当我input命令时,我得到如下输出: SSH_AUTH_SOCK=/tmp/ssh-qKBOsDj10698/agent.10698; export SSH_AUTH_SOCK; SSH_AGENT_PID=10699; export SSH_AGENT_PID; echo Agent pid 10699; 就是这样,代理不运行。 :( 有什么build议么?

反向ssh代理转发。 使用远程SSH密钥

我有一个密钥服务器上的ssh-agent我的github.com私人ssh密钥。 从我的家庭计算机背后NAT我想运行git pull并使用我的github ssh密钥。 我知道这样做的唯一方法是ssh到关键的服务器和转发端口22,然后ssh回到我的家用电脑,而转发代理,然后运行git pull在新的shell像这样: home$ ssh keyserver -R10022:localhost:22 keyserver$ ssh -A localhost -p10022 home$ git pull 有没有更简单的方法来使用远程SSH密钥?

Ansible,Vagrant,sudo和ssh-agent

所以我已经看到了这个问题 ,并将Defaults env_keep+=SSH_AUTH_SOCK到我的/etc/sudoers文件中,但是仍然无法使用sudo: true和sudo_user: <user>在我的ansible playbook中从我的Vagrant框中的github克隆。 我想克隆代码作为我创build的用户来运行它,但它被certificate是非常令人沮丧的。 当我通过vagrant sshlogin时,我可以做ssh [email protected] ,但是当我做sudo -u <user> ssh [email protected]我得到Permission Denied错误。 当我回显SSH_AUTH_SOCK值作为特定的用户,我看到它被设置: vagrant@vagrant-ubuntu-trusty-64:/tmp$ sudo -u derp echo $SSH_AUTH_SOCK /tmp/ssh-w3XYbqlMnX/agent.1592

ssh – 从ssh-agent获取公钥

我正在寻找一种方法来从身份validation代理中提取公钥。 我希望能够将公钥写入文件中,在将密钥添加到ssh-agent( ssh-add ~/.ssh/id_rsa )之后。 ssh-add -l为我显示指纹,但有没有办法获得完整的公钥? 谢谢你的build议

运行ssh-agent的shell脚本

美好的一天,我整天都读过类似的话题,但很遗憾找不到适合自己情况的答案。 所以这就是我想要做的。 我有很多函数的shell脚本,其中一个函数假设调用ssh-agent: sh_agent_run () { case "$(pidof ssh-agent | wc -w)" in 0) echo "SSH agent is not running. Startting SSH agent." eval `ssh-agent -s` ssh-add ${ssh_key} ;; 1) echo "SSH agent is running. Nothing to do." ;; *) echo "Too much instances of SSH agent is running. Stopping SSH agent instances and running […]

通过一个堡垒机ssh工作在别人的桌面上,但不是我自己的

我必须ssh到堡垒(跳转)服务器为了到达最后的服务器。 在跳转服务器上,我的.ssh / config说: Host * ForwardAgent yes 我的同事使用PuTTy和Pageant。 当我使用腻子shell从他的桌面连接到最终服务器作为根通过跳转服务器,它工作正常。 在我的办公桌上,我无法连接到最终的服务器,只有跳转服务器。 但是,如果我去他的办公桌,并通过跳转服务器成功login到最终服务器,我可以回到我的办公桌,也可以这样做….但是经过一段时间后,我的贝壳恢复到不通过跳转服务器连接到最终服务器的原始行为。 ssh -v -v -v final_server的整个脚本都在这里 与我相关的部分是当提供公钥时,但它说'我们没有发送数据包': debug1: Offering public key: /home/CORP/t.brannon/.ssh/id_dsa debug3: send_pubkey_test debug2: we sent a publickey packet, wait for reply debug1: Authentications that can continue: publickey,password debug2: we did not send a packet, disable method debug3: authmethod_lookup password

可以configurationLDAP接受来自ssh-agent而不是来自Kerberos的身份validation吗?

[这个问题不是让你的LDAP密码来validation你的SSHlogin。 我们工作得很好,谢谢:-)] 假设您在Linuxnetworking上(Ubuntu 11.10,slapd 2.4.23),您需要编写一套使用ldapmodify,ldapadd,ldapdelete等的实用程序。 你没有Kerberos,也不想处理它的超时(大多数用户不知道如何解决这个问题),怪癖等等。这就解决了问题,在哪里可以获得提供给LDAP,可能通过GSSAPI–尽pipe在那里占主导地位,技术上不需要Kerberos,或者类似的东西。 然而,几乎每个人似乎都有一个SSH代理程序,并完成其密钥caching。 我真的很喜欢ssh-add足以允许使用无密码的LDAP命令。 有谁知道使用SSH代理作为LDAP身份validation源的项目吗? 这可能是通过一个ssh感知的GSSAPI层,或者我没有想到的其他一些技巧。 但是,让LDAP变得毫不费力,这将是美好的。 假设我不是完全错过了使用ldapmodify和kin而不必键入我的LDAP密码的方法 – 使用-x是不可接受的。 在我的站点上,LDAP服务器只接受ldaps连接,并需要authentication修改操作。 当然这些都是要求。

如何让Ubuntu root帐户转发ssh密钥作为转发机器

更新:下面描述的整个事情适用于远程计算机上的非root帐户。 也就是说,这个工作: anderson@client -> nonroot@remote -> anderson'[email protected] 但是这不起作用: anderson@client -> root@remote -> anderson'[email protected] 所以问题是,当中间的机器是root时,如何让ssh代理转发工作? 本地计算机(OSX)在〜/ .ssh / config文件中打开了转发: Host remotehost ForwardAgent yes 本地机器不会覆盖/ etc / ssh / ssh_config中的此设置。 Host * # ForwardAgent no 本地机器正在运行ssh-agent: anderson$ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-L0iFZ891Gv/agent.75083; export SSH_AUTH_SOCK; SSH_AGENT_PID=75084; export SSH_AGENT_PID; echo Agent pid 75084; 已经对密钥执行了ssh-add: anderson$ ssh-add -K ~/.ssh/id_rsa Passphrase updated in keychain: […]

启用S​​SH部署一个bitbucket git回购

我试图部署我的git仓库到我的服务器。 为了使这个工作,我首先需要在我的区域设置计算机和我的服务器上设置ssh。 对于bitbucket我跟着https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html和pm2我跟着https://keymetrics.io/2014/06/25/ecosystem- JSON-部署和迭代更快的/ 我在我自己的计算机和我的服务器上创build了pub / priv密钥。 连接现在可以工作,因为我可以login到服务器而无需input密码。 对于服务器我遵循完全相同的步骤,但每次我重新连接到服务器,我得到了错误 Agent admitted failure to sign using the key. 我发现ssh-agent每次重新连接都离线,因此ssh-add -l不会打印任何结果。 我现在添加在.bashrc的末尾 eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa 这似乎工作,但总是提示我的.ssh/id_rsa密码 这可能是我的语言环境机器的pm2 deploy production setup返回的原因: Agent admitted failure to sign using the key. Cloning into '/home/myuser/myproject/source'… Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you […]