Guest User

Untitled

a guest
May 30th, 2018
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. require 'rubygems'
  2. require 'net/ssh'
  3.  
  4.  
  5. def passWord(hostname, username, password, newPassword)
  6. begin
  7. Net::SSH.start( hostname, username, :password => password ) do |session|
  8. command = "passwd"
  9. session.exec( command ) do |channel,stream,data|
  10. case stream
  11. when :stderr
  12. puts "E-> #{data}"
  13. case data
  14. when /\(current\) UNIX password:/
  15. channel.send_data password + "\n"
  16. puts "********"
  17. when /Enter new UNIX password:/
  18. channel.send_data newPassword + "\n"
  19. puts "********"
  20. when /Retype new UNIX password:/
  21. channel.send_data newPassword + "\n"
  22. puts "********"
  23. when /.*(successfully).*/
  24. return "OK"
  25. else
  26. puts "DEATH!"
  27. exit
  28. end
  29. when :stdout
  30. puts "O-> #{data}"
  31. end
  32. end
  33. end
  34. rescue
  35. return "NG (#{$!.message})"
  36. end
  37. end
  38.  
  39. hostnames = ['']
  40. username = ""
  41. password = ""
  42. newPassword = ""
  43.  
  44. hostnames.each do |hostname|
  45. puts "#{hostname}\t\t#{passWord(hostname,username, password, newPassword)}"
  46. end
Add Comment
Please, Sign In to add comment