SSH命令-自动化/脚本

问题描述 投票:2回答:4

我环顾四周,似乎无法找到问题的答案。我正在寻找一种方法来自动化/编写一组SSH命令,以从我们的Sonicwall路由器导出配置文件。我已设置了sonicwall命令,但无法自动执行它们。当我使用SSH连接到我们的音墙之一时,系统提示您输入用户。我输入用户名,然后再次提示输入用户名和密码。输入正确的信息后,即可执行配置的导出。以下是布局示例。如果有人知道自动执行/编写脚本的方法,请告诉我。在此先感谢

用户:%username%

用户:%username%

密码:%password%

命令:导出首选项ftp%ftpserver%%ftpuser%%ftpPassword%backup.exp

ssh command
4个回答
1
投票

使用密钥代替用户名/密码。 http://pkeck.myweb.uga.edu/ssh/


1
投票

路由器需要SSH用户名,但不需要密码。通过SSH使用用户名“登录”后,Sonicwall将使用其内部身份验证机制提示输入用户名和密码。像对待Sonicwall CLI中的其他任何提示一样对待这些提示。您可以像这样通过stdin传递命令(包括用户名/密码),例如:

(echo -e 'admin\npassword'; sleep 1; echo tsr; sleep 2; echo logout; sleep 1) | ssh [email protected]


0
投票

此线程很旧,但我终于编写了这些愚蠢的声音墙脚本。这不是我的代码,我不知道在哪里找到它,但是它可以工作,您可以使它做任何事情。只需更改IP地址和登录名即可。

@if (@CodeSection == @Batch) @then

@echo on
set SendKeys=CScript //nologo //E:JScript "%~F0"

start \putty -ssh [email protected] 22

TIMEOUT /T 5
%SendKeys% "admin{ENTER}"
TIMEOUT /T 2
%SendKeys% "password{ENTER}"
TIMEOUT /T 2
%SendKeys% "restart{ENTER}"
TIMEOUT /T 2
%SendKeys% "y{ENTER}"

pause
@end

WScript.CreateObject("WScript.Shell").SendKeys(WScript.Arguments(0));

0
投票

尝试关注.....

plink -ssh [email protected]

密码

ping 1.1.1.1

tracerout 1.1.1.1

退出

© www.soinside.com 2019 - 2024. All rights reserved.