Jump box ideas

J

Josh Hurtado

Hi Everyone,
I posted a differnt but related thread about this so though I would hit
from a differnt direction.

I have a secure SSH box which has access to my differnt Cisco routers. I
want to write a program that

a) ssh's from my machine to the jump box
b) run through a list of routers and telnet into each one and grab the
running config
c) close the session

Trying to fiugre out a good way to approach this. I can get the NET::SSH
session open to the box, but can't figure out how to go form there to
step 2.
 
J

John W Higgins

[Note: parts of this message were removed to make it a legal post.]

Afternoon Josh,

Hi Everyone,
I posted a differnt but related thread about this so though I would hit
from a differnt direction.

I have a secure SSH box which has access to my differnt Cisco routers. I
want to write a program that

a) ssh's from my machine to the jump box
b) run through a list of routers and telnet into each one and grab the
running config
c) close the session

Trying to fiugre out a good way to approach this. I can get the NET::SSH
session open to the box, but can't figure out how to go form there to
step 2.

You want to use SSH Fowarding to forward your telnet sessions over the wire
to the remote side.

http://net-ssh.rubyforge.org/ssh/v2/api/ <- the ssh api documentation has
forwarding as the third to last line of the large example at the top of the
page.

Basically you do the following - you tell the ssh session to forward a LOCAL
port over the wire to a remote address (in this case one of your cisco
servers).

So as an example

If you had a server at 10.0.0.1 port 21 then you could write

ssh.forward.local(12345, "10.0.0.1", 21)

Then use the telnet object to connect to port 12345 - this will
automatically be forwarded over the wire to 10.0.0.1 port 21 via the ssh
connection.

So for step 2 you would create an array of your router addresses and then
something like this

addrs = ['10.0.0.1', '10.0.0.2', '10.0.0.3']
addrs.each { |addr|
ssh.forward.local(12345, addr, 21)
connect to port 12345 on your localhost with telnet and pull down the
config
}

John
John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,185
Members
46,736
Latest member
AdolphBig6

Latest Threads

Top