我环顾四周,似乎无法找到问题的答案。我正在寻找一种方法来自动化/编写一组SSH命令来从我们的Sonicwall路由器导出配置文件。我有sonicwall命令设置,但我无法自动化它们。当我用SSH连接到我们的一个声波壁时,系统会提示用户。我输入用户名,然后再次提示输入用户名和密码。输入正确的信息后,我就可以执行配置的导出。以下是布局示例。如果有人知道自动化/编写脚本的方法,请告诉我。 提前谢谢
用户:%USERNAME%
用户:%username%
密码:%password%
命令:导出首选项ftp%ftpserver %% ftpuser %% ftpPassword%backup.exp
答案 0 :(得分:1)
使用密钥而不是用户ID /密码。 http://pkeck.myweb.uga.edu/ssh/
答案 1 :(得分:1)
路由器需要SSH用户名,但不是密码。一旦您通过SSH使用用户名“登录”,Sonicwall将使用其内部身份验证机制提示输入用户名和密码。与Sonicwall CLI中的任何其他提示一样处理这些提示。您可以通过stdin传递命令(包括用户名/密码),例如:
(echo -e 'admin\npassword'; sleep 1; echo tsr; sleep 2; echo logout; sleep 1) | ssh admin@10.50.14.41
答案 2 :(得分:0)
这个帖子很老但我终于把这些愚蠢的sonicwalls编写成了脚本。这不是我的代码,我不知道我在哪里找到它但是它有效并且你可以做任何事情。只需更改IP和登录等等。
@if (@CodeSection == @Batch) @then
@echo on
set SendKeys=CScript //nologo //E:JScript "%~F0"
start \putty -ssh admin@IP.IP.IP.IP 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));
答案 3 :(得分:0)
尝试关注.....
plink -ssh admin@10.20.30.10 < m.txt
< m.txt >
password
ping 1.1.1.1
tracerout 1.1.1.1
exit