跳板机脚本(粗糙版)

前端之家收集整理的这篇文章主要介绍了跳板机脚本(粗糙版)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
跳板机需求:

要求用户登陆到跳板机后,只能执行管理员给定的选项动作,不允许以任何形式中断脚本而到跳板机服务器上
执行任何系统命令。

需求分析:

(1)跳板机服务器需要和其余服务器做好ssh秘钥认证

(2)实现传统的远程连接菜单的脚本

(3)利用Linux信号防止用户中断信号在跳板机上操作

(4)用户登录跳板机后即刻调用脚本,并且只能安装管理员的要求选择

[root@lb01 ~]# useradd jump
[root@lb01 ~]# echo "123456"|passwd --stdin jump
更改用户 jump 的密码 。
passwd:所有的身份验证令牌已经成功更新。

[root@web01 ~]# useradd jump
[root@web01 ~]# echo "123456"|passwd --stdin jump
更改用户 jump 的密码 。
passwd:所有的身份验证令牌已经成功更新。

[root@web02 ~]# useradd jump
[root@web02 ~]# echo "123456"|passwd --stdin jump
更改用户 jump 的密码 。
passwd:所有的身份验证令牌已经成功更新。

[root@lb01 ~]# su - jump
[jump@lb01 ~]$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa > /dev/null 2>&1
[jump@lb01 ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.56.110
[jump@lb01 ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.56.120
[root@lb01 ~]# vim /etc/profile.d jump.sh
#!/bin/bash
[ $UID -ne 0 ] && . /server/scripts/jump.sh
[root@lb01 ~]# mkdir /server/scripts/ -p
[root@lb01 ~]# vim /server/scripts/jump.sh
#!/bin/bash
trapper() {
    trap ':' INT EXIT TSTP TERM HUP
}

main() {
    while :
    do
        trapper
        clear
        cat <<menu
1)Web01:192.168.56.110
2)Web02:192.168.56.120
#If you want quit the server,please input the Q|q for quit.
menu
        read -p "Please input the server what you want to login.:" num
        case $num in 
          1)
            echo "login the 192.168.56.110"
            ssh 192.168.56.110
            ;;
          2)
            echo "login the 192.168.56.120"
            ssh 192.168.56.120
            ;;
          Q|q)
            echo "Quit ............"
            exit 0
            ;;
          *)
            echo "Your input is error."
            sleep 2
            ;;
        esac
    done
}
main
原文链接:https://www.f2er.com/bash/388564.html

猜你在找的Bash相关文章