如何使用SSH在远程服务器上运行Shell脚本或命令

我想安全地运行我的命令。有什么办法吗?是的,有很多选择。但最简单和安全的方法是通过ssh运行脚本或命令。

null

在远程系统上运行命令

SSH是一个非常强大的工具,可以调用远程系统或服务器上提供的命令。我们将在双引号中提供命令和选项。这个命令将运行当前用户的默认shell,通常是bash。在本例中,我们将在远程IP地址192.168.142.144上运行一个命令,用户将 ismail

$ ssh [email protected] "uname -a"
Run Command On Remote System
在远程系统上运行命令

启用基于密钥或无密码的远程命令执行

我们可以看到,为了在远程系统上运行命令,我们为给定的用户提供了密码。如果我们定期运行远程命令,这可以防止自动运行或琐碎的任务。我们可以设置基于密钥的身份验证,这将不要求进一步执行命令。我们将使用 ssh-copy-id 我们想对远程系统运行命令。有关详细信息:

如何通过SSH和基于密钥的身份验证以无密码方式登录Linux?

$ ssh-copy-id 192.168.142.144
Enable Key Based or Passwordless Remote Command Execution
启用基于密钥或无密码的远程命令执行

在远程系统上运行脚本

bashshell提供了一些在二进制文件中查找所提供命令的路径。如果我们想运行一个脚本,我们需要提供这个脚本的整个路径并在bashshell上正确运行。在本例中,我们将提供一个位于 /home/ismail/backup.sh 在远程IP地址上 192.168.142.144 .

$ ssh [email protected] "/bin/bash /home/ismail/backup.sh"

在远程系统上运行本地脚本

如果脚本位于本地系统中,将会发生什么问题。我们应该把它复制到远程系统然后运行吗。也许这是解决方案,但更方便和简单的方法是将脚本回送到远程bash会话

$ ssh [email protected] 'bash -s' < cat script.sh
How To Run Shell Script or Command On Remote With SSH Infografic
如何使用SSH Infografic在远程服务器上运行Shell脚本或命令

相关文章: Linux和Windows的FTP命令列表及示例

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享