Advertisement
Guest User

Untitled

a guest
May 22nd, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.83 KB | None | 0 0
  1. #!/usr/bin/python
  2.  
  3. import paramiko
  4. import socket
  5. import sys
  6.  
  7. def ihandler(title, instructions, prompt_list):
  8. results = []
  9. passwd_type = False
  10. if len(instructions) > 0:
  11. print ' ' + instructions
  12. for prompt in prompt_list:
  13. if prompt[1] == True:
  14. print ">" + prompt[0]
  15. passwd_type = False
  16. else:
  17. print ":" + prompt[0]
  18. passwd_type = True
  19. result = raw_input()
  20. results.append(result)
  21. if passwd_type:
  22. print '{PAM_AUTHTOK=' + result
  23. return results
  24.  
  25. if __name__=="__main__":
  26. # Ping pam_external, make sure we're talking.
  27. print '.'
  28. ping_result = raw_input()
  29.  
  30. if not len(ping_result):
  31. sys.exit(1)
  32.  
  33. print ")Username: "
  34. username = raw_input()
  35.  
  36. # paramiko.common.logging.basicConfig(level=paramiko.common.DEBUG)
  37. s=socket.socket()
  38. s.connect(('thorin',22))
  39. t=paramiko.Transport(s)
  40. # t.set_log_channel("paramiko.transport")
  41. t.start_client()
  42. try:
  43. t.auth_none(username)
  44. except paramiko.BadAuthenticationType, err:
  45. allowed_types = err.allowed_types
  46.  
  47. if 'keyboard-interactive' in allowed_types:
  48. try:
  49. t.auth_interactive (username, ihandler)
  50. except paramiko.AuthenticationException, err:
  51. print '[PAM_AUTH_ERR]'
  52. sys.exit(0)
  53. print '[PAM_SUCCESS]'
  54. sys.exit(0)
  55.  
  56. if 'password' in allowed_types:
  57. # try password authentication
  58. print ":Password: "
  59. password = raw_input()
  60. try:
  61. t.auth_password(username, password)
  62. except paramiko.AuthenticationException, err:
  63. print '[PAM_AUTH_ERR]'
  64. sys.exit(0)
  65.  
  66. print '{PAM_AUTHTOK=' + password
  67. print '[PAM_SUCCESS]'
  68. sys.exit(0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement