您的位置 首页 shell案例

用 shell编程实现 jumpserver跳板机的功能

用 shell编程实现 jumpserver跳板机的功能

首先是选择 1运维 或者 2 开发人员

然后输入自己密码(输入4次错误 就退出程序)

 

 

 

输入 woshiyunwei 可结束 程序 (已经实现了 屏蔽 ctrl c 信号)

输入密码123456 可以进入2级菜单:

 

#!/bin/bash
WEB01=10.0.0.7
WEB02=10.0.0.8
NFS=10.0.0.31
MYSQL=10.0.0.51
BACKUP=10.0.0.41

menu2(){
echo -e "\t\t\t \033[41;36m 1 $WEB01  \033[0m"
echo -e "\t\t\t \033[41;36m 2 $WEB02  \033[0m"
echo -e "\t\t\t \033[41;36m 3 $NFS  \033[0m"
echo -e "\t\t\t \033[41;36m 4 $MYSQL  \033[0m"
echo -e "\t\t\t \033[5;34m  5 $BACKUP  \033[0m"

echo -e "\t\t\t \033[41;36m 6 退出当前   \033[0m"

}

menu3(){

echo -e "\t\t\t \033[41;36m 3 $NFS  \033[0m"
}
menu1(){
echo -e "\t\t\t \033[41;36m 1 运维人员  \033[0m"
echo -e "\t\t\t \033[41;36m 2 开发人员  \033[0m"

}

func_menu2(){

while true
do 
menu2
read -p "请输入要连接的服务器编号"  num
    case $num  in
       	1)
    	ssh $WEB01
        ;;
    	2)
    	ssh $WEB02
    	;;
    	3)
    	ssh $NFS
    	;;
    	4)
    	ssh $MYSQL
    	;;
    	5)
         ssh $BACKUP
    	;;
	6)
	break 
	;;
    	
	*)
    	echo " Please use $0 [1|2|3|4..]"
    esac
done 
}


 	
num_passwd=0
while true
do
menu1
trap "" INT HUP TSTP
read -p "请输入工作岗位编码" worknum
if [ $worknum == woshiyunwei ]; then
exit
fi
	case $worknum in
		1)
		read -p  "请输入密码:" passwd
		echo $passwd
		if [ $passwd == 123456 ]; then
			func_menu2
		elif [ $num_passwd == 3 ]; then
			echo  "密码输入超过3次 即将退出"
			sleep 3
			exit
		else
			num_passwd=$((num_passwd+1))
			read -p "$num_passwd次密码错误 请重新输入" passwd
		
		fi
		
		;;
		2)
		func_menu3
		;;
	
		*)
		echo "please  use  [1|2]"
	esac
done

 

 


 

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章