生产环境中为了保证服务器安全,所以在生产环境服务器前会有一台跳板机来作为中转。开源的jumpserver是很好的解决方案,还有一些成熟的产品,比如堡垒机,等等。现在我们自己开发一个跳板机。
步骤:
1.首先跳板机以普通用户登陆,然后登陆同时,运行我们跳板机脚本,进入跳板机界面:
##在环境变量中配置脚本
[root@master ~]# cat /etc/profile.d/jump.sh
#!/bin/sh
[ $UID -ne 0 ] && sh /tmp/jump.sh ------只要是普通用户登陆,就执行jump.sh脚本
2.编写跳板机的shell脚本
#!/bin/bash
########################################
# this script is created by wanglei
# mail: [email protected]
# qq: 353938339
# version: 1.0
#######################################
# function: deployment jumpserver
# blog: https://blog.csdn.net/weixin_38753143
# major: Linux,Cloud computing,docker,kubernetes,ansible ...
######################################
traper() {
trap ":" INT HUB EXIT TSTP TERM
}
while :
do
traper
clear
cat << EOF
1) k8s-master
2) k8s-node
3) EXIT
EOF
read -p "please select an option: " num
case "$num" in
1)
ssh [email protected]
;;
2)
ssh [email protected]
;;
3|*)
exit
esac
done
3.验证
找一台机器以普通用户登陆跳板机,立马会进入到菜单栏:
[root@node2 ~]# ssh [email protected]
[email protected]'s password:
1) k8s-master
2) k8s-node
3) EXIT
please select an option:
选择1:
1) k8s-master
2) k8s-node
3) EXIT
please select an option: 1
[email protected]'s password:
Last login: Thu Aug 6 10:36:26 2020 from master----登陆成功。
选择2:
1) k8s-master
2) k8s-node
3) EXIT
please select an option: 2
[email protected]'s password:
Last login: Thu Aug 6 10:36:40 2020 from master
[root@node4 ~]# ---------------------登陆成功