jumpserver原理图

 

 

前端到跳板机jumpserver的alice用户密码,和jumpserver到后端服务器的密码可以不同。用户可以通过jumpserver登陆后端服务器但是不能登陆到jumpserver服务器本身,需要在jumpserver服务器上设置登陆用户登陆后的初始化环境中定义登陆到后端服务器的选项菜单,并禁止用户退出到jumpserver服务器本身上来。可以定义登陆到后端服务器的菜单选项脚本jumpserver.sh,然后再配置跳板机umpserver的账户alice的初始配置文件/home/alice/.bash_profile中指定执行的菜单脚本文件jumpserver.sh

 

jumpserver.sh代码如下: 

  1. 跳板机上编写jumpserver.sh脚本,默认为密码验证登陆方式

    1
    #!/usr/bin/bash
  2. 2
  3. 3 #jumpserver
  4. 4
  5. 5 trap HUP INT OUIT TSTP    #捕捉中断信号,并什么都不处理
  6. 6
  7. 7 web1=192.168.0.1
  8. 8
  9. 9 web2=192.168.0.2
  10. 10
  11. 11 mysql1=192.168.0.3
  12. 12
  13. 13 clear
  14. 14
  15. 15 while :      #:代表条件为真,相当于true
  16. 16
  17. 17 do
  18. 18
  19. 19   cat <<-eof
  20. 20
  21. 21   ======================================
  22. 22
  23. 23   # jumpserver
  24. 24
  25. 25   # 1) web1
  26. 26
  27. 27   # 2) web2
  28. 28
  29. 29   # 3) mysql1
  30. 30
  31. 31   ======================================
  32. 32
  33. 33   eof
  34. 34
  35. 35   #echo -n选项代表打印的内容默认无换行符
  36. 36
  37. 37   echo -en \e[1;32m input a number: \e[0m
  38. 38
  39. 39   read num
  40. 40
  41. 41   case $num in
  42. 42
  43. 43   1)
  44. 44
  45. 45     ssh alice@$web1
  46. 46
  47. 47     ;;
  48. 48
  49. 49   2)
  50. 50
  51. 51     ssh alice@$web2
  52. 52
  53. 53     ;;
  54. 54
  55. 55   3)
  56. 56
  57. 57     ssh alice@$mysql1
  58. 58
  59. 59     ;;
  60. 60
  61. 61   “”)     #代表什么都不输入
  62. 62
  63. 63     ;;
  64. 64
  65. 65   *)
  66. 66
  67. 67     echo "error"
  68. 68
  69. 69   esac  
  70. 70
  71. 71 done


  1. #使用密钥验证登陆方式,需要先在跳板机上执行ssh密钥验证,而且是通过alice账号执行该命令(因为需要通过alice普通账号来登陆到后端服务器)
  2. ssh-keygen
  3. ssh-copy-id 192.168.0.1
  4. ssh-copy-id 192.168.0.2
  5. ssh-copy-id 192.168.0.3
    然后执行sh jumpserver.sh脚本即可

 

版权声明:本文为xiaofeng666原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xiaofeng666/p/12241058.html