scripting and ssh commands

Started by Egert143, September 04, 2019, 07:55:45 PM

Previous topic - Next topic

Egert143

Could realy use some help with scripting, just starting out with it and could use some guidance.

i have peaced together a sample script that is supposed to ssh into device and reboot it, i wanna use it through tool menu. So far i havent got it working yet.

Script: AgentReadList(FindNodeObject($node, 2493), "SSH.Command(192.168.1.10,user,password,put [/system reboot])");

Device never recives any ssh logins

Victor Kirhenshtein

Do you have SSH subagent loaded on node with ID 2493? If yes, check agent's log on that node for how SSH request was processed. You may need to set debug level 5 or higher on agent.

Best regards,
Victor

Egert143

#2
Node 2493 is router. i changed it to netxms server and now the script is working.

AgentReadList(FindNodeObject($node, "NetXms-Server"), "SSH.Command(192.168.1.10, username ,password,put [/system reboot])");

When i create tool to run this script, how can i insert dynamic values to script, that are taken from node where tool is used (ip, username, password)?

Egert

Egert143


Victor Kirhenshtein

You can use attributes from node objects (NXSL class Node - https://wiki.netxms.org/wiki/NXSL:Node, accessible via $node variable). SSH credentials are not accessible from NXSL, however it version 3.0 we have added method executeSSHCommand in Node class.

Best regards,
Victor

Egert143

Resurecting an old topic.

What i am trying to do is make tool->restart ssh command (for ubiquiti wireless device).

is "$node->executeSSHCommand("reboot");" correct syntax ? when i run it it returns null as value and device doesent reboot. Ssh credentials are filled out in node config.


Filipp Sudanov

ssh functionality is implemented only in ssh.nsm subagent, server does not do ssh communications. So, if you have zoning, you need to load ssh.nsm on zone proxies. If there's no zoning, agent running on netxms server will be used for ssh commands, so you need to enable ssh.nsm there.