gpt4 book ai didi

linux - 如何使用 expect 回复 SSH 登录提示?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:07:51 26 4
gpt4 key购买 nike

我需要为我在 fstab 中创建的 ssh 挂载创建一个自动登录脚本。

我知道您应该使用安全 key 身份验证来执行此操作,但在这种情况下这是不可能的,因为服务器不允许这样做,因此我需要创建一个 bash 脚本以在出现提示时输入密码。

我试过

spawn mount /media/SSH-MUSIC

expect "*?assword:*"

send "password\r"

但我无法让它工作。

fstab入口如下

sshfs#user@xxx.xxx.xxx.xxx:/public/02.MUSIC/media/SSH-MUSIC fuse port=2223,noauto,users,allow_other,uid=1001,gid=1001,rw 0 0

有人可以提供一个允许我自动登录的工作脚本吗?我尝试了谷歌搜索的各种建议,但无法让它发挥作用。

最佳答案

当您使用ssh 时,您可以使用密码,也可以使用公钥/私钥集。如果您使用公钥/私钥,您可以使用 ssh 连接到另一台计算机而无需输入密码:

  • 您需要在两个系统上运行 ssh-keygen。这会在您的计算机上创建目录 $HOME/.ssh。里面有两个文件:一个是公钥,一个是私钥。在我的系统中,私钥名为 id_rsa,公钥名为 id_rsa.pub。这是 Linux 和 Mac OS X 的默认设置。

  • 在两个系统上创建这些文件后,您需要获取您的公钥并将其粘贴到名为$HOME/.ssh/authorized_keys 的文件中.这将为远程计算机提供您的公钥,以便它可以识别您。

完成后,您应该能够使用 ssh 而无需密码,这使得编写使用 ssh 的脚本变得非常非常容易。

关于linux - 如何使用 expect 回复 SSH 登录提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10979276/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com