Vagrant 流浪汉中的SSH代理转发
我正在使用Vagrant启动一个多VM环境(VirtualBox Hostonly模式)。每个VM都启用了ssh代理转发。 作为“流浪”用户,我能够从虚拟机内连接到我的Bitbucket帐户和签出存储库。以下是相关的控制台日志:Vagrant 流浪汉中的SSH代理转发,vagrant,ssh-agent,Vagrant,Ssh Agent,我正在使用Vagrant启动一个多VM环境(VirtualBox Hostonly模式)。每个VM都启用了ssh代理转发。 作为“流浪”用户,我能够从虚拟机内连接到我的Bitbucket帐户和签出存储库。以下是相关的控制台日志: [vagrant@ci-server ~]$ echo $SSH_AUTH_SOCK /tmp/ssh-BtewZz3383/agent.3383 [vagrant@ci-server ~]$ ssh -T git@bitbucket.org logged in a
[vagrant@ci-server ~]$ echo $SSH_AUTH_SOCK
/tmp/ssh-BtewZz3383/agent.3383
[vagrant@ci-server ~]$ ssh -T git@bitbucket.org
logged in as <my-bitbucket-account>.
You can use git or hg to connect to Bitbucket. Shell access is disabled.
[vagrant@ci-server ~]$
sudoers文件具有:
Defaults env_keep += "SSH_AUTH_SOCK"
所以,当“流浪”SUDO进入“go”时,ssh代理连接应该被删除。我错过了什么
主机是Mac OS X 10.8,而虚拟机是CentOS 6.5
谢谢
所以,当“流浪”SUDO进入“go”时,ssh代理连接应该被删除。我错过了什么
您正在同时使用sudo
和su-
,这是:
su-
重置您的环境,删除您需要的SSH\u AUTH\u SOCK变量尝试仅使用
sudo--shell--user=go
来获取作为该用户的shell。您不需要使用vagrant
帐户中的密钥文件,并确保在go
帐户中设置了SSH\u AUTH\u SOCK
环境变量吗?为什么要这样做?为什么不简单地为go帐户配置Bitbucket部署密钥?这就是我配置Go CD服务器的方式。
Defaults env_keep += "SSH_AUTH_SOCK"