Я создал сценарий обеспечения, который помогает мне создавать SSH-туннель к удаленному компьютеру из моего бродячего ящика (Ubuntu 14.04 LTS) каждый раз, когда я запускаю его.
Интересная часть моего Vagrantfile:
config.ssh.forward_agent = true
config.vm.provision :shell, path: "setuptunnel.sh", run: "always", privileged: false
И файл setuptunnel.sh:
#!/usr/bin/env bash
ssh -o StrictHostKeyChecking=no -NL 5432:localhost:5432 me@remotemachine &> /tmp/sshtunnel.log &
if [ $? -eq 0 ]; then
echo "successfully created ssh tunnel."
else
echo "error creating ssh tunnel."
fi
Но когда я ssh в vagrant, туннель не был создан. Глядя в /tmp/sshtunnel.log показывает мне:
Warning: Permanently added 'remotemachine,1.2.3.4.5' (ECDSA) to the list of known hosts.
Permission denied (publickey).
Выполнение ssh-команды вручную успешно устанавливает туннель. Получается, что переадресация агентов не работает при запуске провайдеров?