ssh代理脚本
本地访问远程服务器一般有两个方法,一个是通过vpn,另一个是通过跳板机,这里我们讲的是跳板机的方式。
因为跳板机比较重要,不希望研发、测试等人员有跳板机的权限,我们可以在本地找一台linux机器作为代理服务器。
1 # cat sshproxy.sh 2 #!/bin/bash 3 #建议这个脚本是放在root下通过定时任务执行 4 #跳板机建议通过秘钥对登录 5 #秘钥 6 filename=id_rsa 7 passphrase=abcd 8 #跳板机 9 user=test 10 ip=121.21.22.60 11 port=22 12 13 cd ·basedir $0· 14 n=`netstat -nlt|grep '0.0.0.0:1080 '|grep -v grep|wc -l` 15 if [ $n -lt 1 ];then 16 eval `ssh-agent` 17 else 18 exit 19 fi 20 21 expect << __EOF 22 set timeout 10 23 spawn ssh-add -D 24 expect "*removed." 25 spawn ssh-add -l 26 expect "*identities." 27 spawn ssh-add $filename 28 expect "Enter passphrase*" {send "$passphrase\r";} 29 expect "Identity added:" 30 interact 31 __EOF 32 33 if [ $n -eq 0 ];then 34 ssh -f -g -D 1080 $user@$ip -p $port sleep 600000000 35 fi

浙公网安备 33010602011771号