本地shell脚本中ssh到远程服务器并执行命令

本地shell脚本中ssh到远程服务器并执行命令,第1张

        在实际运用中在当前服务器执行命令后,需要在另一台服务器继续执行某些命令,分开去到另一台服务器执行也是比较麻烦的,因此整理下集中执行的方式

1、首先配置ssh免密 *** 作

Linux 下实现SSH互信: https://www.jianshu.com/p/2456d98aa607

2、简单命令

ssh root@192.168.1.1 "cd /var/liblscd "

2.1 使用时注意,双引号必须有。若没加双引号,第二条及之后的命令会在本地执行

2.2 分号是将两条语句间隔开

2.3 单双引的区别:单引号不会解析值,是什么就传什么;双引号会解析值,将解析结果传过去

3、多条命令

     ssh root@192.168.1.1<<reallssh

      cd /var/亩闷lib/test

      tar -zxvf api.com.tar.gz

      ......

      exit

      reallssh

3.1 命令写在 << reallssh(开始) 至 reallssh(结束) 之间

3.2 reallssh可自己定义为其他形式

3.3 在结束前和耐衫加上exit退出远程

4、可能遇到的问题

问题:远程登录主机时出现Pseudo-terminal will not be allocated because stdin is not a terminal. 错误

解决方案:字面意思是伪终端将无法分配,因为标准输入不是终端。

所以需要增加-t -t参数来强制伪终端分配,即使标准输入不是终端。

to force pseudo-tty allocation even if stdin isn’t a terminal.

参考样例如下:

ssh -t -t user1@192.168.1.1 -p 22

--------------------------------------------------------------------------------

参考唤腔:https://blog.csdn.net/jinking01/article/details/84386769

基于SSH协议开发的一款远程管理服务程序通常被称为SSH服务器(SSH Server),它是一种可以在远程计算机上运行的软件,用于提供SSH协议的访问和管理功能。

SSH(Secure Shell)是一种安全的网络协议,它可以通过加密通信方式实现远程计算机与客户端之陵仿掘间的安全通信。基于SSH协议开发的远程管理服务程序,可以使用SSH协议连接到远程计算机,并提供以下功能:

1. 远程登录:用户可以通过SSH协议连接到远程计算机,并执行命令或 *** 作远程计算机。这种连接方式可以保证通信过程中不被窃听或篡改。

2. 文件传输:SSH服务器可以支持SCP(Secure Copy)或SFTP(尺核SSH File Transfer Protocol)文件传输协议,用户可以使用这些协议将文件从本地计算机传输到远程计算机或从远程计算机下载文件到本地计算机。

3. 用户管理:SSH服务器可以通过配置访问控制列表(ACL)限制用户访问权限,还可以限制用户对系统的 *** 作权限,并记录所有的用户登录和 *** 作日志。

4. 系统管理:SSH服务器可以提供一些系统大孙管理工具,例如远程终端程序、进程监控、系统日志查看等。

一些常见的基于SSH协议开发的远程管理服务程序包括OpenSSH、PuTTY SSH、Tectia SSH等。这些程序通常在Linux、Unix和Windows等平台上都可以运行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12367616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存