Reputation: 55
Note: I log into a device, not a computer, so I login to configuration mode (instead of non configuration mode).
I am using JSch library in Java, to login with an SSH protocol. I login like this:
channel = con.openChannel("shell");
channel.connect();
In some cases, when I send through the shell a command that needs su
(configuration mode) permissions (change configuration), this code bypasses the prompt confirmation message of - this may prevent other users from changing configuration. While if I enter the command manually with SSH client/terminal, I have to enter yes for confirmation.
Does anyone have any idea why?
Thanks.
[]
When I log in through JSch I can do the configuration commands even, when the I don't insert "yes" to the array of commands to be executed.
Upvotes: 1
Views: 1028
Reputation: 202242
By default the JSch does not request PTY (pseudo-terminal).
That can cause some commands to behave differently than in an interactive SSH terminal.
You can override this using the ChannelSession.setPty
.
If the above does not help, see also similar questions:
Upvotes: 2