我想通过 ssh 运行多个命令(一些 scp、一些 rsync,然后是一些 ssh 命令),但服务器有暴力阻止功能,即使我的身份验证没有问题,但如果我在 bash 脚本中运行太多连接,也会自动被阻止。我怎样才能运行我需要的命令而不被阻止?
一种可能性:有人建议在我的 .ssh/config 文件中使用 ControlMaster,这样如果我打开一个终端,打开一个 ssh 连接,那么另一个终端中的所有其他连接就不需要重新进行身份验证。如何在 bash 脚本中做到这一点?即如何打开一个终端并保持打开状态,直到第二个终端运行一些命令,然后关闭两者?
答案1
SSH 连接多路复用或连接共享可能会解决您的问题。看看这个ssh 多路复用 维基。它可能能够减少您与服务器建立的连接数量,因此不会触发暴力破解设置。
回答问题的第二部分——如何在 bash 脚本中执行此操作/关闭其他窗口。您可能可以使用 ssh 密钥和持久连接来简化问题。