我正在使用laravel / homestead包并且我尝试在“after.sh”文件上设置一些配置,但没有成功。
在运行命令“vagrant up”后,我想做出以下声明:
1-安装sshpass依赖项而不询问(y / n)
sudo apt-get -y install sshpass
2-创建ssh密钥而不询问(文件/密码)
ssh-keygen -b 2048 -f ~/.ssh/mykeyname-t rsa -N ''
3-将ssh id复制到域而不询问(密码)
sshpass -p mypassword ssh-copy-id -i ~/.ssh/mykeyname user@domain
当流浪汉出现时,我希望能够与命令联系:
ssh -i ~/.ssh/mykey user@domain
如果我手动完成所有这些操作它可以正常工作,但我想知道是否可以在“after.sh”中创建脚本以自动化它并准备好在部署机器时使用。
我试图在“after.sh”上写下这些行,但在部署机器时它还没有准备好使用。
它似乎只适用于第2步,从不在第3步工作。 任何人都可以帮助我,或告诉我是否可以这样做?
谢谢你的帮助,对不起我的英语。
答案 0 :(得分:0)
我找到了答案。
在步骤2和3之间,创建sshkey和copysshid我需要先使用以下命令将域添加到known_hosts
ssh-keyscan domain>> ~/.ssh/known_hosts
然后在通过vagrant up部署机器后,我能够使用以下命令在没有密码的情况下登录shh:
ssh -i ~/.ssh/mykey user@domain
谢谢大家。